发展高性能计算需要思考的几个战略性问题
专家简介:
李国杰,1943年5月生于湖南邵阳,计算机专家。中国工程院院士,发展中国家科学院院士。现任中科院计算所首席科学家。主要从事计算机体系结构、并行算法、人工智能、计算机网络、信息技术发展战略等方面的研究,主持研制成功曙光一号并行计算机、曙光1000大规模并行机和曙光2000/3000超级服务器,领导计算所研制成功龙芯CPU,为发展我国高性能计算机产业做出了突出贡献。
高性能计算机是我国科学技术快速发展的标志性成果,已成为继高铁之后的又一张“中国名片”。一个发展中国家在尖端计算技术上能迅速走到世界前列,这是一件了不起的事情。对我国高性能计算机的现状,有人极力赞美——“中国超级计算机技术实力碾压美国”的醒目标题曾在网上刷屏;也有人表示疑虑,认为国产的超级计算机是“用航母运载沙丁鱼”。对发展高性能计算的目标和策略选择,学术界也有不同的看法。正确的战略决策来源于对国情和技术发展趋势实事求是的分析,而不是玩弄技术新名词的“纸上谈兵”。习近平总书记指出:“坚持实事求是,最基础的工作在于搞清楚‘实事’,就是了解实际、掌握实情。这就要求我们必须不断对实际情况做深入系统而不是粗枝大叶的调查研究,使思想、行动、决策符合客观实际。”在攀登计算机领域“珠穆朗玛峰”的关键时刻,我们需要遵循习近平总书记的指示,对我国高性能计算机的这件“实事”做深入系统的调查研究,做出符合客观实际的决策。
在讨论与高性能计算有关的战略问题之前,先要明确高性能计算机究竟是指什么。高性能计算机并没有严格的定义,人们在不同的场合讲的“高性能计算机”的含义可能也不一样。国际上有一个为世界上最高性能的500台计算机排名的组织,最近一次排名是2019年6月,第500名的峰值性能是(2100万亿次浮点计算每秒)。在这个组织的网站上,高性能计算机(High Performance Computer,HPC)和超级计算机(Super Computer)是混用的,不加区分地当成一种计算机类型。也就是说,目前他们把超级计算机(高性能计算机)圈定在Pflops级(千万亿次浮点计算每秒)计算机水平。本文讨论的重点也是Pflops级以上的超级计算机。企业在销售计算机时,高性能计算机是指区别于个人电脑(PC机)与低档服务器的计算机,往往认为价格在10万元人民币以上的就是高性能计算机,而把超级计算机看作是最高档的几百台高性能计算机。
请注意,本文讨论“高性能计算”,包括硬件、软件、算法、应用、产业生态环境等,不仅仅限于构建“高性能计算机”字面之差反映不同的战略思维。高性能计算本身就是国家的战略重器,涉及的战略性问题很多,由于篇幅有限,下面列出几个社会各界较为关心的战略性问题,稍做说明,供读者参考。
发展高性能计算的目的究竟是什么?
高性能计算可以应用于核模拟、密码破译、气候模拟、宇宙探索、基因研究、灾害预报、工业设计、新药研制、材料研究、动漫渲染等众多领域,对国防、国民经济建设和民生福祉都有不可替代的重大作用,发展高性能计算就是要让这巨大的作用发挥出来。同时,高性能计算也是中美大国博弈的重要领域,每一次较量的胜利都会给国人极大的激励,有力增强了民族自豪感和凝聚力。因此,发展高性能计算意义重大。
我国发展高性能计算需要正确处理世界排名与实际效用这两者的关系。其实,我国与美国在高性能计算领域的博弈,主要是因为该领域研究对国防、经济和民生的实际效益,而不是某一次排名是否第一。只要认清楚这一点,两者就统一了。如果不重视实际应用绩效,而只把排名第一作为“政治正确”的标志,可能会产生误导。
如何全面部署计算机科研与产业的发展?
如果把高性能计算机理解成超级计算机,其在整个计算机产业中占比并不大。超级计算机主要是用来解决其他计算机解决不了的挑战性问题,采用几万个甚至百万个以上的处理器并行协同解决一个大问题。在实际应用中,更多的场合是需要同时响应大量的任务请求,即不是要算得快而是要算得多。这一类应用需要高通量计算机,主要由云计算中心和大数据中心部署。目前银行等金融行业还在大量采购美国IBM的主机系统(Mamframe),他们买的主要不是计算速度,而是可靠性和软件的兼容性,业界称为高可靠或高可用系统。我国的计算机产业要从中低端向高端发展,因此我们的任务不仅仅是发展超级计算机,而且包含发展高端计算机。