GRAPE

GRAPE(グレープ):重力多体問題専用計算機の詳細



GRAPE(GRAvity PiPE)は、東京大学総合文化研究科に所属していた研究者グループによって開発された、重力多体問題専用の計算機です。天体シミュレーションにおける重力相互作用計算の高速化に特化しており、専用のパイプラインハードウェアを組み込むことで、従来の汎用コンピュータでは困難だった大規模なシミュレーションを可能にしました。

概要



GRAPE の主な目的は、球状星団銀河銀河団など、多数の恒星からなる天体の時間進化や動力学を数値的にシミュレーションすることでした。これらの天体は、球状星団で約10⁴~10⁵個、銀河では約10¹⁰~10¹²個もの恒星を含んでいます。恒星間の万有引力は、到達距離に制限のない逆2乗力であるため、多体問題の数値シミュレーションでは、すべての星の間で働く重力を計算する必要があります。一般的に、N個の粒子からなる多体系では、任意の2粒子間の組み合わせ数がN²に比例するため、粒子間相互作用の計算が全体の計算量の大部分を占めます。

1980年代末の時点では、当時のスーパーコンピュータでもN=1000程度の粒子数を超える計算は現実的な時間内で行うことが困難でした。そこでGRAPEは、O(N²)の計算量を要する粒子間相互作用の計算を専用ハードウェアで処理することで、多体問題の計算を大幅に高速化するという画期的なアプローチを採用しました。

基本原理とアーキテクチャ



重力多体系の時間発展計算は、一般的に以下のステップで行われます。

1. 粒子iが粒子jから受ける重力Fᵢⱼを計算する。
2. Fᵢⱼをjについて合計し、粒子iが受ける重力の総和Fᵢを求める。
3. Fᵢを運動方程式に代入し、粒子iの加速度aᵢを求める。
4. aᵢを用いて時間積分を行い、粒子iの位置rᵢと速度vᵢを更新する。
5. 上記のステップをすべての粒子について繰り返し、時間ステップごとに繰り返す。

GRAPEは、これらのステップの中でもっとも計算量の多いステップ1と2のみを専用ハードウェアで処理し、それ以外の計算はGRAPEに接続された汎用ワークステーションで行います。

GRAPEの基本的なアーキテクチャはシンプルです。粒子iとjの位置ベクトルrᵢrⱼ、質量mᵢ、mⱼを入力として、ニュートンの万有引力の法則を用いて粒子間に働く重力Fᵢⱼを計算します。この際、重力計算を逐次的に行うのではなく、位置座標の減算、2乗、加算といった各演算を専用の演算器を直列に並べてパイプラインを構成します。パイプラインの最終段でFᵢⱼが出力されるのがGRAPEの重要な特徴です。万有引力の計算には約30ステップの演算が必要ですが、GRAPEでは1クロックごとに計算結果が得られます。実際には、パイプラインを並列化することでさらに高速な計算を実現しています。

歴史



専用パイプラインハードウェアによる多体計算というアイデアは、1984年国立天文台の近田義広によって提唱されました。近田は、電波望遠鏡を用いた開口合成観測のデータ解析用に、同様のアイデアに基づいたデジタル分光計を開発し、100GOPSの演算速度を達成していました。

近田のアイデアに触発された東京大学杉本大一郎を中心とするグループが重力多体問題専用計算機の開発を開始し、1989年9に最初のGRAPE-1が完成しました。GRAPE-1は、各演算器のICやROMをユニバーサル基板上に配置し、ワイヤーラッピングで結線した試作機で、開発費用は約20万円でした。GRAPE-1では、データ幅を8ビットに制限し、すべての演算をROMのテーブル参照で行いました。これにより、8ビットの精度でも十分にシミュレーション可能な無衝突系の天文学研究に貢献しました。その理論性能は240MFLOPS相当で、実効性能でも1万体の計算で約160MFLOPSに達しました。

1990年5には、汎用計算機と同様の単精度32ビットおよび倍精度64ビット計算が可能なGRAPE-2が完成しました。理論性能は約40MFLOPSでした。以降、GRAPEシリーズでは、奇数型番の機種が精度を限定したタイプ、偶数型番の機種が高精度計算に用いられるタイプとして開発されるようになりました。

1991年には、重力計算パイプライン回路が専用LSI化されたGRAPE-3が開発され、理論性能は約15GFLOPSに達しました。

1993年には、高精度型計算機GRAPE-2の後継となるHARP-1が開発されました。HARPは、エルミート積分法を多体問題の時間積分法に用いることを想定し、粒子の加速度だけでなく加速度の時間微分もハードウェアで計算します。これにより、球状星団銀河中心核といった緩和時間の短い衝突系の問題が高速に解けるようになりました。

1995年には、HARP-1の後継機であるGRAPE-4が完成しました。GRAPE-4では、重力計算パイプラインだけでなく時間積分の予測子計算も専用LSIでハードウェア化され、最大構成で約1.08TFLOPSの理論計算性能を達成し、実用的な科学技術計算でテラフロップスを超えた世界初の計算機となりました。GRAPE-4は、1995年1996年のゴードン・ベル賞を受賞しました。

1998年には、GRAPE-3の後継機であるGRAPE-5が完成しました。GRAPE-5では、クロック周波数が80MHzまで高速化されました。GRAPE-5は宇宙論的構造形成の計算で、1MFLOPSあたり7ドルという高い価格性能比を達成し、1999年のゴードン・ベル賞価格性能比部門賞を受賞しました。

2002年には、GRAPE-4の後継機であるGRAPE-6が完成しました。GRAPE-6は、最大構成のGRAPE-4と同等の性能を持つプロセッサボード64枚から構成され、4枚ごとにLinuxで稼働するホストPCが付き、PC間はギガビットイーサネットで接続されました。理論性能は64TFLOPSに達しました。GRAPE-6は、開発中の2000年2001年にゴードン・ベル賞を受賞し、2002年には最大構成で実効計算性能29.5TFLOPSを達成してゴードン・ベル賞ファイナリストに選出され、2003年には33.4TFLOPSで三度目のゴードン・ベル賞を受賞しました。

2006年には、GRAPE-7が完成しました。GRAPE-7は、内部回路を書き換え可能なFPGAを搭載しており、構成によって1~7個搭載されています。現在のところ内部回路としてはGRAPE-5と同等のパイプラインが完成しており、最大構成モデルにこのパイプラインを実装した場合の動作は、理論性能364GFLOPS相当まで確認されています。2006年には宇宙論的構造形成の計算で1GFLOPSあたり105ドルという価格性能比を達成し、同年のゴードン・ベル賞価格性能比部門ファイナリストに選出されました。

2006年11、GRAPE-DR(Greatly Reduced Array of Processor Element with Data Reduction)の開発成功が発表されました。GRAPE-DRは汎用性を持ち、様々なプログラムを実行できます。2010年6には、GRAPE-DRが省エネ志向のスパコンとして電力当たりの演算性能の高さが評価され、「Little Green500 List」で世界一位となりました。

2011年時点では、国立天文台高エネルギー加速器研究機構の共同研究で、ストラクチャードASICを用いて四倍精度浮動小数点計算が行えるプロセッサGRAPE-MPの開発が進められていました。さらに、六倍精度浮動小数点計算が行えるGRAPE-MP6の開発も進められていました。2012年3には、東京工業大学と一橋大学の研究グループがGRAPE-8を発表しました。ASICFPGAの中間的なストラクチャードASICを使用し、コストを抑えることに成功しました。また、ボード単体で20.9Gflops/W、システム全体で6.5Gflops/Wの高い電力性能比を達成しました。

2013年12、GRAPE-7の後継機としてGRAPE-9が発表されました。内部回路を書き換え可能なFPGAを8個または16個搭載しています。

しかし、時代の経過とともに、GRAPEは汎用性の欠如と製造コストの高さが問題視されるようになり、国立天文台ではGRAPE-9以降は重力多体計算用途での専用ハードウェアの新規開発を停止し、一般的なスーパーコンピュータや商用GPUサーバを導入するようになりました。GRAPE-9およびGRAPE-DRは2022年3をもって運用を終了し、GRAPEプロジェクトは事実上終了しました。2024年現在、専用ハードウェアとしての開発は、2019年に運用を開始した派生プロジェクトMDGRAPE-4Aが最後となっています。

成果



GRAPEは、理論天文学の多体問題における様々な分野のシミュレーションで利用され、数多くの科学的成果をもたらしました。専用機として開発されたため、汎用スーパーコンピュータと比較して常に1/10から1/100の開発予算で同等またはそれ以上の計算性能を達成することができました。GRAPEボードは企業によって量産化され、日本国内だけでなく世界各国の研究室に販売されました。GRAPEで行われているシミュレーションの例としては、以下のような問題が挙げられます。


GRAPEシリーズ一覧



2012年までに開発されたGRAPEシリーズは以下の通りです。

  • - GRAPE-1
  • - GRAPE-2
  • - GRAPE-3
  • - HARP-1
  • - GRAPE-4
  • - GRAPE-5
  • - GRAPE-6
  • - GRAPE-7
  • - GRAPE-8
  • - GRAPE-9
  • - GRAPE-DR
  • - GRAPE-MP
  • - GRAPE-MP6

派生プロジェクト



GRAPEプロジェクトをきっかけに、専用パイプラインによる計算の高速化というGRAPEの基本概念を継承した様々な専用計算機が開発されました。

分子動力学用計算機


GRAPEアーキテクチャの応用例として重要なのは、GRAPEのハードウェア分子動力学(MD)に応用した計算機です。中のタンパク質のMDシミュレーションでは、タンパク質分子を構成する原子や、溶媒である分子素・酸素原子間に働く分子間力やクーロン力などの相互作用を大量に計算する必要があります。これらの相互作用は、すべて万有引力と同様の中心力であるため、GRAPEのパイプラインを修正することでMDの計算にも応用可能です。

1992年には、GRAPE-2をMDにも使えるように改良したGRAPE-2Aが開発されました。GRAPE-2Aは180MFLOPSの理論性能を持っていました。1995年には、後継として回路をASIC化したMD-GRAPEが作られました。その後、戎崎俊一を中心とするグループが改良を進め、2002年には理論性能75TFLOPSのMDMが開発されました。

GRAPE-2A/MD-GRAPEの系譜を引く分子動力学用計算機は以下の通りです。

  • - GRAPE-2A
  • - MD-GRAPE
  • - MDM

WINE


1993年には、周期的境界条件下での重力・クーロン力多体問題の計算を行う専用計算機WINE(Wave space INtegrator for Ewald method)が開発されました。WINEは、周期境界条件下の中心力の厳密解を求めるエヴァルト法のアルゴリズムを専用パイプラインで実装したものです。WINEは、MDや宇宙の大規模構造のシミュレーションなど、周期境界条件を用いる多体問題に活用されました。

PROGRAPE


1990年代後半になると、FPGAの性能が向上し、ASICとして実装していたGRAPEのパイプラインをFPGA上に実装できるようになりました。1998年には、GRAPE-3相当の回路をFPGAで実現したPROGRAPE-1が開発されました。PROGRAPE-1は、16MHzで動作し、理論性能は0.96GFLOPSでした。PROGRAPEはFPGAを使用しているため、解くべき問題に応じてパイプラインを自由に再構成できるという利点があります。2006年現在の最新機種は理化学研究所で開発されているPROGRAPE-4で、理論性能は243.2GFLOPSに達しています。

参考文献



[参考文献の情報をここに追加]

関連項目




脚注



[脚注の情報をここに追加]

外部リンク



もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。