美国谷歌6月8日(当地时间)宣布,利用谷歌成功计算出100兆位数的圆周率,刷新了世界纪录。该公司在2019年也计算出了31.4万亿位数的圆周率,创下了当时的世界纪录,但到2021年,格劳宾登应用科学大学的科学家计算出了62.8万亿位数的圆周率,这一纪录被打破。

计算圆周率不仅需要高性能的CPU,还需要记录CPU的存储设备和交换数据的网络性能。质量也很重要,在计算、存储、传输的过程中,1bit的错误都是不允许的。

为此,该公司为此次挑战构建了以下环境。

  1. 计算:采用128个vCPU、864gb内存的“n2-highmem-128”实例。操作系统是Debian Linux 11。
  2. 存储:临时存储估算554tb。由于能够连接到单个虚拟机的最大持续盘容量为257tb,因此除了计算节点之外,还设计了一个由32台存储节点(“n2-highcpu-16”例子)组成的集群,提供总共64个iSCSI目标。
  3. 网络:使用“n2-highmem-128”支持的100gbps外向带宽。2019年仅为16gbps,短短3年时间带宽增加了约6倍。此次针对网络存储读取和写入的数据量合计为82.0PB,比2019年的19.1PB大幅增加。

这个计算需要几个月的时间,并且提前预测了执行时间会发生几天或几周的变化,即使性能略有差异。因此,设定的调整变得严格,但项目被分配到操作系统、基础设施和要执行的应用程序,并且各种组合是可能的。

因此,建立了一种叫做“Terraform”的机制来使用,在短时间内进行测试组合。这个计算项目耗时 157 天(大约 5 个月),但如果没有这样的设备,它可能需要大约 300 天,大约是两倍的时间。

此外,由于计算需要很长时间,因此采取了诸如使用 shell 脚本每两天自动备份一次等措施。不仅是根据数量来决定,而且还旨在通过发送磁盘分配来降低存储成本,直到最终结果写入两个 50TB 磁盘。

另外,验算是用被称为Bailey-Borwein-Plouffe公式的与计算时不同的算法实施的。实际计算中使用的脚本在“GitHub”上公开。全位数的结果可以在演示网站上确认。

该公司表示,新记录证明了更快的 Google Cloud 基础架构、“Compute Engine”安全和可定制的计算服务以及最近添加和改进的“Compute Engine N2”机器系列。它具有 100Gbps 外向带宽等功能,“ Google 虚拟网卡”和平衡的永久性磁盘。