【IT168 特稿】[编者按]6月18日,最新的第31届TOP500排行榜将在第23届国际超级计算大会(International Supercomputing Conference,ISC’8)上发布。此次ISC会议在德国德累斯顿市(Dresden)举行。在最新TOP500即将公布之际,IT168服务器频道全文编译了TOP500十五年历程的发展总结报告——《The TOP500 Project: Looking Back over 15 Years of Supercomputing Experience》,希望能帮助国内读者更好地了解TOP500及其背后所反映出来的HPC发展趋势。原文刊登于http://www.top500.org/,其作者Hans Meuer教授是全球超级计算机TOP500排行榜的创始人之一。他在报告中回顾了TOP500排行榜的起源及前身“曼海姆超级计算机统计”,他用生动易懂的笔触了描绘了过去15年来TOP500排行榜的发展历程,分享了自己和团队对高性能计算领域的一些独到见解,并对未来超级计算机性能发展趋势进行了展望,该报告对业界认知TOP500、高性能计算技术应用发展趋势、市场竞争格局及Linpack等基准测试有着重要的参考价值。
作为长期关注高性能计算领域的一家专业媒体,IT168服务器频道曾在2006年6月对2001-2006年全球TOP 500 HPC的11期历史数据进行过整理分析,并推出了《全球TOP500超级计算机5年风云录专题》,受到业界一定的关注。由于译者水平有限,欢迎广大读者批评指正。由于TOP500采用的基准测试是Linpack值,文中涉及到多个浮点运算指标,为便于大家理解,现把相关指标罗列如下:
FLOPS(floating-point operations per second)指计算机每秒执行的浮点运算次数;
1 Megaflop/s指每秒执行100万次浮点运算,即10的6次方FLOPS;
1 Gigaflop/s指每秒执行10亿次浮点运算,即10的9次方FLOPS;
1 Teraflop/s指每秒执行1万亿次浮点运算,即10的12次方FLOPS
1 Petaflop/s指每秒执行1000万亿次浮点运算,即10的15次方FLOPS。
1 Exaflop/s即每秒执行100万万亿次浮点运算,10的18次方FOPS。
全球TOP 500超级计算机排行榜诞生于1993年,其主要目的是为了以此为基础来对高性能计算领域里的发展趋势进行跟踪、监测。该排行榜对全球范围内性能最强劲的500套计算机系统进行排名,每年发布两次。决定计算机系统排名的最重要指标是Linpack测试性能。此外,该排行榜也提供了其他各种信息,如系统的规格、应用领域等等。目前,TOP500排行榜已经连续发布了30次,相关信息数据都可以在www.top500.org网站上找到。
1.TOP500排行榜的起源
——曼海姆超级计算机统计(Mannheim Supercomputer Statistics,1986-1992)与1993年启动的TOP500项目
从1986年到1992年间,德国曼海姆大学超级计算机研讨会(Supercomputer Seminars at Mannheim University)每年会发布“曼海姆超级计算机统计”这样一份报告。我们注意到,在这期间,人们对超级计算机这类数据的关注程度也在逐年提高。不过,这个统计表只是简单地罗列了安装在美国、日本和欧洲的向量计算机系统(vector computer systems)——自从上世纪80年代以来,超级计算机是向量计算机的同义词。
由于对向量计算机的统计是由系统制造商们自己申报的,所以统计数据的可靠性并不高。比如,虽然我们对美国和欧洲向量计算机的安装应用情况掌握得比较清楚,但却很难获得日本方面的相关信息。因此,当时我们和日本的三个向量计算机制造商富士通、NEC和日立公司取得了联系,以获取日本安装系统的相关信息,并借此作为每年进行统计估算的一个基础。
1992年,当最新一期“曼海姆超级计算机统计”公布时,我们发现当时全球范围内的超级计算机已经达到了530套。图1显示了1986-1992年间超级计算机市场上不同厂商的份额统计情况。可见,当时CRAY公司的地位非常领先,其份额持续多年保持在60%左右;位居第二位的美国制造商是CDC(Control Data Corporation,控制数据公司),其份额不到10%,而且到80年代末期,CDC的份额开始缩减,并在1991年完全退出了这个领域。日本的向量计算机制造商富士通、NEC和日立是在1986年开始被纳入统计中来的,其总体份额是20%,到了1992年,他们的份额扩大到了40%左右,其中富士通处于明显的领先位置,全球范围大约30%的向量计算机都是由它提供的。
图2则表明了这些向量计算机在不同国家的安装应用情况。1986年,美国非常领先,占到了50%的份额,但到1992年减少到了35%。日本正好相反,1986年是20%左右,1992年已经达到了40%,超过了美国。欧洲的情况比较稳定,在这7年里基本维持在25%-30%之间,其中德国略微领先于法国和英国。
“曼海姆超级计算机统计”虽然有一定的实际价值,但并不完美,它缺少一个可靠的数据库。另外,在日本,象Fujitsu VP30/50这类所谓的入门级向量计算机也开始越来越流行。但从性能上来看,这些系统是否是真正意义上的超级计算机呢?还有,象美国Convex C1/2这种迷你型超级计算机是否也应该被统计进去呢?因此,我们不得不开始非常谨慎地来考虑,到底哪些系统符合超级计算机的定义,应该被纳入“曼海姆超级计算机统计”。从上世纪90年代初开始,向量计算机已经不再是唯一的超级计算机结构;大规模并行系统如Thinking Machines (TMC)的CM2也开始进入市场。因此,我们需要一套方法来定义“超级计算机”到底是什么,由哪些部分组成,根据什么对这些计算机进行排名。
这就是1993年春天Hans Werner Meuer和Erich Strohmaier在德国曼海姆大学启动TOP500项目的原因所在。下面是我们当时提出的一些简单的指导原则:
1)对全球范围内最强大的500台计算机进行排名;
2)用Rmax(即最好的Linpack性能)做Benchmark(基准测试);
3)TOP500排行榜每年更新和发布两次——6月在德国的ISC(国际超级计算大会),11月在美国的SC(超级计算大会);
4)所有的TOP500数据都在www.top500.org进行公示,供公众查阅。
这里我列出了一些基本的问题,并将在下面的部分进行解答:
1)为什么是“500台最强大的超级计算机”?一个原因是因为1992年我们做最后一次“曼海姆超级计算机统计”时发现全球范围内已经有530台超级计算机。另一个确切的原因是,(在感情上)受到了福布斯500排行榜的影响,这个排行榜统计的是全世界最富有的500个人和规模最大的500家企业。
2)所谓“最强大”是需要有一个通用的Benchmark来定义的,对此我们选择了Linpack值。但为什么选择Linpack呢?这主要是因为Linpack的Rmax指标广为人知,而且对所有系统来说也比较容易获得。严格来看,TOP500中所列的计算机仅仅是考察了它们在解决一组线性方程时的能力,比如,A x = b, using a dense random matrix A。
3)为什么我们是一年两次对TOP500排行榜进行更新,而非持续不断地更新?首先,更新TOP500排行榜是一件非常费时的工作,程序也比较复杂。其次,我们认为,每年更新两次已经足以揭示HPC业界主要关心的那些重要的变化趋势,而且多年的经验也证明这点考虑是正确的。
TOP500的作者是美国劳伦斯伯克利国家实验室(Lawrence Berkeley National Laboratory ,LBNL)的Hans Werner Meuer和Erich Strohmaier,以及来自美国田纳西州大学,被人们誉为“Linpack之父”的Jack Dongarra。第四位作者是LBNL的Horst Simon,他从很早的时候就开始支持TOP500项目,并在2000年正式加入了这个项目。1999年,也就是在项目启动仅仅6年后,这些作者就出版了他们关于TOP500的经验论文集。
至今TOP500排行榜已经更新了30次:
第一届TOP500排行榜是1993年6月24日在德国曼海姆的ISC’93上公布的;
第29届TOP500排行榜是2007年6月27日在德国德累斯顿的ISC’07上公布的;
第30届TOP500排行榜是2007年11月12日在美国里诺(Reno)的SC07上公布的。
未来三届TOP500公布的日期分别是:
第31届TOP500排行榜将于2008年6月18日在德国德累斯顿公布;
第32届TOP500排行榜将于2008年11月18日在美国奥斯汀(Austin)公布;
第33届TOP500排行榜将于2009年6月24日在德国的汉堡(Hamburg)公布。
在历经15年和30届排行榜之后,我们已经成功地将TOP500打造成HPC用户、制造商和媒体在分析HPC市场时非常有用的工具。