新紀錄!谷歌 Cloud 計算出圓周率“ π” 第 100 萬億位數

MissD發表於2022-06-18

6 月 8 日,谷歌 Cloud 官方部落格發文宣佈了一項新紀錄 —— 通過谷歌雲已計算出圓周率“π”小數點後第 100 萬億位數!(文章末尾附有此次計算結果的最後 100 位數字)

相信大家都是在小學時候就知道圓周率“π”,但當時的我們只知道這個無限迴圈的數學常數約等於 3.14 或 3.1415926,最多能背到小數點後幾位。殊不知,最近幾年這個無理數已經隨著技術的發展被科學家們進行了更精密的計算。

據瞭解,早在 2019 年穀歌就計算出“π”小數點後第 31.4 萬億位數,這在當年打破了世界紀錄。然後,在 2021 年,瑞士 Grisons 應用技術大學 (University of Applied Sciences of the Grisons—UAS Grisons)的科學家們又計算了 31.4 萬億位常數,使其總數達到 62.8 萬億位小數。

此次,是谷歌雲端計算第二次對“π”這個數學常數的破紀錄計算,且僅在三年內數字就增加了三倍,這一成就也驗證了谷歌雲基礎設施方面的飛速發展。

谷歌 Cloud 計算背後的底層技術

據谷歌方面介紹,實現這一切其背後的底層技術,就是計算引擎 —— 谷歌雲的安全和可定製的計算服務,以及它最近的幾個新增和改進:包括 N2 雲端計算引擎系列、虛擬 NIC @ 100 Gbps 出口頻寬,以及平衡持久磁碟(balanced Persistent Disks)。

下面為此次谷歌雲端計算在“π”小數點後第 100 萬億位數方面的工作概述:

程式:y-cruncher v0.7.8,作者:Alexander J.Yee
演算法:Chudnovsky 演算法
計算節點:n2-highmem-128,帶 128 個 VCPU 和 864 GB RAM
開始時間:2021 UTC 10 月 14 日星期四 04:45:44
結束時間:週一至 3 月 21 日 04:16:52 2022 UTC
總執行時間:157 天 23 小時 31 分 7.651 秒
總儲存大小:663 TB 可用,515 TB 已使用
總輸入/輸出:讀取 43.5 PB,寫入 38.5 PB,總計 82 PB

從過去到現在,我們可以看到由於計算機速度發展的越來越快,“π”小數點後面的位數也正在以指數方式增加。

  • 架構(Architecture)

由於“π”的計算是一種計算、儲存和網路密集型任務,因此給所配置計算引擎環境的方式帶來挑戰。

谷歌雲端計算引擎提供了支援計算和 I/O 密集型工作負載的機器型別,選擇了 n2-highmem-128(Intel Xeon、128 VCPU和864 GB RAM)可用記憶體量、網路頻寬兩個最重要的因素以滿足高效能 CPU、大記憶體和 100 Gbps 出口頻寬的需求。

儲存方面,谷歌估計計算所需的臨時儲存大小約為 554 TB,並設計了一個由一個計算節點和 32 個儲存節點組成的叢集,用於總共 64 個 iSCSI 塊儲存目標。

主計算節點是一臺執行 Debian Linux 11 的 n2-highmem-128 計算機,具有128 個 VCPU 和 864 GB 記憶體以及 100 Gbps 出口頻寬支援,並採用了基於網路的共享儲存體系結構。

每臺儲存伺服器都是一臺 n2-highcpu-16 計算機,配置有兩個 10359 GB 分割槽平衡持久磁碟。N2 機器系列提供了平衡的價效比,當配置 16 個 VCPU 時,它提供了 32 Gbps 的網路頻寬,且可選擇使用最新的 Intel Ice Lake CPU 平臺,這使其成為高效能儲存伺服器的良好選擇。

  • 自動化解決方案

谷歌雲端計算採用 Terraform 來設定和管理叢集,且編寫了兩個 shell 指令碼來自動化關鍵任務,Terraform 指令碼建立了 guest OS(來賓)策略,以幫助確保自動安裝所需的軟體包,guest OS 作業系統安裝過程的一部分由啟動指令碼處理,這種方式只需幾個命令就可以重新建立整個叢集。

  • 100 Gbps 網路

早在 2019 年,谷歌進行“π”小數點後第 31.4 萬億位的計算時,其雲端計算機器出口吞吐量只有 16 Gbps。這一次,n2-highmem-128 機型支援高達 100 Gbps 的出口吞吐量,這意味著頻寬在短短三年內增長了 600%。

此次,網路驅動程式也從 virtio 更改為新的谷歌虛擬 NIC(gVNIC)。gVNIC 是一種新的裝置驅動程式,與谷歌的 Andromeda 虛擬網路堆疊緊密整合,以幫助實現更高的吞吐量和更低的延遲,這也是 100 Gbps 出口頻寬的要求。

  • 儲存設計

持久磁碟(PD)是計算引擎虛擬機器的一種持久的高效能儲存選項,此次谷歌選擇使用 balanced PD —— 一種新型的永續性磁碟,可提供高達 1200 MB/s 的讀寫吞吐量和 15-80k 的 IOPS,成本約為 SSD PD 的 60%。此儲存配置檔案是 y-cruncher 的最佳選擇,它需要高吞吐量和中等 IOPS。

綜述

以上,所有這些微調和基準測試共同使得谷歌此次實現了“π”小數點後面第 100 萬億位數的計算。

計算完成後,谷歌還用另一種演算法(Bailey–Borwein–Plouffe 公式)驗證了最終的數字,最終該公式被驗證成功。

以下是本次谷歌雲端計算對“π”小數點後第 100 萬億位數計算結果的最後 100 位數字:

4658718895 1242883556 4671544483 9873493812 1206904813
2656719174 5255431487 2142102057 7077336434 3095295560

如果大家想要了解此次計算的整個數字序列,可登入谷歌雲端計算的演示網站上檢視。

參考連結:https://cloud.google.com/blog...

相關文章