怎么将一堆高性能电脑硬件组成超级计算机?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么将一堆高性能电脑硬件组成超级计算机?相关的知识,希望对你有一定的参考价值。
去超级计算中心要排队等候,费时费精力。而且超算中心的超级机都是一块块多路CPU主板和一堆高性能硬件组成的。那我也组一台巨型计算机。配置:Intel X79双路主板(*48)、Intel Xeon E5 2696 CPU(*96)、Xeon Phi协处理器(*40)、32G ECC内存(*768)、600G 256MB SAS 15000RPM硬盘(*96)、1.8TB 256MB SAS 10000RPM硬盘(*288)、14TB 256MB SAS 7200RPM氦气硬盘(*384)、SAS阵列卡(12GB)(*120)、NVIDIA Tesla K80(*48)、NVIDIA Quadro P6000 12GB显卡(*96)。这些部件和48台4U机箱组装成48台中型机子。那我怎样才能把这48台中型机子组起来变成一台巨型计算机呢?这样我就有了1152核心2304线程、24TB内存容量、522TB系统容量、4.775PB磁盘阵列存储容量,同时图形处理能力也大大提升。
今天咱们来看看天河2号超级计算机怎么搭出来的。
天河二号由国防科技大学和浪潮合作研制,2013年至2014年蝉联全球超级计算机第一名。不过性能是拿钱堆出来的,造价25亿人民币,一天满负荷运转要耗电费40万元。看看下面的配置就知道为什么花这么多钱了。从这么多CPU看得出来,CPU厂商是多么喜欢超级计算机。不过美国政府对中国禁运高端CPU之后,Intel的销售估计都要哭死了。
怎么从一个个芯片组装成一台超级计算机?看下图。16000个计算节点,其实就是主板,汇集成32个Frame,再组成4个Rack,最后组成了超算系统。
超级计算机的基础节点包括三种:16000个计算节点,4096个管理节点,256个IO节点和64个存储服务器。
先看看最小的组件:计算节点。2 个Intel Ivy Bridge CPU + 3个 Intel Xeon Phi 。CPU之间用QPI总线互联,一般NUMA架构是这么做的。每个CPU有自己的DIMM内存,一共64GB。还通过PCIex16连到内部高速互联网络,GDDR5内存。GDDR5内存有一个专门的CPU管理。两个万兆网卡估计是管理用的。这样一个节点计算性能最高可以到3.432Tflops,
计算节点物理上坐落于计算刀片服务器。如下图,蓝色的是Xeon Phi处理器,黑色的估计就是Ivy Bridge CPU,所以一个刀片服务器包含了两个节点。
再来看看用国产飞腾CPU搭建的管理节点,性能是144GFlops。飞腾CPU是国防科大研制的,目前有几种型号,天河2号采用的FT-1500基于 Sparc V9架构。为了便于商业化推广,飞腾还推出了兼容ARM64位指令集的FT-1500A系列。FT-1500A目前包括4核和16核两款产品。其中4核处理器芯片主要面向桌面终端和轻量级服务器应用领域,面向服务器应用领域的是16核处理器芯片。据称,FT-1500A系列处理器与Intel 2010年的处理器性能相当 。
来看看这颗基于Sparc架构的FT-1500架构。采用40nm工艺,1.8GHz,16核,功耗约65瓦。计算架构采用了SIMD(Single Instruction Multiple Data),一条指令可以同步让多组数据执行。如下图,一个CPU有四个DDR3接口,IO带宽很高。
天河2号有256个IO节点和64个存储服务器,总共存储容量12.4PB。既然是超级计算机,自然要使用高性能的固态硬盘SSD,每个IO节点有2TB的SSD,IO带宽达到5GB/s,从下图可以看出1个2TB SSD由5个400GB 小SSD组成,那估计每个的带宽是1GB/s。IO节点对外有两种接口:高速互联接口和Infiniband QDR存储网络接口。阿呆猜想高速互联网络是用来输出数据给计算节点,IB接口是IO节点之间数据共享用的。采用了Hybrid hierarchy file system,H2FS,数据保存在每个节点本地,但是相互之间也能共享。
这么多节点怎么组成超级计算机呢?下面就是组网图。关键的设备是中间的13个交换机,每个交换机有576个端口!
更加难能可贵的是,高速互联芯片都是纯国产。包括网络路由芯片NRC和网络接口芯片NIC。
NRC采用90nm工艺,大小为17.16mm*17.16mm,2577个管脚,带宽为2.56 Tbps。这么多管脚估计也是为了增加端口数。
NIC也是90nm工艺,大小10.75mm*10.76mm,675个管脚。
说到超算,就不得不提制冷系统,这么一台庞大的机器,没有有效的制冷,估计就着火了。天河2号采用了紧耦合水冷系统,整台机器功耗17.6MW,加上制冷系统就是24MW。制冷用了27%的电。
天河有自己的软件架构,如下图。对用户来说,最重要的是用户的编程接口,有些用户为了搞个研究,写这个程序就得花上几年。很多时候政府推动的项目硬件给很多经费,设备都很不错,但是领导舍不得给软件投钱,毕竟展示效果没那么壮观,所以软件往往是短板,用户使用不便,先进设备的利用率就不高。
天河支持下列编程语言。值得一提的是OpenMC语言,比CUDA和OpenCL的抽象级别更高,在CPU等各种资源之上有一个统一的逻辑层。各种计算任务异步执行,同时分配到不同的设备上。
对管理者来说,这么多节点的资源调度和监控也是很重要的。如下图,每台机器安装了国产麒麟Linux操作系统,其实也是国防科大主导的。
我们搞存储的最关心的就是存储软件架构了。数据分为本地存储和共享存储,共享存储使用了超算流行的Lustre分布式文件系统,这种文件系统对于大文件访问性能不错。用户使用POSIX接口读写文件。不过数据密集型应用用Layout接口和Policy接口访问数据。
总结一下,一台超级计算机其实就是很多小计算机的集合,当然难点在大家的高速互联和同步。
天河二号不是用HGST的6T氦气硬盘的啊!还有,图呢?发给我。
追答那么你那里看到天河二号是用固态硬盘?发图给我
参考技术A 将多台电脑结合起来,只能变成多台电脑一起协同作用。并不能变成超级计算机。以国产的太湖之光为例,每个运算机柜有4块,由32块运算插件组成的超节点分布其中。每个插件由4个运算节点板组成,一个运算节点板又含2块“申威26010”高性能处理器。一台机柜就有1024块处理器,整台“神威·太湖之光”共有40960块处理器。问题上的每台电脑CPU全加起来,也才零头。
并且超级计算机是为了计算而创造的,只为计算,每个运算节点板都经过特殊设计,可以同步协同处理数据,和一般的主板都不一样,连处理图形的显卡都不需要。并且象上面的设备(太湖之光),每个单个处理器有260个核心,主板为双节点设计,每个CPU固化的板载内存为32GBDDR3-2133。比在主板上安装内存的处理速度更快。追问
那我这个想法能实现吗?
追答你的想法只能实现:协同计算,并不是造超级计算机。
追问那天河二号超级计算机是怎么做的呢?
那天河二号超级计算机是怎么做的呢?
追答是国防科学技术大学研制的超级计算机系统。
那个人做得到吗?做得到的话,那人人有足够的钱买足够的配件那就可以搭建自己的超算了。不用去超算中心霸占别人的超算核心等等的东西了。
追答做不到,谁也不会花几万块钱,买一块专门的计算CPU,然后还买好几块CPU,组成一个节点,还要用N多的节点,组成超级计算机。以太湖之光为例,设计就是1亿多美元,硬件又是1亿多美元,谁有这么多钱??
追问那是不是有钱买足够多的硬件组起来就能实现超算?
参考技术B超算不是简单地硬件堆叠,是一个系统工程,不是一两个人弄堆硬件就能做出来的。
追问那天河二号用的是Xeon E5 2696 CPU,还有Xeon Phi。这个性好的CPU、协处理器网店里都有卖。那天河二号不就是用这些Xeon芯片堆砌的?
追答不是简单堆砌,还得有专用的主板、扩展接口以及系统软件支持才行,这些你能做
追问那天河二号用的是氦气硬盘吗?存储方面我用大容量氦气硬盘。
参考技术C 大型计算机都是有相应的硬件及软件。普通的台式电脑连起来达不到这样的效果,好一点的就是使用分布计算能力,至少也要软件支持。追问那天河二号是怎么做的呢?
参考技术D 这你应该找专业人士,百度上就算有也不可能无偿给你回答的。以上是关于怎么将一堆高性能电脑硬件组成超级计算机?的主要内容,如果未能解决你的问题,请参考以下文章