では、kukaiの特徴を少し詳しく見てみよう。
コンピュータの電力効率を大きく左右するのが冷却電力だ。高速処理を目指すほどCPUなどモジュールの発熱をどう逃がすかが課題になる。ファンで空気を送り込んで冷やすのが一般的だが、省エネ型スパコンの主流になろうとしているのが、熱伝導率に優れた液体を使う冷却方式である。
GREEN 500に参加するスパコンでは、数年前から液浸冷却方式が使われるようになり、好成績で上位を占めるようになってきた。冷却媒体としては3Mの販売する「フロリナート(Fluorinert/商標)」が主に使われている。kukaiもこれを使用した。
フロリナートはフッ素系の不活性液体で、電気絶縁性があって熱的にも化学的にも安定した物質だ。粘度が低く、無臭、実用上無毒で不燃性、オゾン破壊係数がゼロという、冷却用の媒体として優れた特長を持っている。このフロリナートが満たされた液浸槽にコンピュータの基盤を浸し、温まった液体を外部の熱交換器で冷却して戻すわけだ。
エクサスケーラーの製品にフロリナートの液浸冷却技術が利用されており、kukaiはその一部を採用した。取材したYahoo! JAPAN データ&サイエンスソリューション統括本部の角田直行テクニカルディレクターによると、理論値で同程度の空冷GPUサーバと比較して電力効率は15%向上するとのことだ。
液浸冷却を前提にすることで可能になった高密度実装も電力効率向上の1つのポイントになった。これにはエクサスケーラー独自の高密度実装技術が生かされている。
ディープラーニングでは、多層のニューラルネット処理のために莫大な計算量が必要になる。CPUでも計算はできるが、短時間化のためには効率の良い並列処理が不可欠だ。
CPUのコア数はインテルの「Xeon E5ファミリー」で22コアまでだが、GPUでは数千コアを備えるのが普通だ。Tesla P100では3485コアである。そのコア数を利用して処理を並列化して効率を上げることができる。GPUはそもそもはグラフィックス処理のためのチップだったが、今では科学技術計算などを行うHPC(High Performance Computing)に欠かせないものになっている。
kukaiではTesla P100を160基搭載しており、CPU(Xeon E5-2650L v4 14C 1.7GHz)とともに活用して、1秒当たり460.7テラフロップスの演算性能を記録した。ただしこの性能は最高性能ではなく、あくまでGREEN 500での上位ランク入りを狙ってソフトウェアをチューニングした結果であり、電力効率を犠牲にすればもう少し高い性能が出せるとのこと。
機械学習の専門家として著名な東京大学大学院新領域創成科学研究科の佐藤一誠講師の協力を得て、より効率的に処理できるようにソフトウェアのチューニングを行った。GREEN 500でベンチマークに使うLINPACKプログラムによって設定可能なパラメータを最適化していくには職人的なスキルと長期間が必要だったが、今回は機械学習によって最適パラメータを求める技術を使って工数短縮を図った。
kukaiシステムの完成は2017年3月末のことだったというが、それから約3カ月でGREEN500に自信を持って参加できたのは、この取り組みがあればこそだろう。具体的な方法はいずれ発表される予定だ。
ディープラーニング用のオープンソースフレームワークを利用することを前提に、ハードウェア構成を考えたことも1つの特徴だろう。オープンソースのフレームワークはGoogleが開発した「Tensorflow」、Berkeley Artificial Intelligence Research(BAIR)の「Caffe」など、幾つかの製品が利用されるようになってきた。そのどれもがGPUを利用可能だ。
今後多様なサービスへのディープラーニング応用に当たって、なるべく技術者の技術習得に余計なコストをかけないように、一般的なオープンソースのツールを活用することは重要になりそうだ。場合によってフレームワークを使い分けることも視野に入れて、積極的なオープンソースフレームワーク活用を図っている。
Copyright © ITmedia, Inc. All Rights Reserved.
製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。