超级计算机使用什么样的 RAM?

超级计算机使用什么样的 RAM?

我正在读关于世界上最快的计算机之一的文章其中有一句话引起了我的兴趣:

为了模拟这种相对微小的脑力,研究人员使用富士通 K 通过 10.4 万亿个虚拟突触(每个突触有 24 字节的内存)连接了总共 17.3 亿个虚拟神经细胞。总计约 1PB 内存,相当于约 250,000 台标准 PC。请记住,这一切仍然只是你的大脑每天在眨眼间所做工作的百分之一。

那么,这是否意味着这些超级计算机使用普通台式机的内存,但数量比普通台式机多得多(多 25 万倍)?

我读SuperUser 上的一个热门问题。它还告诉我们一些有关 SRAM 的信息 - CPU 用于缓存的 RAM,因为它比普通 DRAM 快得多。

所以我看了这里这句话看起来很有趣:

内存条不使用 SRAM 的唯一原因是成本。你不必花 50 美元购买 256MB 芯片,而是要花 500 美元。哎呀。

因此 SRAM 模块是可行的(而且我不会隐瞒我真的很想为我的笔记本电脑购买 8GB 的​​ SRAM 内存......但找不到任何东西)

但现在真正的问题是:超级计算机使用 SRAM 作为内存还是普通 DRAM?如果是普通 DRAM,为什么他们不为超级计算机制造 SRAM 内存呢?超级计算机的成本非常高,所以多花几百万美元有什么区别呢?

答案1

鉴于当今许多超级计算机使用服务器级 x86-64 处理器(如 AMD Opterons),它们可能会配备ECC 内存,很可能是 DDR2 或 DDR3 SDRAM。

ECC 内存能够检测和纠正大多数内存错误。它通常不出现在消费类计算机中,但在需要最大可靠性的服务器和工作站中很常见。可以找到此类内存的示例这里

消费类计算机中 ECC 支持很少见,但请注意AMD FX 处理器完全支持这种类型的内存,并且使用合适的主板,可以实现 ECC 内存的增强可靠性。不过,ECC 内存可能很贵,并且速度往往比非 ECC 内存略慢(1-3%)。

一些较新的超级计算机使用用于计算的 GPU与传统处理器(如克雷XK7)这些GPU一般采用GDDR5显存。

答案2

超级计算机的设计决定了所使用的 RAM 类型。

例如,贝奥武夫集群可能不会有某种奇特的记忆形式,因为:

Beowulf 集群是由通常相同的商品级计算机组成的计算机集群,这些计算机联网到小型局域网中,并安装了库和程序,以便在它们之间共享处理。

世界上许多超级计算机的情况也是如此,它们基本上都是采用现成的部件、英特尔处理器,或许还有用于并行处理的 NVidia GPU。

欢迎随意浏览世界艾斯特计算机,而普遍的趋势是以不常见的方式使用常见的部件。

这可能是由于成本问题,因为在这些计算机的规模下(可能为 20,000 个节点),您引用的每 256MB 450 美元的差额加起来就是(如果每个节点只有 256MB,则为 9,000,000 美元)。在我看来,这个计算似乎已经过时了,但关键仍然在于它很重要。

大多数使用 x86 或 x64 处理器(通常是 Xeon 或 AMD Opterons)的超级计算机都会使用 ECC DRAM。它比台式机内存慢一点,但数据更可靠。

如果计算所使用的 GPU 上的 RAM,那么 GDDR5 是超级计算机中的另一种常见 RAM。

但是,SRAM 和任何其他外来 RAM 在现代超级计算机中并不常见。

相关内容