“芯”突破——龙芯3A万亿次计算机研制成功

企业观察

首台采用国产高性能通用处理器龙芯3A的万亿次高性能计算机KD-60于2010年4月17日通过专家鉴定,成为我国高性能计算机国产化的重大突破。龙芯3A处理器及KD-60有何特点?新突破又有何意义呢?

市场化之路,不仅是KD-60

古有“神算子”,上知天文,下晓地理,前知500年,后通500年。而现在HPC(高性能计算机)也具有这样的本事,它可利用自身强大的计算能力为包括DNA图谱分析、石油勘探、核子模拟、作战模拟、台风预测、公式证明在内的科学计算应用提供支持。

长期以来,万亿次高性能计算机领域都被Intel、IBM、AMD等国外知名公司的处理器所把持,在最新的全球超级计算机TOP500排行榜中,惠普的机型占据了42%的份额(共有210个系统),IBM占了37.2%的份额(共186个系统),Cray、SGI和戴尔则分别占3.8%、3.8%和3.2%。而在这些HPC所采用的处理器方面,Intel的处理器在榜单中仍占主导地位,有402个系统使用Intel的CPU;IBM的Power处理器使用数量则排第二,出现在52个系统中;AMD的皓龙处理器占据了排行榜上的42个系统。让HPC使用上中国具有自主知识产权的处理器,成为国内科学家为之毕生奋斗的目标。

KD-60是2007年12月推出的国内首台万亿次高性能计算机KD-50-I的后续机型,KD-60也采用了单一机柜,集成了80余颗龙芯3A处理器,理论峰值计算能力达到每秒1万亿次(1Teraflop/s)。KD-60的系统硬件由10个1U的计算节点、1个2U的服务节点和显示终端、2个1U的48端口千兆以太网交换机组成;其系统软件以开源软件为主,包括针对龙芯3A处理器体系结构专门优化的GotoBLAS 2数学函数库,以及自主研发的图形化系统监控软件KD-60 Monitor 1.0,它具有兼容性强、易维护、易升级、易使用等特点。

与KD-50-I相比,大家可发现KD-60有明显的进步。KD-50-I的体积相当于一台体积较大的家用冰箱,功耗为6000W左右。而KD-60的体积减小了一半,只相当于一台家用洗衣机的大小,整机功耗只有2381W,降低了很多,更适合用于高性能计算教学和创新型人才培养,可应用于有大规模科学与工程计算需求的相关学科研究,以及军事科学、国家安全和国民经济建设等诸多领域。

随着龙芯系列处理器不断走向成熟,采用“国产芯”的服务器市场化之路也陆续被拓宽。2010年4月23日,曙光公司宣布成功研制出基于国产龙芯3A处理器的高性能刀片服务器CB50-A。该刀片服务器的主板由曙光公司自行设计,其CPU采用了中国独立自主研制的龙芯3A,其BIOS采用曙光公司基于PMON的二次独立开发的时光龙芯BIOS,操作系统则采用红旗公司的Redflag Linux。CB50-A采用SMP架构,共有8个处理器核心,其峰值运算性能达到32Gflop/s(1Gflop/s即每秒10亿次),支持最大64GB内存。CB50-A有很好的通用性,X86架构下源代码的信息服务和科学计算应用能够通过交叉编译的方式平滑地移植到龙芯刀片服务器上。CB50-A可应用在曙光TC2600刀片系统中,在一个42U高的机柜中,可安装6台TC2600,每个TC2600支持10片双路CB50-A,每个机柜最多可拥有120个龙芯3A四核处理器、480个处理器核心,最大处理能力达1920Gflop/s(1.92Teraflop/s,即每秒1.92万亿次),最大功率不超过8000W,具有很高的计算密度和能效比。

从早期的“龙腾服务器(基于龙芯1号)”到“龙芯防火墙(基于龙芯2系列)”,再到如今的KD-60高性能计算机、CB50-A刀片服务器,意味着中国IT业有望迈出摆脱长期依赖国外CPU的关键一步,这标志着中国具有自主知识产权的处理器系统正走向成熟,走向市场化。

17-i-01-1.jpg
采用龙芯3A的KD-60的体积只有普通洗衣机大小

苹果熟了,龙芯3A处理器解密

CPU是决定超级计算机性能的主要因素。KD-60之所以能在性能稳步前进的基础上,体积和功耗都大幅缩小,主要得益于四核龙芯3A处理器的采用。这符合技术潮流,从最新的全球HPC TOP500榜单来看,只有4个系统仍使用单核处理器,在所有全部系统中有427个系统使用四核处理器,这表明四核处理器已成为高性能计算机的主流配置。而且从今年处理器的发展趋势来看,Intel和IBM都相继推出了8核心的服务器处理器,AMD甚至发布了12个内核的Magny-Cours CPU,这些都标志着处理器已全面迈入多核甚至“众核”时代。龙芯如何在这方面紧跟世界脚步,值得关注。

日益强大和完善的高性能国产处理器正在走来:2002年8月研制成功的龙芯1号是国内第一款32位通用CPU,2003年10月研发成功的龙芯2号是国内第一款64位通用CPU,2009年研制成功的龙芯3号则是我国第一款多核通用CPU。从上一代龙芯2F处理器来看,由于它仍是单核处理器,KD-50-I需要集成330余颗龙芯2F处理器,理论峰值计算能力方能达到1万亿次。

龙芯3A处理器则是一款标准的四核处理器,它采用RISC架构,兼容MIPS指令,原生四核设计,内含两条HT PHY超传输总线。2008年末四核龙芯3A便流片成功,采用65nm制程工艺,主频1GHz,晶体管数目达到4.25亿个。作为一款四核处理器,龙芯3A具备专门服务于Java程序的协处理器(以提高Linux环境下Java程序的执行效率)、指令缓存追踪技术等。其内部集成了两个DDR2/DDR3内存控制器,支持双通道内存,单颗龙芯3A处理器支持四根DIMM内存插槽。

目前市场上主流的处理器主频一般在2GHz左右,因此龙芯3A处理器的运算能力大概相当于主流四核处理器的二分之一,但龙芯3A在能耗上更具优势,目前一颗龙芯3A处理器的功耗峰值在15W左右,一台刀片服务器的功耗仅为110W(两颗龙芯3A处理器、16GB内存、1块250GB硬盘、两块1000Mbps网卡等),而现在主流的服务器处理器单个CPU的功耗就在75W~135W。龙芯3A在能效比上表现更好,在曙光推出的龙芯服务器产品中,每颗CPU的单瓦特能效比是目前X86 CPU的两倍以上。

由于龙芯3A是一款通用处理器,因此X86架构下的很多软件都能平滑地移植到龙芯刀片服务器上,曙光公司已经为它移植和优化了Apache、气象预报领域的MM5、生命科学领域的BLAST等10多款具有重要影响的行业应用软件,让其可用性大增。整体来看,龙芯3A的性能水平已达到了世界先进水平,在服务器和高性能计算机应用领域大有可为。系统只需要集成80余颗龙芯3A处理器,理论峰值计算能力就能达到每秒1万亿次。

17-i-01-2.jpg
龙芯3A让KD-60性能倍增

有“天河一号”还需要龙芯产品吗

近年来,国内对高性能计算机的研发和技术跟踪从未停止过。从近年来全球TOP500高性能计算机排行榜来看,TOP500排行榜中的产品性能更迭也符合“摩尔定律”。目前全球HPC的第一名,其性能在6~8年后估计只能排到第500名,因此企业只有紧跟发展步伐才不会让自己被世界抛弃。

作为计算机中功能最强、运算速度最快、存储容量最大和价格最贵的一类产品,超级计算机多用于国家高科技领域和国防尖端武器的研究,如今这类顶级产品的浮点运算能力已步入每秒千万亿次的门槛。中国的“天河一号”系统是目前国内最顶级的HPC系统,它在最新的全球HPC TOP500榜单中排名第5,这个系统现安装在天津的国家超级计算机中心,处理能力是每秒钟1206万亿次的峰值速度、每秒563.1万亿次的浮点运算能力。“天河一号”采用了Intel的至强CPU和AMD Radeon HD4870图形处理器作为加速器的混合设计结构,2560个节点共使用了6144个通用处理器、5120个加速处理器;其内存总容量为98TB、点对点通信带宽为40Gbps、共享磁盘总容量为1PB。用“天河一号”计算一秒,相当于全国13亿人连续计算88年,如果用“天河一号”计算一天,一台当前主流的PC得计算160年。

“天河一号”的诞生,是我国战略高技术和大型基础科技装备研制领域取得的又一重大创新成果,实现了我国自主研制超级计算机能力从每秒百万亿次到每秒千万亿次的跨越,使我国成为继美国之后世界上第二个能够研制每秒千万亿次超级计算机系统的国家。气候预报、环境控制、飞行器设计、系统生物学等领域都需要每秒千万亿次甚至更高性能的计算机,“天河一号”系统暂时缓解了国内相关领域对每秒千万亿次超级计算机系统的急需状况,虽然它采用的处理器仍然是“国外芯”。

17-i-01-3.jpg
曙光推出的采用龙芯3A的刀片服务器

在目前的全球HPC TOP500排行榜中,每个系统平均使用了9174个内核,集群架构仍是主导型架构,其中有417个系统使用这种架构。基于龙芯3A的HPC如能使用这么多处理器,并采用集群架构,相信也能轻松进入全球HPC TOP500排行榜,虽然实际应用时这样做的意义不大,但表明了龙芯处理器在不断进步。

用KD-60组成的同类系统虽然在整体性能上不及“天河一号”,但它使用的是被称为“安全芯”的中国芯片,它采用了众多具有自主知识产权的软硬件,因此具有独特的安全性。政府部门和核心机构如果采用基于龙芯处理器的服务器,会有助于消除我国在电子政务、国防等众多领域的安全困局,改变在信息安全方面的现有局面。

雄心勃勃,龙芯会越来越强大

此外,根据规划,龙芯3号系列处理器将发展多个后续版本,除了已经推广的四核龙芯3A外,后续还将陆续推出八核的龙芯3B和16核的龙芯3C等产品,并“争取业内第一个推出16核处理器”,在全面掌握65nm制程工艺的产品设计技术后,龙芯处理器将继续突破45nm及32nm制程工艺的设计,紧跟世界处理器的发展潮流。

而据曙光透露,曙光计划于今年中期推出下一代千万亿次超级计算机曙光6000,它将使用部分龙芯3A来构建。另外,下半年曙光将推出基于龙芯处理器的Twins高密度刀片服务器、双路和Twins机架式服务器等,明年初还会推出四路SMP刀片服务器和四路SMP机架式服务器,以及为特殊单位定制的保密服务器等,大力为龙芯处理器的市场化之路推波助澜。

总之,龙芯3A的出现及应用,打破了中国不可能做出高性能CPU的偏见。目前全球处理器发展正处于止步于频率提升、更强调效能和能效、向“众核”技术发展的关键时期,龙芯处理器迎头赶上,时机刚好。

曙光6000.jpg
部分芯片采用龙芯3A的曙光6000将推出

编后>>

略显单调的处理器丛林中新兴起一片“龙芯林”,对于构架丛林的种群多样性大有裨益。虽然在整体性能上国产的龙芯产品与国外最新的主流产品尚有差距,但其性能已能和国外前沿IT厂商两年前的同制程产品相匹敌,这是一个巨大的进步。龙芯是一颗“人才芯”,它有助于将作为世界工厂的“中国制造”变成“中国创造”,有助于研发人员在模仿中获得创新认知,改善国内相关领域人才匮乏的窘境。龙芯也是一颗“安全芯”,龙芯及相关产品最为独特的优势,不是性能,也不是价格,而是它的安全性,随着龙芯商用化进程的不断加快,这将大大改善军队、政府、国有企业和科研机构等核心部门使用IT设备长期依赖国外产品的局面。龙芯也是一颗“性能芯”,高性能的龙芯3A及KD-60、CB50-A的成功问世,是我国高性能计算机技术发展的又一重大突破,这对提升综合国力和科研水平具有重要的战略意义。如果明天你在办公室见到性能强劲的龙芯服务器,请不必感到惊讶。