GRAPE

目的

GRAPE の目的は、球状星団や銀河、銀河団といった多数の恒星からなる天体の時間進化や動力学を数値的にシミュレーションすることであった。このような天体には、球状星団で約10⁴⁻⁵個、銀河では約10¹⁰⁻¹²個という膨大な個数の恒星が含まれている。恒星の間に働く万有引力は到達距離の典型的スケールを持たない逆2乗力であるため、このような重力多体系の数値シミュレーションを行なうには個々の星の間に働く重力を全て計算する必要がある。一般に、N個の粒子からなる多体系では任意の2粒子の組み合わせの個数は N² に比例するため、多体系の数値計算では粒子の位置から粒子間相互作用を求める計算が計算量全体の大部分を占める。そのため、GRAPE が開発された1980年代終わりには当時の最高速のスーパーコンピュータでも N=1000 体程度以上の計算を実用的な計算時間で行なうのは困難だった。
そこで GRAPE は、O(N²) の計算量を要する粒子間相互作用の部分のみを専用ハードウェアを用いて計算することで多体問題の計算速度を飛躍的に加速させる、という発想に基づいて開発された。

概略

専用設計のパイプラインハードウェアにより多体計算を力任せに行なうというアイデアは1988年に日本の国立天文台の近田義広によって最初に提唱された。近田は1980年代に電波望遠鏡を用いた開口合成観測のデータ解析用計算機として同様のアイデアに基づくデジタル分光計 を開発し、100GOPS の演算速度を達成していた。
近田のアイデアを聞いた東京大学教養学部宇宙地球科学教室の杉本大一郎が中心となって重力多体問題専用計算機の開発が始まり、1989年9月に最初の GRAPE-1 が完成した。GRAPE-1 はユニバーサル基板上に各演算器の IC や ROM を配置しワイヤラッピングで結線した試作機で開発費用は約20万円だった。GRAPE-1 では簡略化のためにデータ幅を8ビットとし、全ての演算を ROM のテーブル参照で済ませるようにした。銀河など、二体緩和時間が宇宙年齢より長いような無衝突系のシミュレーションは8ビットの精度でも十分に可能なため、GRAPE-1 は試作機でありながら実際の天文学の研究にも役に立つ性能を有していた。その理論性能は 240MFLOPS 相当で、実効性能でも1万体の計算で約160MFLOPS に達した。
1990年5月には汎用の計算機と同様の単精度32ビット及び倍精度64ビットの計算が可能な GRAPE-2 が完成した。理論性能は約40MFLOPSだった。これ以降、GRAPE シリーズでは型番が奇数の機種が精度を限定したタイプ、偶数の機種が高精度計算に用いられるタイプとして開発されている。
1991年の GRAPE-3 では重力計算パイプライン回路が専用 LSI 化され、理論性能は約15GFLOPSに達した。
1993年には GRAPE-2 の後継となる高精度型計算機の HARP-1 が開発された。HARP は Hermite AcceleratoR Pipe の略称で、多体問題の時間積分法にエルミート積分法（エルミート補間多項式を用いた予測子・修正子法）を用いることを想定し、粒子の加速度だけでなく加速度の時間微分 () もハードウェアで計算するものである。これによって球状星団や銀河中心核といった緩和時間の短い衝突系の問題を高速に解くことができるようになった。
1995年には HARP-1 の後継となる GRAPE-4 が完成した。GRAPE-4 では重力計算パイプラインだけでなく時間積分の予測子の計算も専用 LSI でハードウェア化されている。最大構成では約 1.08 TFLOPS の理論計算性能に達し、実用的科学技術計算でテラフロップス (TFLOPS) を超えた世界最初の計算機となった。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 は PROGRAPE と GRAPE-5 の流れをくむ機種であり、内部回路を書き換え可能な 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の開発、実装を進めている。ファインマンループ積分、重力多体系の計算が動作しており、四倍精度計算で約1200MFLOPSの理論性能を有する。さらに、六倍精度浮動小数点計算が行えるGRAPE-MP6の開発も進めている
2012年3月、東京工業大学と一橋大学の研究グループがGRAPE-8を発表。ASICとFPGAの中間的なストラクチャードASICを使用し、コストを抑えることに成功した。またボード単体で20.9Gflops/W、システム全体で6.5Gflops/Wの高い電力性能比を達成した。
2013年12月、GRAPE-7の後継機として開発されたGRAPE-9が発表された。内部回路を書き換え可能な FPGA を8個もしくは16個搭載している。

GRAPE から派生した専用計算機

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

WINE

1993年には周期的境界条件の下での重力・クーロン力多体問題の計算を行なう専用計算機 WINE (Wave space INtegrator for Ewald method) が開発された。WINE は周期境界条件の下での中心力の厳密解を求めるエヴァルト法のアルゴリズムを専用パイプラインで実装したものである。WINE は MD や宇宙の大規模構造のシミュレーションなど、周期境界条件を用いる多体問題に活用された。また理化学研究所 （理研）の MDM ではシステムの一部として WINE の回路を1チップに集積した WINE-2 チップを周期境界の計算に用いている。

PROGRAPE

1990年代後半になると回路を再構成できる FPGA のゲート数の多い製品が安価に入手できるようになり、ASIC として実装していた GRAPE のパイプラインを FPGA 上に実装できるようになった。そこで1998年に GRAPE-3 相当の回路を FPGA で実現した PROGRAPE-1 (PROgrammable GRAPE) が開発された。PROGRAPE-1 は 16MHz で動作し、理論性能は 0.96 GFLOPS だった。PROGRAPE では FPGA を使用しているため、解くべき問題に応じてパイプラインを自由に再構成でき、幅広い問題に利用できる利点を持つ。2006年現在、PROGRAPE シリーズの最新機種は理化学研究所（理研）で開発されている PROGRAPE-4 で、理論性能は 243.2GFLOPS に達している。