我读过一些关于亚马逊网络服务的文章,并对以下内容感兴趣:
- 确切地知道我得到了什么(也许一些与物理机器等效的术语会有所帮助)
- 我认为其“性能”与我自己的机器或其他广泛可用的选项相比。
话虽如此,我有一个 8 核的英特尔 i7 处理器,每个核有 2GB 的 RAM。我对硬件、分布式计算和并行计算也不太了解。
我将处理大型数据集并将算法应用于这些大型数据集。无论如何,以下是我读过的两篇解决这些问题的文章:第1条和第二条。
我并不真正了解文章中的所有术语,但似乎我能得到的最好的结果并不比我自己的机器好多少。我做的最简单的测试(这让我非常失望)是在 EC2 上启动一个实例,运行 python 并通过 networkx(一个图库)创建一个大型 barabasi 图。我忘记了实际大小,但我的机器在大约一分钟内完成了任务,而 EC2 不得不关闭该过程。高性能计算就是这样……
我可能在使用或思考 Amazon EC2 时遗漏了一些要点。请告知我,在此先行致谢!
编辑:澄清一下,我对计算能力感兴趣。我能否更有效地(在更短的时间内)处理我的大型数据集?
答案1
亚马逊明确表示他们的 EC2 页面和他们的实例类型页面每台机器的统计数据是什么。
例如,你可能尝试过免费套餐,但对其性能并不满意,这是一个“微型实例”
微实例613 MiB 内存,最多 2 个 ECU(用于短周期突发),仅 EBS 存储,32 位或 64 位平台
现在我们需要将 ECU 转换为实际的处理能力
EC2 计算单元 (ECU) – 一个 EC2 计算单元 (ECU) 提供相当于 1.0-1.2 GHz 2007 Opteron 或 2007 Xeon 处理器的 CPU 容量。
因此,您测试的机器是一台 2.0-2.4 GHz 的计算机(但仅适用于短周期突发)仅配备 613 MiB RAM。
内存可能是导致性能下降的原因。您的机器的内存是 EC2 机器的三倍,并且有 8 个内核(并且运行速度可能比 EC2 实例的爆发速度还快),而 EC2 机器只有 1 个内核。
现在将其与“高内存四倍超大实例”进行比较
高内存四倍超大型实例68.4 GiB 内存、26 个 EC2 计算单元(8 个虚拟核心,每个核心有 3.25 个 EC2 计算单元)、1690 GB 本地实例存储、64 位平台
因此,现在我们有一台拥有 68.4 GB RAM (而您的只有 8 GB)的机器,并且有 8 个核心(与您的相同),运行速度为 3.25 到 3.9 Ghz。
这台机器在执行相同任务时很可能会击败您的机器。
那么,为什么要使用 EC2?如果你想同时运行 20 份测试,在家里你需要再购买 19 台机器(假设每台机器 1000 美元),那么您现在需要花费 19,000 美元,当您完成后,您就拥有了服务器,您不再需要做任何事情。
通过使用 EC2,您可以租20 台服务器,仅需支付 1 小时的使用费。高内存四倍超大实例每小时收费 1.00 美元只需花费 20 美元。