在不到18个月的时间里,密歇根大学的一个团队采用GPU,为一个基于复杂数学的程序实现了20倍的提速。该程序为量子科学奠定了基础。
Vikram Gavini 的实验室以创纪录的速度,跨越了微观世界的一座重要里程碑。
这支由三人组成的密歇根大学团队创建了一个使用复杂的数学来深入观察原子世界的程序。该程序将推动许多科学领域的发展,以及多重领域的设计工作——从更轻的汽车到更高效的药物。
凭借 GPU ,该团队开放源码库中的代码在短短18个月内实现了20倍速度提升。
通往Summit的旅程
2018年年中,当该团队正准备发布一个在 CPU 上运行的代码版本时,他们收到了橡树岭国家实验室 GPU 黑客马拉松的邀请。全球最快的超级计算机之一—— Summit 就位于该实验室。
机械工程和材料科学教授 Gavini 表示:“我们当时的想法是看看我们能实现什么。”
该实验室的博士后 Sambit Das 参加了这场为期五天的活动。他认为:“我们很快意识到我们的代码可以充分发挥GPU大规模并行处理的能力。”
在活动结束前, Das 和另一位实验室成员 Phani Motamarri 将代码转移到 CUDA 及其库中,实现了5倍速度提升。这也让他们意识到,未来能实现的还有更多。
6个月内实现从5倍到20倍的速度提升
在接下来的几个月里,该实验室继续对该程序进行调优,使其能够对1万个镁原子中的10万个电子进行分析。到2019年初,该程序已经可以在 Summit 上运行。
随着 Summit 的节点数量不断增加,该实验室采用迭代法,在节点上运行越来越多的代码。截止4月,该实验室使用了该系统27,000个 GPU 中的大部分,实现了近 46 petaflops 的性能,达到了之前的20倍。
对于一个基于密度泛函理论(DFT)的程序来说,这是一个前所未有的结果。密度函数理论是一项解释亚原子粒子之间量子相互作用的复杂数学理论。
适用于高难度算法的分布式计算
DFT 算法的复杂性和基础性使其目前占用了所有公共研究计算机四分之一的时间。在被引用次数最多的100篇科学论文中,有12篇是 DFT 为主题的。该计算还被用来分析从天体物理学到 DNA 链的一切。
最初,根据该实验室的报告,该程序使用了 Summit 的顶尖理论性能的近30%,这是一个异常高的效率。相比之下,大多数其他 DFT 代码除了能够使用数个处理器之外,很难实现进一步的扩展,因此就连效率报告都没有。
Gavini 表示:“能实现这一前所未有的效率令我们感到非常高兴。”
声名鹊起
2019年底,该团队被提名为戈登贝尔奖的入围者。这是该实验室首次参加这一“高性能计算领域诺贝尔奖”的评选。
Gavini 表示:“这为我们的实验室和大学带来了很高的知名度,我认为这次努力还只是一个开始。”
事实上,自评选以来,实验室在 Summit 上,将代码的性能提升到了 64 petaflops ,效率亦达到38%。并且该实验室已经在探索在其他系统和应用上的使用。
寻求更多的应用和更高的性能
最初,这项工作被用于分析镁。这种比当今汽车和飞机使用的钢和铝轻得多的金属有望大幅节省燃料。去年,该实验室与另一团队合作,研究电子在 DNA 中的移动方式,这项工作可以帮助其他研究者研发出更有效的药物。
接下来重要的一步是在 Perlmutter 上运行代码。这是一台使用最新 NVIDIA A100 Tensor Core GPU 的超级计算机。根据Das的报告,基于A100 GPU对TensorFloat-32的支持,与 Summit GPU 相比,这台计算机目前已经实现了4倍速度提升。TensorFloat-32 是一种既能提供快速结果,又能实现高精度的混合精度格式。
与其他 DFT 代码相比,该实验室程序已实现100倍的速度提升,但 Gavini 并没有就此止步。他已经在考虑在 Fugaku 上测试它。Fugaku 是基于 Arm 系统的全球最快的超级计算机。
他表示:“眼下的收获总会令人欣喜,但‘路漫漫其修远兮,吾将上下而求索’。这次的成果也是我们新征程的开始。”
原文标题:借助数学的力量:密歇根团队破解亚原子世界的密码
文章出处:【微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。
原文标题:借助数学的力量:密歇根团队破解亚原子世界的密码
文章出处:【微信号:NVIDIA-Enterprise,微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
NVIDIA Air助力测试和验证迁移工作 确保无故障迁移
摩尔线程宣布7家官方授权核心分销商合作伙伴
你知道怎么写简单的C代码?
ACCodeSnippetReposito Xcode代码段的管理插件

浮点数存储规则
Oracle HCM云平台如何满足客户个性拓展需求
NVIDIA如何帮助新兴市场开发者建立和扩展AI项目
详解GPGPU与人工智能
使用NVIDIA CloudXR 3.2打造可扩展的沉浸式体验
TensorRT条件用于实现网络子图的条件执行
请问CH32V103的引导代码是可以修改的吗?
信号采集处理系统让你观察膈神经放电现象
什么是线程安全 如何实现线程安全代码
工控服务器是什么,它能干什么,它的应用领域有哪些
小白福利!教你用低代码实现一个简单的页面跳转功能
短短几行代码,就能画出如此绚烂的图像
Zenotech公司使用NVIDIA GPU对风电场进行模拟
微软低代码平台Power Apps Portals进一步保障业务数据的安全合规
如何用低代码实现一个简单的页面跳转功能
摩尔线程MTT S系列GPU完成产品兼容相互认证
英特尔推出采用开源软件的行业领先数据中心GPU
使用NVIDIA RTX分支优化光线追踪图形
NVIDIA TensorRT支持矩阵中的流控制结构层部分
国产GPU公司智绘微电子完成千万元Pre-A轮融资
TensorRT是如何进行工作的
TensorRT的Python API的基本用法和接口解析
TensorRT的C++接口解析
OpenHarmony仓库大整理 可以指定系统类型下载对应代码
【开发教程11】开源蓝牙心率防水运动手环- 整机功能代码讲解
巴延兴:从主导多个SIG组到“代码贡献之星”,我是如何做到的?
请问在RK3399pro中间计算时能否调用GPU的一些现成数据库或函数来计算
Neptune软件使用指南(最新master代码)
使用DevEco Studio低代码开发的过程分享
活动报名|OpenHarmony 战“码”先锋,PR 征集令

评论