【并行计算程序是如何解决高性能计算系统复杂性日益增加的问题?】

       在弗罗多,走出家门是很危险的。当你踏上大路时,如果你不迈稳脚步,真不知道你会被带到
哪里去。
                                               ——比尔博.巴金斯《魔戒》


       我无法预见并行计算之旅会将我们带向何方。使用“我们”这个词是因为多年来有许多同事与我共同走过这段旅程。我的并行计算之旅始于20世纪90年代初,当时我还在新墨西哥大学。我写了一些可压缩流体动力学代码来模拟激波管实验,并在我能接触到的系统上运行这些代码。结果,我和Brian SmithJohn Sobolewski以及Frank Gilfeather被要求提交一 个关于高性能计算中心的案。最终我们赢得了这笔资金,并于1993年建立了毛伊高性能计算中心。在这个项目中,我负责在位于阿尔伯克基市的新墨西哥大学开设课程,并带领20名研究生开发并行计算程序。
       20世纪90年代是并行计算的形成时期。我记得并行虚拟机(PVM)的创始人之一、MPI 标准委员会成员AI Geist的一次谈话,他谈到了即将发布的MPI标准(1994年6月)。他说MPI的前景不佳,因为它过于复杂。他对其复杂性的看法是正确的,但尽管如此,MPI 还是迅速发展起来,在几个月内,几乎所有并行应用程序都在使用它。MPI 成功的一个原因是, 有一些实现已经准备就绪。
Argonne 一直在开发Chameleon,这是一个可移植工具,可以在当时的消息传递语言包括P4、PVM、MPL和许多其他语言之间进行翻译。该项目很快被更改为MPICH,成为第一个高质量的MPI实现。 十多年来,MPI成为了并行计算的代名词。几乎每个并行应用程序都是建立在MPI库之上的。
      现在让我们快进到2010年,随着图形处理器的出现。我偶然看到Dobb博士关于使用kahan sum
来补偿GPU上唯一可用的单精度算法的文章,我认为这种方法可能有助于解决并行计算中一个长
期存在的问题,即数组的global sum取决于处理器的数量。为了测试这一点,我想到了我儿子Jon
在高中时写的一个流体动力学代码。他测试了问题中的质量和能量是否随时间的变化而保持守恒,
如果程序的变化超过了规定的量,程序就会停止运行并退出。当他在大一的春假从华盛顿大学回家
时,我们尝试了这种方法,并惊喜地发现质量守恒有了很大的改善。对于产品代码,这种简单技术
的影响被证明是非常重要的。《并行计算与高性能计算》5.7节将介绍用于并行global sum的增强精度版求和算法。


       2011年,我与Neal Davis、David Nicholaeff和Dennis Trujillo三个学生组织了一个暑期项目,
看看我们是否可以得到更复杂的代码,比如在GPU上运行自适应网格细化(AMR)和非结构化任意
拉格朗日-欧拉(ALE)应用程序。我们的最终结果是CLAMR, 一个完全在GPU上运行的AMR迷你应用程序。应用程序的大部分都很容易移植。最困难的部分是确定每个单元的临近单元。最初的
CPU代码使用了k~D树算法,但是基于k-D树的算法很难移植到GPU.上。这个夏季项目开始两周
后,拉斯康查斯大火在洛斯阿拉莫斯的山上爆发,整个小镇的居民被疏散。学生也被疏散了,于是我们去了圣达菲。在疏散期间,我在圣达菲市中心与David Nicholaef见面,讨论GPU端口的问题。他建议我们尝试使用一种哈希算法代替基于树的代码来寻找临近单元。当时,我看着大火在小镇上燃烧,想着它是否已经烧到我家了。尽管如此,我还是同意尝试一下, 哈希算法最终让整个代码在GPU上成功运行。这种哈希算法是由David和我当时还在上高中的女儿Rachel,及我自己完成的。这些哈希算法构成了第5章中介绍的许多算法的基础。
        在接下来的几年里, Rebecka Tumblin、Peter Ahrens和Sara Hartse开发了压缩哈希技术。当Gerald Collom和Colin Redman高中刚毕业的时候,他们解决了在CPU和GPU上重新映射操作的压缩哈希问题。GPU并行算法的这些突破使得许多科学应用程序在GPU上运行的障碍逐渐瓦解。
       2016年,我和我的联合创始人Hai Ah Nam和Gabe Rockefeller 一起启动了洛斯阿拉莫斯国家实验室(Los Alamos National Laboratory, LANL)并行计算暑期研究实习(PCSRI)项目。并行计算程序的目标是解决高性能计算系统复杂性日益增加的问题。该项目是一个为期10周的暑期实习,包括各种并行计算主题的讲座,随后是一个由洛斯阿拉莫斯国家实验室工作人员指导的研究项目。参加这个暑期项目的学生有12到18名不等,许多人把它作为他们职业生涯的跳板。通过这个项目,我们一直致力于解决并行和高性能计算面临的最新挑战。
                                                                                                     ——Robert Robey

 

节选自《并行计算与高性能计算》一书作者序

想了解 《并行计算与高性能计算》更多内容,请点击:

多快好省,购物上京东

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值