1. Home
  2. 広報活動
  3. クローズアップ科学道
  4. クローズアップ科学道 2022

研究最前線 2022年11月16日

いつでも快適に使える「富岳」を提供

スーパーコンピュータ「富岳」は、日本中の研究者や企業が利用し、幅広い分野で顕著な成果を次々に上げています。その陰には、巨大な計算機システムを安定的に運転し、ユーザーが快適に計算できるようにするために、日々努力している人々がいます。さまざまな側面から「富岳」の運用を支えている四つのユニットのリーダーたちに、それぞれの活動を聞きました。

運用技術部門のユニットリーダーの写真

左から

計算科学研究センター 運用技術部門
山本 啓二(ヤマモト・ケイジ)先端運用技術ユニット ユニットリーダー
塚本 俊之(ツカモト・トシユキ)施設運転技術ユニット ユニットリーダー
村井 均(ムライ・ヒトシ)ソフトウェア開発技術ユニット ユニットリーダー
宇野 篤也(ウノ・アツヤ)システム運転技術ユニット ユニットリーダー

熱を捨てるのも大仕事

「富岳」もパソコンも、計算を行う部品であるCPU(中央演算装置)と、データをためておくストレージから成る基本構成は同じだ。ただし、パソコンではCPUの数は1個~数個だが、「富岳」では約16万個もある(図1)。ストレージも、パソコンのハードディスクよりはるかに大きいペタバイト級(1ペタは1,000兆)のファイルシステムである。この「巨大さ」ゆえに引き起こされる問題がある。

「富岳」を支える運用技術部門の活動の図

図1 「富岳」を支える運用技術部門の活動

「富岳」は約16万個ものCPUとペタバイト級のストレージ、それらに電力を供給する電源設備、それらを冷却する設備から成る。右の枠に示す家庭用のパソコンと基本構成は同じだが、複数の建物にまたがる巨大なシステムである点が異なる。多数のユーザーがCPUの一部を使って各自のプログラムを実行する点もパソコンとの大きな違いだ。運用技術部門は、そんな「富岳」の安定運転から利便性向上までを支えている。

その最たるものは「熱」だ。CPUやハードディスクが働くときには必ず熱が出る。熱がたまって温度が上がると誤動作や損傷の恐れがあるため、パソコンでは冷却ファンで内部を冷やしている。しかし、「『富岳』で1年間に発生する熱は2億kWh(キロワット時)という、途方もない量です」と、塚本俊之ユニットリーダー。これを冷やすために、熱源機械棟には4種類の大型冷凍機を合計11台設置しており、工業用水を毎日1,500トン使用して10℃の水をつくっている。「この冷たい水を計算機棟との間で循環させることで、CPUの冷却に使う純水を冷やしたり、冷水を利用した大型の空調機で室温を下げたりして、CPUやファイルシステムを一定温度に保っています」

冷却に加え、電力の安定供給も重要だ。落雷や停電で急に電圧が下がるとデータが破損する可能性があるからだ。このため、電力は電力会社から購入するだけでなく、熱源機械棟に都市ガスで発電するコジェネレーションシステムを設置しており、停電が発生するとファイルシステムを瞬時に受電系統から切り離して保護するようになっている。また、発電後の高温ガスは冷凍機の運転に利用している。

「『富岳』は、計算の状況によって使用電力も発生する熱量も大きく変動するため、常に問題なく動かすのは大変です。そこで、使用電力、発生熱量、冷凍機の運転状況などをひと目で把握できるシステムをつくり、効率的に制御しています」。このシステムにより、安定した運転が実現されている。

多数のCPUを使うから起こる「アクセス集中」に対処

「富岳」は、多数のCPUを並列に使うことで大規模な計算を高速で行うことができる。この特徴を生かすため、時には1万個ものCPUを同時に使うプログラムが実行される。ここでも「巨大さ」故のトラブルが発生し得る。「CPUはファイルシステムに置かれたデータを読み出して計算します(図1)。1万個のCPUを使うプログラムでは、1万個のCPUが一斉にデータを読み出そうとします。1回の読み出し時間はごく短いのですが、読み出しは順番にしか行えないために1万倍の時間がかかり、計算が止まってしまうのです」と、宇野篤也ユニットリーダーは説明する。こうしたトラブルを防ぐため、CPUの近くにデータの複製を置いておき、ファイルシステムからの読み出しをしなくてすむツールを用意するなど、ユーザーのための工夫を施しているという。

また、CPUの使用状況やプログラムのエラー数を常時モニターしており、ユーザーからのSOSには「富岳」を共同開発した富士通株式会社のスタッフと共に対応する体制を整えている。さらに、16万個のCPUを無駄なく使う仕組みづくりも、重要な仕事だ。「大きなプログラムには多数のCPUがブロック状に割り当てられるため(図1)、複数プログラムが同時に実行されると、ブロックの隙間に使われないCPUが残ることになります。そこに、少ないCPUで実行するプログラムを当てはめる工夫をしています」

環境整備でより速い計算を実現

「富岳」の計算性能を最大限に生かすには、プログラムをなるべく速く走らせる必要がある。そのためには、ユーザーがよいプログラムを書くことに加え、そのプログラムが効率よく動く環境を整備することが欠かせない。「人間が書いたプログラムを機械語に翻訳するコンパイラ、『定番』の数学計算用プログラムを取りそろえた数学ライブラリ、CPU間の通信を制御する通信ライブラリなど、プログラムを実行する際にはさまざまなツールが必要になります。それらを『富岳』に合わせて最適化しています」と、村井均ユニットリーダーは環境整備の内容を説明する。

さらに村井ユニットリーダーらは、ディープラーニングに広く使われているソフトウェアを「富岳」向けに最適化する仕事も進めている。一般的に、ディープラーニングにはGPU(画像処理装置)が多用されるが、「富岳」は汎用性とユーザー利便性を高めるためCPUのみで構成されている。この特徴を生かし、CPUだけで同等の性能を実現する可能性が期待されているのだ。

より使いやすい「富岳」を目指して

「富岳」が持つ力を最大限に、効率よく使うためには、運転状況のデータの収集と分析も必要だ。「電力の使用データ、プログラムの実行状況のデータを集めて分析することで、プログラム実行時の省電力化の方法を探っています」と、山本啓二ユニットリーダーは活動の一例を挙げる。

ユーザーの利便性向上も、山本ユニットリーダーらのミッションだ。「たとえば、現在はログイン後の画面にコマンドを打ち込むことで『富岳』を操作していますが、ブラウザ上でワンクリックで操作できたら便利ですよね。『富岳』のハードウェアの性能は完成時に決まってしまっていますが、そういったソフトウェアで使いやすくできる部分はたくさんあるので、クラウド化も含めて『富岳』の将来を考えています」

各ユニットは週例会で情報共有するなどして、一丸となってさまざまな課題解決や環境改善に取り組んでいる。週例会を取りまとめる宇野ユニットリーダーは「これまでに大きな事故はありませんでした。それが一番大事なことだと思っています」と言う。そして、今日も「富岳」は何事もなく運転されている。

(取材・構成:青山聖子/撮影:大島拓也/制作協力:サイテック・コミュニケーションズ)

関連リンク

この記事の評価を5段階でご回答ください

回答ありがとうございました。

Top