转载:https://www.toutiao.com/article/6668991177397633544/
2019-03-1813:00·用户771748635602刷新世界纪录!国际圆周率日这天,谷歌工程师成功将圆周率π计算到小数点后31.4万亿位数字,比上一次记录多了9万亿位!
昨天是3月14日,也是国际圆周率日。
在这天,一位谷歌工程师创造了一项世界纪录!
她叫EmmaHarukaIwao,来自日本,她利用谷歌云计算资源,花了121天,成功将圆周率π计算到小数点后31.4万亿位,准确地说,是小数点后31415926535897位,刷新了世界纪录。
EmmaHarukaIwao上一次记录是在2016年创造的,当时瑞士物理学家PeterTrueb用一台电脑配置24个6TB硬盘,花了105天计算到圆周率小数点后的第22.4万亿位。
也就是说,Iwao往后多算了近9万亿位。
Iwao表示,这次的记录是利用云计算完成的,这也是第一次使用云打破吉尼斯世界纪录,证明了谷歌云的基础设施能够可靠地完成长时间、高计算量的任务。
Iwao的团队使用了一个名为ycruncher的程序,该程序由谷歌云平台计算引擎上运行的25个虚拟机驱动。计算过程一共产生了170TB的数据,相当于整个国会图书馆印刷藏品数据量。
Iwao表示:“对于π来说,最大的挑战是它需要大量的存储和内存才能计算出来。”
当然了,现实世界并用不到那么精细的π,NASA将火箭送至太空也仅运用了π小数点后15个数字,而要以单个原子的精度来测量可见宇宙的周长,也只需要算到π小数点后40位数字。
Iwao说:“这一直是我自孩童以来的梦想,打破π小数点后位数的世界纪录。”12岁时,她就试过自己下载软件,试图计算圆周率π。
Iwao在谷歌云官方博客上详细介绍了这次的计算过程,并且,所计算出来的31.4万亿个数字也已经成为开放资源可供下载,欢迎所有想用这些数字做实验的人下载使用。
121天,使用云计算的优势
自古巴比伦人以来,人们就没有停止过计算圆周率π。π是一个无限不循环小数,为一个圆的周长和其直径的比率。公元5世纪时,中国数学家刘徽和祖冲之用几何方法将π精确到小数点后7位,即最经典的3.1415926,保持了1000多年。
我们使用y-cruncher实现了这一壮举,这是由AlexanderJ.Yee开发的一个Pi基准程序,使用GoogleComputeEngine虚拟机群集。计算从2018年9月22日开始到2019年1月21日结束,持续了121天。
31.4万亿的数字比PeterTrueb在2016年11月创造的世界纪录增加了近9万亿。Yee使用用Bellard公式和BBP公式对计算结果进行了独立验证。下面是结果的最后97位:
6394399712531109327698143556561840037499357346099214339552968972122477157772893084273232624739940当然,大多数科学应用都不需要超过几百位的π,不过,这并未阻止科学家们继续计算π;从2009年开始,工程师们已经使用定制的个人电脑来计算小数点后万亿位数的π。事实上,计算更多π数字的竞赛最近才加速,计算机科学家们将其用作测试超级计算机的方法,数学家也在相互竞争。
然而,Chudnovky公式具有复杂性——计算π的常用算法是O(n(logn)3)。通俗地说,这意味着计算数字所需的时间和资源比数字本身增加得更快。此外,随着计算的进行,在潜在的硬件中断或故障中生存下来会变得越来越困难。
我们决定使用云来计算π。使用ComputeEngine,谷歌云的高性能基础设施,比使用专用物理机器有许多好处。首先,ComputeEngine的实时迁移功能允许在基础设施更新时应用程序继续运行。我们在111.8天里运行了25个节点,即2795个机器日(7.6个机器年),在此期间,谷歌云不间断地执行了数千次实时迁移,并且对计算过程没有造成影响。
在云中运行还允许我们将计算出的数字完全作为磁盘快照发布。在不到一个小时的时间内,每天只需40美元,你就可以复制快照、处理结果并处理计算资源。在云计算出现之前,分发如此大的数据集的唯一可行方法是运送物理硬盘。
此外,在云环境中运行还有很多好处:可以选择多种硬件,包括支持AVX-512的最新英特尔Skylake处理器。你可以根据需要对实例进行放大或缩小,并在使用完实例后将其删除,只需要为使用的实例付费即可。
以下是该计划的其他详细信息:
我们的π集群架构集群设计
我们为主计算节点选择了一个n1-megamem-96实例。它是计算引擎上可用的最大的虚拟机类型,在项目开始时提供了IntelSkylake处理器。Skylake一代Intel处理器支持AVX-512,这是512-bitSIMD扩展,可以对512位数据或8个双精度浮点数同时执行浮点运算。
目前,每个计算引擎虚拟机最多可以挂载64TB的永久磁盘。我们使用iSCSI协议远程链接永久磁盘以添加额外容量。节点的数量是根据y-cruncher的磁盘基准测试性能决定的。我们为iSCSI目标机选择了n1-standard-16,以确保计算节点和存储之间有足够的带宽,因为网络出口带宽和永久磁盘吞吐量是由vCPU内核的数量决定的。
计算在以下GoogleCloud节点上完成:
24个较小的节点用于网络附加存储。总计约有240TB的存储空间。
如何获得31415926535897位数字
我们的pi.delivery服务提供了一个RESTAPI来访问web上的数字。
方便你在自己的工作中使用这些数字,我们将计算出的π数字作为快照在谷歌云平台上提供。每个快照都包含一个带有十进制数字的文本文件,你可以根据这些图像创建一个新的永久磁盘。我们提供了XFS和NTFS磁盘格式来分别适应Linux和Windows操作系统。
你需要加入pi-31415926535897GoogleGroup才能获取访问权限。将克隆磁盘保存在项目的us-central1、us-west1和us-east1区域之一,每天大约需要花费40美元。我们将把这些快照保存到2020年3月14日。
来源:全球人工智能
(本文为网络摘录或转载,版权归原作者或刊登媒体所有。如涉及作品版权问题,请联系我们处理。)