互联网技术 / 互联网资讯 · 2024年1月31日 0

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

近日,瑞士格劳宾登应用科学大学团队历时101天9小时,完成了圆周率小数点后62.8万亿位的计算,比创下吉尼斯纪录耗费的计算时间减少一半!诞生如此多位小数的算法「y-cRuncheR」竟出自高中生之手。

62,831,853,071,750!

圆周率都精确到小数点后62.8万亿位了!

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

近日,瑞士研究团队向圆周率最准确值的世界纪录发出挑战!

目前的吉尼斯世界纪录是50万亿位,于2020年1月29日由搭载了ChudnOVsky算法的y-cRuncheR程序,计算时间长达8个多月。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录 高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

计算时间缩短一半!

瑞士格劳宾登应用科学大学的数据分析、可视化和模能力中心 (DAViS) 于4月下旬首次开始计算。

上一次在阿拉巴马州创下的吉尼斯世界纪录耗时303天,这次瑞士科学家完成任务只用了108天9小时。

时间大大压缩!

而这一切,只需要2个AMD处理器!

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

格劳宾登应用科学大学官网公开了这次项目的硬件设备:

-两个32核AMD Epyc 7542处理器

-1TB内存

-510TB磁盘空间

-38个16TB硬盘,运行速度为7200RpM(其中34个硬盘用于交换空间,4个磁盘用于保存最后的圆周率数字)

-2个SSD用于储存操作系统

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

存储系统结构:黄色部分为带有处理器和磁盘的计算单元;红色部分为38个硬盘

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

黄色部分为RAM,绿色部分为处理器,蓝色部分为机箱风扇

虽说计算量很大,但这个项目是相当环保!

团队计算了项目的能耗,CPU、内存、SSD、38个硬盘,再加上冷却,总共需要约1700瓦!

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

常规的吹风机也才2000瓦

来自一个走得有点远的高中项目

1988年,ChudnOVsky兄弟提出了计算π的公式。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

直到现在,ChudnOVsky公式仍然是计算π任意位数最有效的方法,计算精度平均为每次迭代14.81位。

而诞生如此多万亿位小数的算法「y-cRuncheR」,竟然出自AlexandeR J. Yee在高中时开发的一个算术Java库:「BIgNuMbeR」。

他在2006年算出了欧拉-马斯刻若尼常数小数点后116,580,041位,创造了世界纪录。

后来在2009年,凭借14,922,244,782位小数再次打破纪录。

之后他将程序改名为「y-cRuncheR」,用C和C++重新编写。这个y也正是源自欧拉常数的&gaMMa;。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

后来这位大神去了伊利诺伊大学厄巴纳-香槟分校,先是在2011年利用自己的程序计算出π小数点后10万亿位,打破了世界纪录,然后发表了一篇「在多核系统上对超几何数列进行高精度求和」的研究。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

最新后10位的诞生

7月25日,y-cRuncheR完成了ChudnOVsky公式的核心计算(下图绿色部分),然后计算「逆平方根」部分。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录

此前计算的是分母(绿色部分),为小数点后一万亿位。

8月4日,在计算了92天之后,y-cRuncheR将其十六进制版本的π写到了计算机的磁盘上。数字经过压缩之后只使用了约24TB的磁盘空间(未压缩为48TB),之后再将计算出的π转换为十进制。

8月11日7:30,完成了62.8万亿位数字从十六进制到十进制的转换。数字被分割成63个压缩文件,验证基数转换过程是否已经正确完成。

8月14日9:30,高性能计算平台最终完成了小数点后62,831,853,071,750位的计算,并得到π的最后10个已知数字是:7817924264。

高中生创造的算法「y-cruncher」再次刷新圆周率精度纪录