在美国全面封锁之前的几天, Daniel McDonald 就意识到他毕生的事业便是他用以抗击新冠肺炎的独特工具。
他的团队研制的检测试剂盒即将开始大规模生产,用于开展新冠病毒相关研究。
McDonald 是 American Gut 项目和 Microsetta Initiative 的科研总监,同时是新兴研究领域——微生物组的负责人。微生物组是构成我们体内及周围大部分生命的单细胞生物的集合。他们所研制的试剂盒是首个能够从保存在室温下的人类粪便中安全提取并运送样本的试剂盒。
试剂盒的设计初衷是服务微生物学研究。但是, McDonald 和他的同事们意识到他们需要将注意力转移到新冠肺炎疫情上。
通过仔细的筛选,样本帮助揭示变异的冠状病毒的传播模式。对于公共卫生专家来说,这些信息对于减缓感染人数增长而言像黄金一样宝贵。
该团队还希望从参与者那里收集到足够的数据,帮助研究人员解开另一个谜团:为什么这种病毒会使一部分人患上重病,而有些人却根本没有症状?
作为加州大学圣地亚哥分校 Rob Knight 实验室 50 人研究团队中的一员, McDonald 说:“团队里的每个人都为能挽救生命而感到非常兴奋,我们很荣幸能与 RNA 领域以及其他相关领域的专家紧密合作。”
在恰当的时间“踩下油门”
正当这些试剂盒的研发取得显著进展,团队又被幸运女神眷顾了。
圣地亚哥超级计算机中心的首席科研软件开发人员 Igor Sfiligoi 将该团队性能欠佳的最新版 UniFrac 软件的移植到了 NVIDIA GPU 中,用于分析微生物组,并取得了令人震惊的结果。
在一组 NVIDIA V100 Tensor Core GPU 上不到两个小时就可以完成对 113,000 个样本的基因分析。但同样的工作在一台服务器集群系统上则需要 1300 个 CPU 小时,单个 CPU 也需要约 900 个小时,由此实现了 500 倍的加速。使用 8 组 V100 GPU 则能将时间压缩到不到 15 分钟。
该端口还帮助个体研究人员在 9 个小时内完成分析工作,这得益于工作站中配备了 NVIDIA GeForce RTX 2080 Ti 。如今,一个在服务器 CPU 上运行需要 13 个小时的数据集,在搭载了 NVIDIA GTX 1050 GPU 的笔记本电脑上只需一个多小时即可完成。
McDonald 说:“对于那些无法使用高性能计算机的人来说,这是个巨大的改变。比如,个体研究人员或许可以将 UniFrac 当作一种用于即席查询的搜索工具来使用。”
在实验室中六组 V100 GPU 的赋能下,该团队也可以着手分析不断扩容的数据集。
McDonald 表示, Sfiligoi 对 113,000 个样本的研究可以说达到了迄今为止微生物评估的最大规模。该实验室目前已经存储约 30 万个公开样本,“用不了多久,我们拥有的样本数就会超过一百万个。”他补充道。
GPU 通过三种方式加速 UniFrac 运行
三种技术是加速的关键。 OpenACC 加速了 Striped UniFrac 代码中的许多紧凑循环, Sfiligoi 随后应用了内存优化。浮点数运算从 64 位降到 32 位可提供额外的加速,且不会影响所需的实验精度。
Sfiligoi 在几天之内完成了 OpenACC 端口的初始设置。随着团队对 UniFrac 的计算和内存存取需要有了更好的了解, Sfiligoi 又在几周内推进了其他优化工作。
Sfiligoi 在 GTC Digital 会议上表示,这项工作的完成源于团队付出的巨大努力。他所在的团队利用部署在公有云上的、具有百万兆级运算性能的 GPU 来进行天文学研究。
NVIDIA 正在与 Sfiligoi 合作完成他的下一个项目。他的目标是将 UniFrac 上实现的 GPU 优化集成到微生物学家日常使用的软件中。
纯 CPU 系统难以应对数据洪流
与此同时, McDonald 和他的团队需要调整 UniFrac 以处理病毒数据。如何将产生的大量数据转化可处理的、组织良好且无误的数据集,是他们面临的艰巨挑战。
在技术方面,该团队需要大量的存储和计算性能。一天内待分析的微生物组可达 100 万个,分析如此数量庞大的微生物组可能需要 20pb 的存储空间,年 CPU 周期数可超 1 亿。
McDonald 说:“我很乐意看到 GPU 推动更多事物的发展。”
长期以来,冠状病毒家族一直影响着人类和家畜,由此,这项工作有着广泛的潜力。
“地球上的每个人都以某种方式感受到了它们对生产力的影响。现在,我们可以开始了解如何更好地控制这个历史悠久的病毒家族了。”他补充说。
利用 NVIDIA GPU 和高性能计算抗击新冠肺炎疫情是一个广泛的项目研究网络,圣地亚哥的项目只是其中之一。
位于亚洲、澳大利亚、欧洲和美国的全球 30 多个超级计算中心参与了这项工作。 仅 COVID-19 高性能计算联盟中就拥有 30 多个活跃项目,包含 41,000 组 GPU ,具备 420 petaflops 的运算能力。