在神威太湖之光和天河2号相继夺得TOP500第一名的情况下,日本富士通宣称要建造计算性能是神威太湖之光10倍的超算——Post-K,而且日本富士通还联合ARM为新超算开发处理器。把时间往回拨5年,日本京(K)也曾占据TOP500榜首。在联合ARM解决了处理器的问题后,日本就能建成1000P超算么?
从K到Post-K
其实,日本超算也曾经辉煌过,在2011年日本超算京(K)曾经为例TOP500第一。日本超算“京”采用的处理器是富士通和甲骨文联合研制的Sparc64-VIIIfx,Sparc64-VIIIfx是一款八核心处理器,主频2.0GHz,峰值浮点性能128GFlops,Linpack测试的最大计算性能达到了10.51PFlops,也就是约为神威太湖之光的九分之一,虽然在现在来说,这个成绩已经比较一般了,但在2011年时候,还是称雄一时的,位列TOP500榜首。
此外,在看重内存带宽和延迟的Graph500上,至今都有不俗的表现——2016年7月,在Graph500排行榜上,京连续第三次夺得冠军,基准测试得分为38621GTEPS,排名第二的是中国的神威太湖之光,成绩为23756GTEPS。Graph500对全系统的内存带宽和内存延迟有很高的要求,而计算能力本身已经不影响测试结果了,这种测试偏向于访存密集型运算,在大数据分析以及大规模图表分析等场景下比较有意义。对于像神威太湖之光这样专门针对特殊领域开发的超算,更加侧重于Linpack性能,而在大规模图表广度优先搜索方面非其所长,也不是神威太湖之光的主要应用方向。
由于在财力上投入严重不足,日本在京之后,一直没能拿出值得称道的作品。不过,也许是受了神威太湖之光的刺激,或是其他什么原因,不久前,日本富士通发布PPT,要建设1000P超算,1000P超算是什么概念呢?神威太湖之光是100P超算,也就是说,Post-K的性能将会是神威太湖之光的10倍。
联合ARM弥补处理器的不足
近年来,异构超算已经是大势所趋,什么是异构超算呢?异构计算就是用不同的计算单元组成系统的计算方式,简单的公式可以表示为“CPU+XXX”,在超算上已经广泛采用,比如天河2号就是CPU+众核加速器,天河2A就是CPU+GPDSP,美国超算泰坦就是CPU+GPGPU。从中可以看出,在异构超算已经是大势所趋,而且能够取得更高的性能的情况下,要建设性能强悍的超算,如果没有高性能的加速器显然是不切实际的——众所周知,神威太湖之光之所以能够取得100P的性能,很大程度上得益于申威26010处理器的强悍性能。目前,日本富士通的京是一款同构超算,采用了Sparc64-VIIIfx处理器,在没有自己的众和处理器做加速器的情况下,日本富士通联合ARM开发加速器也就理所当然了。
可能有人会疑惑了,ARM不是做手机、平板用的SOC么,怎么还能做超算?虽然ARM一直在嵌入式芯片上深耕,但也一直试图进入低功耗服务器市场,虽然在Intel至强D的阻击下斩获有限,但确实给那些多年来苦于Intel的厂商另外一个选择。
在几个月前,ARM还发布了矢量扩展架构(SVE)——矢量扩展架构可以提升向量,这意味着可以提升并行度。而向量既有定点也有浮点,面向的是大型数据处理的需要。虽然对于服务器和超算而言,光靠向量还是不行的,但却比没有矢量扩展架构要强。而这次富士通联合ARM,显然是为了解决超算处理器的问题,而且和申威26010和Intel的KNL一样,富士通联合ARM开发的处理器很可能也会是一款众核处理器。
超算的核心技术并不只有CPU
即便有了强悍的处理器,就能轻而易举地建成世界第一的超算么?其实,事情远远不止这么简单。
社会上一直有一种流言,就是只要有足够多、性能足够强的处理器,就能做出世界第一的超算。但实际上,这种观点是非常值得商榷的。超算是一个系统,而并非是处理器的堆砌。
超算系统可以分为软件系统和硬件系统两部分。超级计算机硬件系统主要由运算系统、互连系统、存储系统、维护监控系统、电源系统、冷却系统和结构组装设计等部分组成。运算系统负责逻辑复杂的调度和串行任务,以及并行度高的任务。互连网络将所有计算节点连接起来,使其成为一个整体。存储系统负责数据交换和储存。维护监控系统保障超算不死机、不出错。电源系统包装能源供应。冷却系统帮助超算降温。结构组装设计是将上述系统装载到一起,在保障性能的基础上,实现机柜体积最小。超级计算机软件系统主要包括操作系统、编译系统、并行程序开发环境、科学计算可视化系统等重要组成部分。
由此可见,运算系统、存储系统、互联系统、操作系统、基础库、应用软件等都是超算的重要组成部分,将CPU等同于超算的全部技术的说法显然是非常不科学的。
有了处理器未必就能建成1000P超算
由于日本经济在广场协议之后一直保持在低迷的状态,加上超算本来就属于偏向国家工程的项目,而且相对较少的建造量和昂贵的价格都很难让私人公司通过超算获取高额利润,在研发成本过于高昂的情况下,使得日本NEC、日立等大公司先后退出超算研发领域,唯有富士通还在苦苦支撑,而且日本政府的支持相当不给力——京的研发经费一度遭到冻结,直到数位日本科学家联名向时任日本首相鸠山由纪夫上书陈明厉害关系,京的研发经费才解冻......对于向政府谋取经费以支持新超算研发的科学家,日本华裔女政客莲舫(中国台湾籍,原名谢莲舫,就是在11月24日在参议院《跨太平洋伙伴关系协定》(TPP)特别委员会上对安倍晋三穷追猛打的那位)甚至反问道:“当老二有什么不好?”
正是在这种大环境下,使得在过去几年,中国超算技术突飞猛进,而日本却没有制造出比京更好的超算。要知道,技术发展有其规律,是一步一个脚印迭代演进的,大跃进式一口吃成一个胖子的做法并不可取。
正是在过去几年缺课太多的情况下,哪怕日本富士通可以联合ARM解决处理器的问题,但也要面对互联、存储、软件等一系列问题。就以互联网络来说,由于超算的计算节点之间传输的数据量巨大,延迟要求严格,当互联网络拖后腿的情况下,就会造成数据拥堵,大幅降低超算整机系统效率。而且超算的规模越大,对互联网络的要求也就越高。正是因为高速互联网络的重要性,美国早就将高速互联网络列入对中国技术封锁的名单。而日本在Post-K之前,K的计算性能只有10P,从10P迅速跨越到1000P,如果不谋求从美国获取技术,这对于富士通来说未必不是一个挑战。
日本政府和理化所的表态相对理智现实
事实上,相对于富士通1000P超算的PPT,日本文部科学省和日本理化所的表态则谨慎的多,在2016年,日本文部科学省发表了后续基本设计方针:“在发展方针中,日本文部科学省不再追求世界第一的计算速度,而是将目标由加快计算速度转向了加强节能及便捷功能”。在美国盐湖城SC16全球超算大会期间召开的第14届HPC Connection Workshop中外超算高峰论坛(HPCC)上,日本理化所Mitsuhisa Sato透露了日本发展E级超算的“旗舰2020计划”,将在2017年4月投入运营Post K超级计算机,其系统峰值性能约为25P, 1000P超算的升级计划被排到了2020年。值得关注的是Post K的功耗为3.6兆瓦,性能功耗比接近神威太湖之光的水平,确实将日本建造最节能超算的计划付诸于实践。但从曾经追求计算性能最强超算,到如今的追求最节能超算,想必日本从事超算建设的工程师们心中除了无奈只有苦笑吧。
在富士通以前,也有很多科技公司的PPT也非常漂亮,PPT上的技术指标更是华丽无比,但产品上市后实际表现却判若两人。因此, PPT上的纸面技术指标是一回事,能不能把1000P超算造出来就是另外一回事了。退一步说,即便日本将来真的建成了1000P的Post-K超算,但技术上的大跃进必然会拉长研发周期,使日本的1000P超算将会晚于中国的1000P超算问世。