科学家如何利用 NVIDIA GPU 集群探秘银河系?
2019-03-02 09:00
最近,天文学家和天体物理学家开始转向借助GPU和AI的计算性能,力求从望远镜拍摄到的图像中获取更多信息。
来自加州大学圣克鲁兹分校和普林斯顿大学的一支研究小组一直在挑战这个领域极限。该小组由加州大学圣克鲁兹分校的 Brant Robertson 和 NASA Hubble 奖学金获得者 Evan Schneider 领头,专注于优化NVIDIA GPU和深度学习工具的使用,从而适应大型计算的要求。
他们的目标是扩展其计算性能,进行更多精确的流体动力学模拟,从而进一步了解星系的形成方式。
在Titan 上运行大型模拟
小组一开始就将工作负载从CPU转移到了GPU之上。如此一来,他们可以测量进出3D网格晶胞面的物质,就好像能够同时解开多个魔方一样。
借助其中的CUDA平台,研究小组能够将一系列网格传输到GPU以进行必要的计算,从而获得更为详细的模拟结果。
在释放了该系统的大部分性能后,他们又把视线锁定到了一台更强大的NVIDIA GPU集群设备上,即位于美国能源部橡树岭国家实验室的Titan超级计算机 。但是,要想执行分辨率更高的模拟,他们需要功能更强大的代码来驾驭Titan所搭载的16,000余台Tesla GPU的强劲性能。
寻求答案
Schneider是这项任务的最佳人选,在攻读研究生时她是Robertson学生,现在是普林斯顿大学的博士后研究员。Schneider编写了一段由 GPU 加速的流体动力学代码,名为CHOLLA,即“Computational Hydrodynamics On paraLLel Architectures”(并行架构上的计算流体动力学)。
Robertson认为,CHOLLA将帮助科学家回答之前无法回答的问题。例如,M82是一个备受天文学家关注的星系,以惊人的恒星形成率和强大的星系风而著称,如果将这段代码应用于M82,科学家们可以进一步了解恒星的形成方式。
“星系风是如何到达那里的?星系风是由什么造成的?星系风是怎样控制星系的质量的?这些都是我们想要研究的问题,但这些问题计算起来十分困难”,Robertson说道,“Evan是第一个能够以任何精确度解决这一问题的人”。
利用几年前编写出的CHOLLA代码,Schneider 和 Robertson 得以在Titan上执行1亿个核心小时 (core hour) 的运算。该代码的独特之处在于,它能够在GPU上执行所有运算,这让研究小组可以在其实验室内的NVIDIA DGX和DGX-1深度学习系统上进行复杂的模拟,然后再将模拟传输到Titan上进行扩展。
“你希望利用GPU的浮点运算性能,而不想花费时间等待信息在GPU之间来回传递”,Robertson说道,“尽可能花更多的时间在GPU上执行运算,这就是你想实现的结果”。
把目光投向 Summit
CHOLLA能够扩展大量GPU,让研究小组可以对5500亿个晶胞进行测试计算,Robertson将其称为“天体物理学中有史以来最大的流体动力学模拟之一”。
另一位学生Ryan Hausen开发了一款名为Morpheus的深度学习框架,该框架使用原始的望远镜数据对星系进行分类,从而为更具雄心的研究项目铺平了道路。借助这一框架,他们有望在一台DGX系统上针对数十亿个星系处理大型测量结果。
除此之外,另一项计划也在规划当中——Robertson希望能够在Summit上进行运算,这是世界上性能最强大的超级计算机,由NVIDIA Volta GPU提供动力支持。他相信,与使用Titan相比,借助Summit的拓展GPU内存,CHOLLA可以使他们取得更大的研究成果。
“NVIDIA GPU的计算性能让我们可以执行过去不可能实现的数值模拟”,Robertson 如是说,“接下来我们打算利用 NVIDIA GPU挑战更多可能”。