神威太湖之光100P超算0.3%HPCG性能,这一点不如天河二号, ...

来源:百度文库 编辑:超级军网 时间:2024/04/25 22:13:38


最后冷静下来谈一谈不足之处: HPCG的跑分。为什么HPCG跑分重要?因为它比Linpack更接近真实应用的场景,更能体现出内存系统的瓶颈。用一个汽车的比喻来讲,Linpack的跑分更像是汽车的百米加速指标,而HPCG更像是到真实的赛道上去跑——这时候就不光是加大马力就能行的了,操控性等其他因素也很重要。

太湖之光在HPCG的测试下只达到了它0.3%的峰值性能,总的算下来还不如天河二号(1.1%)。说明其在 memory 和 network 的性能上存在很大的瓶颈。这其实还是挺不乐观的。

一一一

自超级计算机诞生开始,人们就一直采用Linpack作为超级计算机性能的衡量标准。该基准作为衡量高性能计算能力的黄金标准,自1993年起就成为全球超级计算机500强排名的衡量基础。但如今,田纳西大学诺克斯维尔分校一位杰出的教授Jack Dongarra认为,这套标准将逐渐过时,需要建立一套全新的准则取而代之。Jack Dongarra是Linpack标准的创始人,其同时也负责全球超级计算机500强的排名工作。

     那么到底为何要对标准进行修改?Dongarra认为Linpack已经无法跟上超级计算机需求的步伐,其必须进行更新以保持前进的脚步。 Dongarra在一份声明中表示:“计算机系统的Linkpack排名现在已经不能完全真实地反映应用程序的性能。”因此,Dongarra目前正和他的同事——来自位于新墨西哥州阿尔布开克市的桑迪亚国家实验室的Michael Heroux,共同研究一种新的衡量基准,其有望在下期全球超级计算机500强排行榜公布(即2013年11月)前出炉。

     超级计算机的衡量基准需要经常更新,以保证能够正确反映出计算机使用方式的变化。Linpack标准最成功的一点是,其能够被使用长达30年之久,并且在这过程中其只做了一些细微的更新变动。据说Linpack的最新版本——高度并行计算基准测试(HPL 2.0),其在2008年就以发布,距今已有多年未作更新。

     Dongarra解释称,Linpack衡量的是线性方程计算的速度和效率。随着时间的推移,应用程序对更复杂计算的需求已变得原来越普遍。这些计算要求有高带宽和低延时的环境,并且需要通过不规则模式访问数据。而Linpack无法测量这些更加复杂的计算程序。

     “由于越来越多的应用程序采用微分方程计算方式,这个问题变得愈发重要并亟待解决。如果这个问题得不到解决,那么每一轮全球超级计算机500强排行榜的Linpack性能数据与真实的数据之间的差距将越来越大。”Dongarra如此说道。

     于是,他和他的同事们开始研究一项新式标准,即高度共轭梯度基准测试(HPCG PDF Link)。这项新的测试方法旨在更好的关联现代主流应用程序中的计算和数据访问模式,同时也能提高整体的计算机性能,因为现在人们设计一些超级计算机的目的是为了能够在全球超级计算机500强榜单中名列前某,而非满足现实生活的需求。

     Dongarra表示:“我们现在似乎为了设计一个具有良好Linpack性能的系统,而在实际上对应用程序的设计犯一些选择性错误,或是对系统增加一些不必要的组件或复杂机制。”

     在其发表的新标准声明中,Dongarra和Heroux引用了位于橡树岭国家实验室的泰坦超级计算机作为例子。泰坦系统具有18,688个节点,每个节点都有一个16核、32GB的AMD Opteron(皓龙)处理器和一个6GB的Nvidia K20(图像处理单元)。“泰坦在2012年11月份的全球超级计算机排行榜中位列第一,当时的排行依据标准是高度并行计算基准测试HPL。然而,在泰坦的HPL测试过程中,皓龙处理器仅对测试结果起一部分的作用,所有的浮点计算和数据依靠的都是图像处理单元。相反,应用程序最初在移植到泰坦计算机时,他们通常独立运行在CPU上,并且会选择性的关闭图像处理单元的负载计算已达到加速计算机运行的目的。”

     我们可以看到,采用这种衡量标准的测试结果错误反映了系统的真实性能。当然这点并不足为奇,因为只要存在衡量标准,就存在有人为因素,就可以对这些测试结果夸大化。

     Dongarra希望“这种新式评分系统能够推动计算机系统的设计和实施的方向,以便提高应用程序的真实性能。”同时他还补充说,新的衡量标准将能够适应新兴的技术趋势走向,不再因循守旧。

     也就是说,“Linpack基准测试对高性能计算机群来说,是一个十分合适的衡量标准。其体现出来的发展趋势、对促进计算机性能优化的激励作用以及对整个超级计算机行业的推动作用都是极为重要的。不过,Linpack现在已经无法真实反映出应用程序的性能,我们必须采用新一种标准来对其进行衡量。”

     尽管如此,Linpack的时代还并未过去。HPCG将只是作为全球超级计算机500强榜单排行的另一个可用标准,其将根据“真实的”性能反映对该榜单进行重新排行。当然,最终还是希望HPCG可以完全取代Linpack,正式成为超级计算机的性能测试标准。

     下一期的全球超级计算机500强榜单将在SC2013超级计算机大会上公布,其将同时采用Linpack和HPCG衡量标准。该大会将于今年11月在美国科罗拉多州丹佛市举行。

一一一
TOP500排名的创始人、田纳西大学的Jack Dongarra等人的研究小组在2014年6月26日于德国举行的超级计算机国际会议“ISC'14”上发表演讲,宣布了基于新提出的性能评估指标“HPCG”的超级计算机排名(照片1)。在TOP500中位列第四的日本理化学研究所的“京”在新排名中上升到了第二位。

照片1:HPCG性能评估排名
参加此次性能评估的超级计算机共有15台。第一名是在TOP500中也高居榜首的中国国防科学技术大学的“天河2号”,运行性能为580TFLOPS。在TOP500中,天河2号和京的运行性能相差号3倍多,而在新的性能评估中,京的成绩为427TFLOPS,已经接近天河2号。
与TOP500采用的LINPACK性能评估指标相比,HPCG指标更容易反映出有限元法和流体分析等实际应用的性能。要求处理器的运算性能、内存容量、带宽以及互连性能之间取得平衡。Dongarra表示,“超级计算机大部分实际应用的运行性能应该都介于LINPACK和HPCG之间”(照片2)。

照片2:TOP500排名靠前的超级计算机利用HPL(LINPACK性能评估指标)和HPCG评估时的执行性能差异
在基于HPCG的排名中,实际运算性能与理论运算性能的比例——运行效率在大部分超级计算机中都只有1~3%。其中,配备GPU和Xeon Phi等加速器的超级计算机似乎更处于劣势,运行效率都只有1%出头。而LINPACK性能评估的运行效率一般为50~90%,实际应用的执行效率一般为10~50%。
运行效率方面,京为4.1%,在15台计算机中最高。而美国阿贡国家实验室的“Mira”的架构与京类似、采用IBM的BlueGene/Q,但运行效率只有1.2%,估计是软件调试的差异导致了这种差别。今后,随着各公司和各站点推进面向HPCG的软件调试,2014年11月公布的下次排名应该能更加准确地评估超级计算机的实力。(作者:浅川 直辉,日经技术在线!供稿)

最后冷静下来谈一谈不足之处: HPCG的跑分。为什么HPCG跑分重要?因为它比Linpack更接近真实应用的场景,更能体现出内存系统的瓶颈。用一个汽车的比喻来讲,Linpack的跑分更像是汽车的百米加速指标,而HPCG更像是到真实的赛道上去跑——这时候就不光是加大马力就能行的了,操控性等其他因素也很重要。

太湖之光在HPCG的测试下只达到了它0.3%的峰值性能,总的算下来还不如天河二号(1.1%)。说明其在 memory 和 network 的性能上存在很大的瓶颈。这其实还是挺不乐观的。

一一一

自超级计算机诞生开始,人们就一直采用Linpack作为超级计算机性能的衡量标准。该基准作为衡量高性能计算能力的黄金标准,自1993年起就成为全球超级计算机500强排名的衡量基础。但如今,田纳西大学诺克斯维尔分校一位杰出的教授Jack Dongarra认为,这套标准将逐渐过时,需要建立一套全新的准则取而代之。Jack Dongarra是Linpack标准的创始人,其同时也负责全球超级计算机500强的排名工作。

     那么到底为何要对标准进行修改?Dongarra认为Linpack已经无法跟上超级计算机需求的步伐,其必须进行更新以保持前进的脚步。 Dongarra在一份声明中表示:“计算机系统的Linkpack排名现在已经不能完全真实地反映应用程序的性能。”因此,Dongarra目前正和他的同事——来自位于新墨西哥州阿尔布开克市的桑迪亚国家实验室的Michael Heroux,共同研究一种新的衡量基准,其有望在下期全球超级计算机500强排行榜公布(即2013年11月)前出炉。

     超级计算机的衡量基准需要经常更新,以保证能够正确反映出计算机使用方式的变化。Linpack标准最成功的一点是,其能够被使用长达30年之久,并且在这过程中其只做了一些细微的更新变动。据说Linpack的最新版本——高度并行计算基准测试(HPL 2.0),其在2008年就以发布,距今已有多年未作更新。

     Dongarra解释称,Linpack衡量的是线性方程计算的速度和效率。随着时间的推移,应用程序对更复杂计算的需求已变得原来越普遍。这些计算要求有高带宽和低延时的环境,并且需要通过不规则模式访问数据。而Linpack无法测量这些更加复杂的计算程序。

     “由于越来越多的应用程序采用微分方程计算方式,这个问题变得愈发重要并亟待解决。如果这个问题得不到解决,那么每一轮全球超级计算机500强排行榜的Linpack性能数据与真实的数据之间的差距将越来越大。”Dongarra如此说道。

     于是,他和他的同事们开始研究一项新式标准,即高度共轭梯度基准测试(HPCG PDF Link)。这项新的测试方法旨在更好的关联现代主流应用程序中的计算和数据访问模式,同时也能提高整体的计算机性能,因为现在人们设计一些超级计算机的目的是为了能够在全球超级计算机500强榜单中名列前某,而非满足现实生活的需求。

     Dongarra表示:“我们现在似乎为了设计一个具有良好Linpack性能的系统,而在实际上对应用程序的设计犯一些选择性错误,或是对系统增加一些不必要的组件或复杂机制。”

     在其发表的新标准声明中,Dongarra和Heroux引用了位于橡树岭国家实验室的泰坦超级计算机作为例子。泰坦系统具有18,688个节点,每个节点都有一个16核、32GB的AMD Opteron(皓龙)处理器和一个6GB的Nvidia K20(图像处理单元)。“泰坦在2012年11月份的全球超级计算机排行榜中位列第一,当时的排行依据标准是高度并行计算基准测试HPL。然而,在泰坦的HPL测试过程中,皓龙处理器仅对测试结果起一部分的作用,所有的浮点计算和数据依靠的都是图像处理单元。相反,应用程序最初在移植到泰坦计算机时,他们通常独立运行在CPU上,并且会选择性的关闭图像处理单元的负载计算已达到加速计算机运行的目的。”

     我们可以看到,采用这种衡量标准的测试结果错误反映了系统的真实性能。当然这点并不足为奇,因为只要存在衡量标准,就存在有人为因素,就可以对这些测试结果夸大化。

     Dongarra希望“这种新式评分系统能够推动计算机系统的设计和实施的方向,以便提高应用程序的真实性能。”同时他还补充说,新的衡量标准将能够适应新兴的技术趋势走向,不再因循守旧。

     也就是说,“Linpack基准测试对高性能计算机群来说,是一个十分合适的衡量标准。其体现出来的发展趋势、对促进计算机性能优化的激励作用以及对整个超级计算机行业的推动作用都是极为重要的。不过,Linpack现在已经无法真实反映出应用程序的性能,我们必须采用新一种标准来对其进行衡量。”

     尽管如此,Linpack的时代还并未过去。HPCG将只是作为全球超级计算机500强榜单排行的另一个可用标准,其将根据“真实的”性能反映对该榜单进行重新排行。当然,最终还是希望HPCG可以完全取代Linpack,正式成为超级计算机的性能测试标准。

     下一期的全球超级计算机500强榜单将在SC2013超级计算机大会上公布,其将同时采用Linpack和HPCG衡量标准。该大会将于今年11月在美国科罗拉多州丹佛市举行。

一一一
TOP500排名的创始人、田纳西大学的Jack Dongarra等人的研究小组在2014年6月26日于德国举行的超级计算机国际会议“ISC'14”上发表演讲,宣布了基于新提出的性能评估指标“HPCG”的超级计算机排名(照片1)。在TOP500中位列第四的日本理化学研究所的“京”在新排名中上升到了第二位。

照片1:HPCG性能评估排名
参加此次性能评估的超级计算机共有15台。第一名是在TOP500中也高居榜首的中国国防科学技术大学的“天河2号”,运行性能为580TFLOPS。在TOP500中,天河2号和京的运行性能相差号3倍多,而在新的性能评估中,京的成绩为427TFLOPS,已经接近天河2号。
与TOP500采用的LINPACK性能评估指标相比,HPCG指标更容易反映出有限元法和流体分析等实际应用的性能。要求处理器的运算性能、内存容量、带宽以及互连性能之间取得平衡。Dongarra表示,“超级计算机大部分实际应用的运行性能应该都介于LINPACK和HPCG之间”(照片2)。

照片2:TOP500排名靠前的超级计算机利用HPL(LINPACK性能评估指标)和HPCG评估时的执行性能差异
在基于HPCG的排名中,实际运算性能与理论运算性能的比例——运行效率在大部分超级计算机中都只有1~3%。其中,配备GPU和Xeon Phi等加速器的超级计算机似乎更处于劣势,运行效率都只有1%出头。而LINPACK性能评估的运行效率一般为50~90%,实际应用的执行效率一般为10~50%。
运行效率方面,京为4.1%,在15台计算机中最高。而美国阿贡国家实验室的“Mira”的架构与京类似、采用IBM的BlueGene/Q,但运行效率只有1.2%,估计是软件调试的差异导致了这种差别。今后,随着各公司和各站点推进面向HPCG的软件调试,2014年11月公布的下次排名应该能更加准确地评估超级计算机的实力。(作者:浅川 直辉,日经技术在线!供稿)


运行效率方面,京为4.1%,在15台计算机中最高。而美国阿贡国家实验室的“Mira”的架构与京类似、采用IBM的BlueGene/Q,但运行效率只有1.2%,估计是软件调试的差异导致了这种差别
一一一
HPCG效率应该有很大的改进空间

运行效率方面,京为4.1%,在15台计算机中最高。而美国阿贡国家实验室的“Mira”的架构与京类似、采用IBM的BlueGene/Q,但运行效率只有1.2%,估计是软件调试的差异导致了这种差别
一一一
HPCG效率应该有很大的改进空间
这方面富士通已经一骑绝尘了
不懂,但是最高的4%这啥情况,也太低了吧?
不懂,但是最高的4%这啥情况,也太低了吧?
http://www.ssc.net.cn/files/pdf/45_3.pdf
看来内存性能是大软肋。
只能等解决了3D堆叠内存之后了吧。

其他手段都不治本。
不懂,但是最高的4%这啥情况,也太低了吧?
看例子了吗?在一个GPU为运算主力的超算上关掉GPU……
这实际反映了没有手工优化的程序光靠编译器在超算机上能达到的效果。
可以参考看intel的众核文章来扫盲
Thousand core chips: a technology perspective
https://impact.asu.edu/~mcn/cse5 ... e/borkar-DAC-07.pdf
文章中基本讲明白了3个问题:
1、相同面积下,小核心比大核心,功能简单的核心相比功能复杂的核心,可以取得数量和计算能力上的优势。
    这也就是越来越多的服务器采用几十核、百核甚至千核的原因
2、程序串行度与单簇核心数量和加速比之间的关系
    无论什么样的程序,无论再怎么优化,最终都会有部分内容需要串行处理,也就是众核无法加速的部分。
    当程序串行度越高,核心数量的增加所能达到的加速比越低。

    所以,HPCG实际上,只能说明,在仅有编译器,未做并行优化的前提下,运行标准程序所能达到的性能,有理论计算峰值的百分比。

    在我看来,HPCG更考验单核,或者单线程计算能力。是CPU 单核心或者说异构多核心,单线程计算性能。

但是对于多核体系,HPCG的评价标准只能是一个侧面,并不能直接说明多核本身的好坏。
从程序角度讲,HPCG越高,其需要优化,或者提高标准程序并行度的需求越大。对于软件优化、编译器和人工修改的工作量也越大。

但是还是根据INTEL的千核文章来讲,这是一个矛盾的问题,为了提高并行或者峰值计算能力,就必须在相同的面积内集成更多的核心。
但是集成更多的核心就使得不得不采用更小的核心面积和更少的核心功能。并且考虑到互联结构和片上缓存面积,集成核心数量越多,其核心功能压缩的就越厉害。

那么由此可以分析,HPCG得出的结论是,申微的CPU,为了提高单片集成度,采用了轻量化的核心,为了保证核心数量,仅仅采用了非常小的cache。
保证核心数量,压缩cache,使得整个片子达到了一个高的吞吐率,但是却因此受制于缓存容量过小导致访存能力弱,对于需要频繁访存的程序来说,显然申微不太适合。
对于高计算通量,低访存的程序来说,可以比较好的发挥核心数量多的优势。
http://engine.scichina.com/downloadPdf/rdbMLbAMd6ZiKwDco