超级计算机
超级计算机(英文:Super Computer),指在计算速度或容量上领先世界的电子计算机。它的体系设计和运作机制都与人们日常使用的个人电脑有很大区别。现有的超级计算机运算速度大都可以达到每秒兆(万亿,非百万)次以上。因此无论在运算力及速度都是全球顶尖。“超级计算机”第一次被使用是在媒体“纽约世界”于1920年关于万国商业机器为哥伦比亚大学建造制表机的报导。
提问 编辑摘要1960年代,超级计算机由希穆尔·克雷在Control Data Corporation里设计出来并带领市场直到1970年代克雷创立自己的公司克雷研究。凭着他的新设计,他控制了整个超级计算机市场,并占据颠峰位置长达五年(1985-1990)。到了1980年代,正值小型电脑市场萌芽阶段,大量小型对手加入竞争。在1990年代中叶,很多对手受不了市场的冲击而消声匿迹。今天,超级计算机成了一种由像国际商用机器公司及惠普等大型电脑公司所特意设计的电脑。虽然这些公司通过不断并购其他公司而增强了自己的经验,但除他们以外的元老公司——克雷研究——依然是超级计算机领域的巨头。
“超级计算机”一词并无明确定义,其含义随计算机业界的发展而发生变化。早期的控制数据公司机器可达十倍速于竞争对手,但仍然是比较原始的标量处理器。到了1970年代,大部分超级计算机就已经是矢量处理器了,很多是新晋者自行开发的廉价处理器来攻占市场。1980年代初期,业界开始转向大规模并行运算系统,这时的超级计算机由成千上万的普通处理器所组成。1980年代中叶,将适量的矢量处理器(一般由8个到16个不等)联合起来进行并行计算成为通用的方法。1990年代以后到21世纪初,超级计算机则主要由基于精简指令集(RISC)的处理器(譬如PowerPC或PA-RISC)互联进行并行计算而实行。
分布式运算所用的软件包括一些标准的应用编程接口(如信息传递接口及并行虚拟机器)及开放源码软件(例如openMosix可以把很多普通的电脑联合成虚拟超级计算器)。
零设定技术方便了即兴建立电脑分布计算网络,而为超级计算机制作容易的编程语言仍然是运算科学的研究课题。
超级计算机常用于需要大量运算的工作,譬如天气预测、气候研究、运算化学、分子模型、物理模拟、密码分析等等。
超级计算机的创新设计在于把复杂的工作细分为可以同时处理的工作并分配于不同的处理器。他们在进行特定的运算方面表现突出,但在处理一般工作时却差强人意。他们的数据结构是经过精心设计来确保数据及指令及时送达——传递速度的细微差别可以导致运算能力的巨大差别。其输入/输出系统也有特殊设计来提供高带宽,但是这里的数据传输延迟却并不重要——超级计算机并非数据交换机。
根据Amdahl's law,超级计算机的设计都集中在减少软件上的序列化、用硬体在瓶颈上加速。
挑战与技术
超级计算机常产生高热,需要冷却。冷却是很大的通风空调问题。
资讯传送不能比光快。几米的距离导致几十纳秒的延误,而克雷著名的环型设计保持了最短距离。
超级计算机在短时间耗用及生产大量数据,需要投入很多资源确保资讯妥善传送及访问。
因超级计算机而开发的技术:
矢量处理器
水冷技术
非均匀访存模型(NUMA)
资料分割 (RAID)
并行访问档案系统
处理技术
矢量处理因超级计算机而建立并用于高性能运算。矢量处理技术后来被用于普通电脑内的信号处理架构及单指令流多数据流(SIMD)。例如:电视游乐器、图像卡等。
操作系统
超级计算机操作系统虽然是UNIX的变种,但比小型电脑的复杂一点。一般都倾向减少开发它的用户接口,因为可以减少浪费资源在不必要的工作上。同样的道理应用到价值几百万的电脑身上。
1980年代初期,超级计算机通常会为了追求性能而牺牲指令集的兼容性及运载速度。它们会使用不同类型的操作系统。雷克-1曾使用6个专属操作系统及并行矢量版本的FORTRAN编译器。
编程
超级计算机的并行架构需要特别编程技术来提高速度。Fortran的专门编译器可以产生的源码,运行比C或C++的更快,所以Fortran仍然被选用作科学编程。为了开发超级计算机的并行性都使用紧接分享记忆的并行虚拟器及信息传递接口。
大致上可以分为三种:
矢量处理机器,能为大量数据同时进行同样的运算。
丛集式处理器,特别建立连接处理器及记忆体的通信网络,非均匀访存模型就是最常见的。最快的超级计算机就是使用这个技术。
商品电脑丛集,使用高带宽低延误的网络来连接大量普通商品电脑。
根据摩尔定律及经济规模,一个现代的桌面电脑比15年前的超级计算机有更高性能,皆因某些超级计算机的设计已经放在桌面电脑内。再者,简单芯片的开发及生产成本比特意设计给超级计算机的更便宜。
超级计算机所处理的问题都适合并行化,当中减少处理单元之间的资料传送量。因此,传统的超级计算机可以被电脑丛集所代替。
专用超级计算机都是针对单一问题而开发的电脑。这些电脑都使用专门编程的FPGA芯片及超大型密集芯片,纵然牺牲普遍性也要提高成本效能比率。它们被用于天文物理学及密码破解之上。
例子:
深蓝, (下棋)
可再重设电算
GRAPE,天文物理
Deep Crack,DES解码器
首500强超级计算机排名榜可见于 http://www.top500.org/
速度单位
超级计算机速度以每秒的浮点运算“FLOPS”来作量度单位。 常见的表示电脑中的数量或速度用的单位英汉对照如下:
1K=210=1,024
1M=220=1,024×1,024=1,048,576
1G=230=1,024×1,024×1,024=1,073,741,824
1T=240=1,024×1,024×1,024×1,024=1,099,511,627,776
1P=250=1,024×1,024×1,024×1,024×1,024=1,125,899,906,842,624
1E=260=1,024×1,024×1,024×1,024×1,024×1,024=1,152,921,504,606,846,976
1Z=270=1,024×1,024×1,024×1,024×1,024×1,024×1,024=1,180,591,620,717,411,303,424
1Y=280=1,024×1,024×1,024×1,024×1,024×1,024×1,024×1,024=1,208,925,819,614,629,174,706,176
(电脑中的进制在涉及缩写时通常是以210(1024)为进制的)
计划中的超级计算机
2009年2月4日,IBM发表Sequoia超级计算机,运算速度约为20 Petaflops,主要为国家核能安全署(National Nuclear Security Administration)提供核子武器存储模拟测试所需的运算能力,将放置于美国能源部加州的劳伦斯‧利弗莫尔(Lawrence Livermore)国家实验室,预计于2011年建设完成。
目前最快的超级计算机
2008年11月,IBM的Roadrunner成为当今最快的超级计算机,运算能力为1.105PFlops。
2008年11月16日,美国超级计算机公司推出Jaguar系列,运算能力为1.059PFlops,采用45376颗四内核的Opteron处理器,362TB的存储器,传输总带宽284GB/Sec,硬盘容量10,750TB,内部的数据总线带宽532TB/Sec。这台计算机将建置在美国的国家高速计算机中心,并开放给各界有需要的团体申请使用。
过往的超级计算机
2007年11月,IBM的Blue Gene/L,运算能力为478.2 TFlops,安装了32768个处理器。它是PowerPC架构的修改版本,正式运作版本被推出到很多地点,包括罗兰士利物摩亚国家实验室(Lawrence Livermore National Laboratory)。
在Blue Gene/L之前,最快的超级计算机是日本电气株式会社在横滨地球科学学院的地球模拟器。它由640个特别设计的8阶矢量处理器根据NEC SX-6架构所组成的丛集,使用UNIX的修改版本。
在地球模拟器之前,最快的超级计算机是美国加州罗兰士利物摩亚国家实验室的ASCI White,它的冠军位置维持了2.5年。
类超级运算
某些分布式运算把丛集超级运算推至极限。例如SETI@home计划现在平均有514.939 TeraFLOPS运算能力。
2009年4月,Folding@home声称拥有超过8PFLOPS运算能力。
GIMPS运算能力也高达18TFLOPS。
Google的搜寻引擎系统Google server farm总处理能力界乎于126及316TFLOPS之间。Tristan Louis估计这个系统等于32000至79000台双2 GHzXeon电脑。[3] 由于散热问题,Google的搜寻引擎系统应该属于网格运算。
1992年,国防科技大学研制出银河-II通用并行巨型机,峰值速度达每秒10亿次,主要用于中期天气预报。
1993年,国家智能计算机研究开发中心(后成立北京市曙光计算机公司)研制成功曙光一号全对称共享存储多处理机,这是国内首次以基于超大规模集成电路的通用微处理器芯片和标准UNIX操作系统设计开发的并行计算机。
1995年,曙光公司又推出了曙光1000,峰值速度每秒25亿次浮点运算,实际运算速度上了每秒10亿次浮点运算这一高性能台阶。曙光1000与美国Intel公司1990年推出的大规模并行机体系结构与实现技术相近,与国外的差距缩小到5年左右。
1997年,国防科技大学研制成功银河-III百亿次并行巨型计算机系统,峰值性能为每秒130亿次浮点运算。
1997至1999年,曙光公司先后在市场上推出曙光1000A,曙光2000-I,曙光2000-II超级服务器,峰值计算速度突破每秒1000亿次浮点运算。
1999年,国家并行计算机工程技术研究中心研制的神威I计算机,峰值运算速度达每秒3840亿次,在国家气象中心投入使用。
2004年,由中科院计算所、曙光公司、上海超级计算中心三方共同研发制造的曙光4000A实现了每秒10万亿次运算速度。
2008年,“深腾7000”是国内第一个实际性能突破每秒百万亿次的异构机群系统,Linpack性能突破每秒106.5万亿次。
2008年,曙光5000A实现峰值速度230万亿次、Linpack值180万亿次。作为面向国民经济建设和社会发展的重大需求的网格超级服务器,曙光5000A可以完成各种大规模科学工程计算、商务计算。
2009年10月29日,中国首台千万亿次超级计算机“天河一号”诞生。这台计算机每秒1206万亿次的峰值速度和每秒563.1万亿次的Linpack实测性能,使中国成为继美国之后世界上第二个能够研制千万亿次超级计算机的国家。
)


