Googleは米国時間6月8日、「Google Cloud」上で100兆桁の円周率計算に成功し、世界記録を更新したと発表した。
円周率計算の世界記録はこれまで、2021年にグラウビュンデン応用科学大学が計算した62兆8000桁だった。GoogleがGoogle Cloudを使って円周率桁数の世界記録を更新するのは今回で2回目で、前回は2019年に記録した31兆4000桁だった。
計算には157日と23時間31分7.6151秒を要した。今回明らかになった円周率の100兆桁目までの100桁は「4658718895 1242883556 4671544483 9873493812 1206904813 2656719174 5255431487 2142102057 7077336434 3095295560」だった。
円周率の計算には高いCPU性能とストレージ、ネットワーク性能が必要となる。そこでGoogleはGoogle Cloud上に次のような環境を構築した。
主となる計算ノードは128 vCPU、864GBのメモリを持ち、100Gbpsの外向き帯域幅をサポートする「n2-highmen-128インスタンス」を採用した。OSには「Debian Linux 11」を用いた。
ストレージについては、一時ストレージの必要容量をおよそ554TBと見積もった。なお、単一の仮想マシンに接続できる永続ディスクの最大容量は257TBであったため、1台の計算ノードと、合計64個のiSCSIターゲットを提供する、32台のストレージノードからなるクラスタを設計した。
各ストレージサーバーは「n2-highcpu-16 インスタンス」で、2台の1万359GBのゾーンバランス永続ディスクを接続した。
なお、今回の計算には数カ月の時間が必要なことに加え、わずかな性能差でも計算時間が数日から数週間単位で変わってしまうことが予想されたという。また、複数の設定項目がOS、インフラストラクチャ、実行するアプリケーションそのものに存在し、様々な組み合わせが考えられた。
そこで、クラスタのセットアップと管理に「Terraform」を使用したほか、高性能計算プログラム「y-cruncher」を異なる設定で実行して性能測定を自動化する小さなスクリプトを開発するなどの最適化を実施した。その結果、最終的な実行速度は最初の設計に比べ約2倍に高速化されたという。
計算プログラムを実行する5カ月間、仮想マシンの不具合は無く、82PBのデータを1ビットの誤りもなく正しく読み書きできたという。過去3年間にGoogle Cloudが積み重ねてきたインフラストラクチャや製品の改良が、今回のプロジェクトを可能にしたとしている。
Googleは100兆桁の円周率の計算に使用したスクリプトをGitHubで公開している。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス