当前位置:主页 > 新闻 > 业界动态 > 正文

想把超算用得好,总共分几步? 蚂蟥最怕什么

2018-05-30 15:35 作者:admin

大嘴哥最近看人民日报的新闻,说是“天河”系列超算要升级了,升级之后的系统是原天河系统性能的200倍以上。

200倍,这是一个骇人听闻的数字。当然随后我就这个问题向受访嘉宾求证过,嘉宾表示文章的理解有误,但是可以肯定的是,最新最快的超级计算机正在研发中,而其目标也是超算行业的新的高峰——百亿亿次。

虽然百亿亿次的目标现在看起来还比较遥远,虽然目前我们还只有面向这个目标的“原型机”,但是在未来的某一天,比如2020年或者某个时间点,百亿亿次终将会到来。而面对如此高速而复杂的系统,我们除了要解决“能耗墙”、“应用墙”等难题之外,也面临着如何将系统利用好的问题。

“有没有”和“好不好”,这是一个问题的两个阶段。现在看来,通过天河和神威系列超级计算机,我们已经解决了“有没有”的问题,广州、中科院、长沙、无锡几大超算中心的设备都是行业内首屈一指的平台。但是在“好不好”这个问题上,无论是各大科研院所还是各地的高校机构,恐怕都没有拍着胸脯的保证。

既然叫做“好”,就得有个衡量的标准。就好比我们提到的几大超算中心,许多人都有应用超算的经验,但是机器用得效果如何,则是见仁见智。甚至对于许多人来说,能把应用跑起来,就已经算是胜利了。

超算应用第一步:先把程序理顺了

“我们这些人,讲起基因测序和蛋白质折叠可以头头是道,但是搞计算机,特别是搞清楚那些代码和应用指令,真是太难了”,在我采访过的高校教师中,许多人都有着类似的体会。搞清楚自己的专业知识是理所应当的,但是将这些专业知识转换成计算机能够识别的语言,这显然超出了他们的业务范围。更重要的是,在投身于专业研究的同时,他们还需要抽出大量的时间去进行计算机语言的学习。

这显然不现实,却又无可奈何。我认识的老师中,许多人都是自学了计算机编程的相关知识,也有老师借助于计算机专业同行的支持,完成手头的项目。但是不管怎么说,这都是一件劳心劳力的事情,而且坦率来说这部分内容对于专业的科研应用并非有多大的帮助。能否将项目优化的内容交给专业的人来实现,让程序的优化变得又快又好。我相信,这是许多老师关心的问题。

超算应用第二步:再把程序跑起来

在经一番努力之后,许多老师都已经将原有的专业技术问题转换成了计算机语言和模型,进而可以在超算平台上运行起来。只是在运行的时候他们发现,无论是广州超算或者无锡超算抑或其他平台,想要达到最佳的运行效率还是要对原有的程序进行针对性的优化。

这其中,不同的平台可能采用了不同的加速设备,有些采用的是英特尔的至强融核处理器,有些用的是英伟达的GPU,甚至像无锡超算的神威太湖之光还用的是自主研发的申威平台。因此,对于不同的加速设备,进行优化不仅是程序的需求,更是摆在老师面前的一道难题。当程序真正的实现并行化,让所有的处理器核心都能够高负载运行,这才是超级计算应有的模样。

但是,说起来容易做起来难。那么多行的程序代码,对于大部分不熟悉计算机的老师来说,应该如何优化呢?

最近关注

热点内容

更多