百亿亿次计算是什么?每秒运算一百亿亿次的超级计算机
百亿亿次计算(Exascale Computing),也称 E 级计算,是指每秒能够完成至少 10 的 18 次方次双精度浮点运算的计算能力。10 的 18 次方就是一百亿亿,计算机领域用 exaFLOPS(EFLOPS)来表示这个单位,其中 FLOPS 是每秒浮点运算次数,这里的运算一般按 IEEE 754 标准的 64 位双精度计算。它是衡量超级计算机性能的一个重要里程碑。
这有多快
一百亿亿次是一个难以想象的数字。打个比方:如果全世界 80 亿人每个人每秒都完成一次计算,那么要不间断地算上四年多,才能完成一台 E 级超级计算机一秒钟的工作量。超级计算机的性能是一个数量级一个数量级地提升的:上世纪 90 年代末,超级计算机进入了每秒万亿次(T 级);2008 年,美国的“走鹃”(Roadrunner)首次突破每秒千万亿次(P 级);又经过十多年的发展,才迈进了百亿亿次的门槛。
里程碑
2022 年 5 月,美国橡树岭国家实验室的 Frontier 超级计算机,在全球超级计算机 TOP500 排行榜中,以超过 1.1 EFLOPS 的实测性能登上榜首,成为第一台公开认定正式突破百亿亿次门槛的超级计算机。它由 AMD 的处理器和 GPU 构成。此后,美国阿贡国家实验室的 Aurora 和劳伦斯利弗莫尔国家实验室的 El Capitan 等也相继达到了这一级别。中国也研制了具有很强计算能力的超级计算机。实现百亿亿次计算面临着巨大的工程挑战,其中最突出的是功耗:如果按照早期的技术简单堆叠,一台这样的机器需要一座发电站来供电,研究者花了大量的精力来提高每瓦电力能完成的计算量。
用来做什么
E 级超级计算机被用于解决人类面临的最复杂的计算问题:更精细的气候和天气模拟,预测极端天气和长期的气候变化;新药研发中的分子模拟;新材料的设计;核聚变和核物理研究;宇宙学和天体物理的模拟;以及大规模的人工智能训练。
和 AI 算力的区别
需要注意的是,AI 领域常说的“百亿亿次”往往指的是低精度运算,比如 AI 训练常用的 16 位、8 位甚至更低精度的计算。同一套硬件,低精度运算的速度可以比双精度快很多倍。所以一些 AI 计算集群宣称的“数十 EFLOPS”的 AI 算力,和超级计算机排行榜上按双精度衡量的百亿亿次,不是同一个口径,不能直接比较。