ITmedia NEWS > 企業・業界動向 >

Google Cloudで円周率を31.4兆桁計算 ギネス更新した日本人技術者が振り返る舞台裏(1/2 ページ)

» 2019年08月09日 13時17分 公開
[濱口翔太郎ITmedia]

 2019年3月14日(米国時間)の「円周率の日」、米Googleが1人の日本人の偉業を発表し、話題を呼んだ。同社で働く技術者の岩尾エマはるかさんが、クラウドサービス「Google Cloud Platform」(GCP)を使って円周率を小数点以下約31兆4000億桁まで計算し、ギネス世界記録に認定されたのだ。

 クラウドを使った計算結果が、円周率計算の分野でギネス記録に認定されるのは史上初で、16年に認定された従来の世界記録(約22兆4000億桁)を約9兆桁も上回っていたため、この記録は日本でも驚きをもって受け止められた。

 ギネス記録更新から約5カ月。岩尾さんはGoogle日本法人がこのほど開いた年次カンファレンス「Google Cloud Next'19 in Tokyo」に登壇し、「クラウドを使えば、誰でも大規模な科学技術計算ができることを証明できました」と語った。

photo Googleの岩尾エマはるかさん

教科書からコードを丸写しし、円周率を計算していた幼少期

 11歳の時にプログラミングに出会い、「無限に続くスケールに魅了された」として円周率計算にも興味を持った岩尾さん。「今から約20年前には、プログラミングの教科書から円周率を計算できるコードを丸写ししてPCに入力し、円周率を小数点以下約20桁まで計算していました」という。ただ、当時の世界記録は約60億桁で、超えたくても手が届く規模ではなかった。

 その後は計算のスキルを高めるべく筑波大学に進学し、かつて円周率計算の世界記録を保持していた高橋大介氏(現・同大計算科学研究所教授)に師事。Google就職後に配属された部署では、毎年3月14日に円周率の計算をして「円周率の日」を祝うなど、計算尽くしの日々を送ってきた。

photo 岩尾さんと円周率計算の出会い

スパコン以外の方法を模索

 そんな岩尾さんは、大規模な円周率の計算にスーパーコンピュータが多く使われることを疑問に感じ、新たな手法にチャレンジしたいと考えるようになった。

 「スパコンは調達に年単位の時間がかかりますし、誰でも簡単に使えるわけではありません。何時間もかけて安定的に同じプログラムを動かそうとした場合にコアの数が増大するため、プログラミング難易度が上昇する点も課題だと感じていました」

 そこで岩尾さんは、クラウドが円周率計算に適していると判断。コンソール画面をクリックするだけで、数分でクラスタを作成できる点、スナップショットを撮るだけで環境を複製できる点、万が一不具合が起きても、新しく仮想マシンを立ち上げるだけで対処できる点――などが決め手だった。その後はギネス記録の更新を目指し、半年ほどかけて準備を行った。

クラウド上に25個の仮想マシンを構築

 岩尾さんはギネス挑戦に当たって、クラウド上で計25個の仮想マシンを稼働させることにした。うち1つは計算用のノードとして、96個のvCPU(仮想CPU)と1.4テラバイトのRAMを統合したクラスタ構成にして処理能力を高めた。

 残る24個の仮想マシンは計算結果を出力するストレージノードとして、1台当たり10テラバイトのSSD上で稼働させた。計算用とストレージ用のノードは、iSCSI(アイスカジー)規格を用いてネットワーク接続した。

photo 岩尾さんが構築した計算クラスタ

 「(HDDではなく)SSDを用いたのは、誰も(円周率計算に)試したことがなかったからです。『たくさんの書き込みには耐えられない』との意見がありましたが、できることを証明したいと考えていました。ただ、結果的に成功したものの、SSDはそこまで処理速度の向上には寄与しませんでした」

 セットアップを終えたあとは、GCPのモニタリングサービス「Stackdriver」とサードパーティー製のデータ分析ツール「Datadog」などを活用してダッシュボードを制作。計算の進行度、経過時間、CPU使用率などを細かくモニタリングできるようにした。また、ホストがダウンした場合にメールでアラートが届くよう設定した。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.