GRAPE-DRを効率的に動かすソフトウェア
創造情報学の平木教授が慶應大と共同開発
整数計画法を最適化コンパイラに適用し成功

 創造情報学専攻の平木敬教授らは慶應義塾大学と共同で、ペタフロップス級の処理性能を持つ超並列スーパーコンピューター「GRAPE-DRシステム」で実行できる効率的なソフトウェアを開発した。新しいアルゴリズムを使ったコンパイラ「Sakura-C」で、この成果により、今年完成を予定しているGRAPE-DRシステムの実用化の道を拓くとともに、2015年以降の登場が予想されるエクサフロップス級スパコン開発に向けて大きなアドバンテージを得たことになる。

 GRAPE-DRシステムは、1チップで512ギガフロップスの浮動小数点演算が可能なアクセラレーターチップを搭載するシステム。研究者が“真に求めるシステム”を目指して「速く」「安く」「使いやすい」という3つの要素を融合したもので、平木教授らと国立天文台が共同開発を進めている。目標性能は2ペタフロップス、データ通信速度は40Gbpsを掲げている。このシステムを動かすソフトウェアは、いまのところアセンブラで書くしかなく、GRAPE-DR自体の実用化の妨げになる可能性があった。それを解消するには、コンパイルする最適化技術が求められている。通常、コンパイルすると、手書きのソフトウェアと比べて性能が数10倍も悪くなるケースが多かったが、コンパイラのアルゴリズムを整数計画法という手法で実装することにより、倍くらいしか違わないで効率が得られるようになった。2倍程度の差は実用的なソフトウェアの境界線とされるレベルで、「ユーザーがこのソフトウェアを使って、GRAPE-DRの性能が出せることを示したことに大きな意義がある」と平木教授。

 整数計画法は、たとえば、工場のプロセス制御で温度や流量をどの範囲に決めるかといったとき、多くのパラメーターの中から最も効率のよい取り合わせを選ぶやり方。今回は、メモリー内のどこにどの情報を置き、それをネットワークにスムーズに送ったらいいかなどを、整数計画法に沿って変換することで解けるようにした。特に、スパコンではメモリーとの接続が最も大事とされ、メモリーやバンド幅を無限に近いくらい用意していないと効率を出せないのがネックとなっている。コストを圧迫する要因となるメモリーの無駄遣いを防いで最適化を図るために、整数計画法を持ち込んだ。

 この最適化コンパイラとともに、共同研究プロジェクトの中核となる、スパコンの要素すべてをIP(Internet Protocol)化するAll IPコンピューターアーキテクチャーがある。このコンセプトは平木教授が10年来提唱しているもので、慶應義塾大学の村井教授グループが研究を推進中。コンピューターの中身のCPUやメモリー、キーボード、マウス、ディスプレーも、すべてネットワークで統一的につなぎ、管理する。どのネットワークを使うかは、自由に選択し、決定できる。それに伴い、ハードウェアも積み木細工のように自由設計が可能になるというものだ。

 この2大テーマを含むソフトウェアの研究は、次世代IT基盤構築のための研究開発(文科省2005年度―2007年度)の一環として行った。その結果、スパコンがエクサ(ペタ10の15乗=1000兆の1000倍)フロップスからゼタ(エクサの1000倍)フロップスの超々高速の領域へ踏み出す基礎技術を手に入れたと平木教授は強調する。次々世代以降のスパコンを構成する半導体チップは、最小線幅にしても、現在のスケーリングの法則では説明できず、まったく新しい設計法や製造法が必要で、メモリーとCPUのデータのやり取りも、必要最小限に抑えて効率的に処理する方法などが検討されている。これらの基幹技術に見通しを付けたことが大きいとしている。

ISTyくん