“天河一号”牛气冲天
特别策划

10月29日,中国高性能计算学术会议在长沙召开,大会披露了登顶中国高性能计算机TOP100的天河一号超级计算机系统,这是我国第一款千万亿次超级计算机系统。千万亿次计算意味着什么?所谓千万亿次计算是指每秒进行1千万亿次双精度浮点运算,其性能是此前中国服务器企业研制的最快超级计算机曙光5000A的6倍。有关专家认为,天河一号的诞生,是我国战略高技术和大型基础科技装备研制领域取得的又一重大创新成果,我国自主研制超级计算机的能力实现了从百万亿次到千万亿次的跨越,中国成为继美国之后世界上第二个能够研制千万亿次超级计算机系统的国家。
天河一号到底有多“牛”
作为中国首台千万亿次超级计算机(超级计算机也称高性能计算机或巨型计算机,英文简称HPC),天河一号究竟有多“牛”?相信这也是大家最希望了解的,那么大家不妨先看一下以下的相关数据。
●天河一号系统的峰值性能为每秒1206万亿次,Linpack(测试HPC浮点运算能力的标准程序)实测性能为每秒563.1万亿次。天河一号计算一天的工作量,一台配置Intel双核CPU、主频为2.5GHz的个人PC需要计算160年才能完成。
●天河一号的共享存储总容量为1PB,按国内数字图书馆应用软件的图片格式PDG为例计算,如果平均每册书大小约10MB的话,天河一号的存储量相当于4个国家图书馆(藏书量为2700万册)之和。
小提示:1EB=1024PB,1PB=1024TB,1TB=1024GB,1GB=1024MB
●天河一号全系统包含6144个通用处理器(CPU)和5120个加速处理器(GPU),内存总容量98TB,仅系统级软件就有20多万行代码。按照每人每个小时写20行代码的速度,需要写1万小时。
●互联通信网络的单根线传输速率为10Gbps,这是目前国际上最快的速率,相当于在天河一号HPC内部修了一条信息高速公路。
天河一号为什么这么“牛”
“也许有些朋友会这样认为:一台千万亿次的HPC其实等于10台百万亿次HPC之和,其实不然,天河一号的效能绝不是各单元计算效能的简单叠加。”中国科学院院士周兴铭说。在超级计算机不断提高运算速度的过程中,千万亿次是一个难以逾越的“瓶颈”。美国早在上个世纪90年代就提出了做千万亿次超级计算机的目标,直到2007年才实现。一台HPC从百万亿次到千万亿次的跃升并不只是一个简单的数字上的变化,而是需要在其体系结构上进行大量的创新和调整。“如果原来是10个人来完成某项工作,现在就相当于要有100个人来完成一项更繁重的工作。每个人的工作怎么分配、人与人之间如何分工合作、如何互联协调就变得极其重要。否则,就很难保证100个人的工作效率比10个人高。很可能这100个人的内耗巨大,或者经常需要返工,而导致工作效率低于10个人的效率”,周兴铭谈到。
另外,天河一号有10000多个部件,从科学角度来讲,故障是不可避免的,这就需要设计出一套机制来保证某个部件的故障不至于影响到整个系统的运作,此外还要能尽快找到并排除故障。要解决这些问题,就需要设计出一套让这上万个部件可以和谐互联的体系系统。天河一号采用了7项关键技术,使得“一加一”的结果尽量接近“二”,从而发挥出机器最大的整体效能。
天河一号最大的亮点是采用了先进的混合异架构。此前,我国的高性能计算机系统大多数采用机群架构,在新架构体系机器的引进和研制方面很滞后。目前国际上已经开始在芯片、节点和系统等不同层面探索和研制多核异构系统,与传统的机群架构不同,异架构基于GPU,但不拘泥于GPU,而是取长补短,将CPU串行计算和GPU的并行计算融合,因此也称为“异构计算”。
“异构计算”真正实现了系统整体计算能力的最大化利用:GPU和CPU协同工作,GPU处理大量的图形和并行运算,CPU处理操作系统和指令的逻辑控制。两者的协同运算比以往单纯的CPU运算性能高出几十倍、几百倍甚至上千倍,将高性能计算机的性能推向更高的记录。如NVIDIA的Tesla GPGPU系统,英特尔和AMD研发的多核/众核异构芯片,IBM把Power PC、CELL和Opteron等三种处理器“融合”在一起的RoadRunner(走鹃)HPC,以及众多厂商正在研制的基于FPGA加速计算的节点级异构系统等等,都是“异构计算”发展的结果。
不过需要说明的是,天河一号在架构上还不是相当完美,它采用的AMD Stream流处理方案长期以来缺乏合适的高层API,目前所支持的OpenCL 1.0的特性只与NVIDIA的CUDA版本勉强相当,而开发难度和代码量却比CUDA API多了不少。同时使用GPU进行计算必须使用PCI-E与CPU进行数据交换,有比较严重的I/O墙和存储器墙问题。尽管“异构计算”还存在种种问题,但是由于GPU提供了更高的单位成本性能和单位功耗性能,因此未来的超级计算机系统会更加倚重GPU并行计算。


研制天河一号等HPC的意义
超级计算机是世界高新技术领域的战略制高点,是体现科技竞争力和综合国力的重要标志。各个大国将它视为国家科技创新的重要基础设施,均投入巨资进行研制开发。高性能计算机似乎只和国防、军工和科学研究联系在一起,但事实上,在和大众生活息息相关的各个领域,我们都可以看到超级计算机的身影。
1.HPC服务于民众生活
●网络服务:在网络日益普及的今天,面对数千万、数亿用户的访问请求,服务器必须有强大的数据吞吐和处理能力,而这正是超级计算机发挥作用的舞台。高性能服务器每秒钟可以处理数千万甚至数亿次服务请求,及时提供用户所需要的信息和服务,保证服务质量。
●天气预报:天气预报的结果,也是由超级计算机计算而来。目前世界最高水平可预报8天,我国为5至6天。但对于中长期预报特别是气候预报来说,目前世界上的超级计算机仍然是无法满足需求的,因为天气预报的计算需要10的18次方也就是每秒百万万亿次的速度。一个公认的说法是,天气预报时效每增加一天,气象界和计算机界需要努力10年。
●生物制药:研制一种新药,从化合物筛选到临床试验,一般需要10到15年的时间。使用超级计算机,以计算机模拟的手段,科学家可以在较短的时间内从几十万种甚至几百万种化合物中筛选出有效的药物化合物,不仅节省了购买真实化合物的大量资金,而且大大缩短了药物研发的周期。
●石油勘探:目前石油勘探大都采用地震波法,即用炸药爆炸在地面激起人工地震波,这种地震波可传入地下深处,并在碰到不同形态的岩层时形成不同的反射波,这些反射波经地面的检波器收集,转变成电子信号后存储为数据,这些数据量非常大,常以TB或PB计,只有采用高性能计算机处理这些数据,才能加速石油的勘探进程。
当然,高性能计算机的应用领域还很广,上个世纪末期,西方发达国家的汽车、建筑、金融、动漫、影视等行业就已经开始应用到高性能计算机。据“天河一号”工程办公室主任李楠介绍,波音飞机的外形设计过去一个型号要在风洞做3年的实验,运用高性能计算机后,设计周期缩短到了6个月,金融产品投资运用高性能计算机计算是否盈利,能精确到几分几秒出手。高性能计算机可以称作一个国家的基础设施。它本身代表着一个国家的高技术能力,同时也为今后其他领域高新技术的发展开创了一个更广阔的空间。
2.天河一号的用途
作为天河一号的诞生地,国防科大计算机学院是中国高性能计算机研制的重要基地,他们始终紧贴国家和军队重大战略需求,研制成功的“银河”系列高性能计算机在国防建设的关键领域发挥了重要作用。在天河一号的研制中,科研人员突破了7项关键技术,采用了全新的技术路线,从而实现了最佳的系统能效。
投入使用后,天河一号将为国内外用户提供高性能计算服务。据介绍,天河一号在投入使用后将实现三大功能:第一,作为提供超级计算服务的全球公共科研设施,天河一号向国内外用户开放。无论身在何处,用户都可以通过国际互联网使用天河一号进行科学计算;第二,作为产业带动平台,天河一号上集成的当今时代最先进的信息技术将逐步转移到其他产业,从而解决国家与社会发展中的各种问题;第三,作为吸引人才的平台,天河一号将进一步会聚来自世界各地的尖端技术人才,对国民经济和世界科技的可持续发展作出更多贡献。