SS研HPCフォーラム2004

2004/10/08

VPM (Vector Processor Matrix)
次世代HPCアーキテクチャ
戎崎俊一、泰地真弘人（理化学研究所）
牧野淳一郎（東大理学系研究科）

科学技術用計算機（既存１）• ベクトル計算機– 計算／通信～２– 通信幅に膨大な費用• 地球シミュレータ

40Tflops/400億円• PCクラスタ– 計算／通信～２０– まだ割高• 理研クラスタ

12.5Tflops/38億円• SMPクラスタ– 計算／通信～１０– 欠点がなくなんでもそつなくこなす• GRAPE型専用計算機– 計算／通信～３００– 割安• MDM• GRAPE-6– 融通が利かない

78Tflops/5億円
64Tflops/5億円

実パイプライン2-1

SS研HPCフォーラム2004

2004/10/08

CPUの性能変化

科学技術用計算機（続き）• 計算通信比が価格性能比を決める• 実効／理論性能比はベクトルとGRAPEで高く、PCクラスタで低い• ベクトルで実効性能が高いのは、計算通信比と蓄積されたノウハウのため• GRAPEで高いのは応用に適合したメモリアーキテ
クチャのノウハウのため• 単なる GRID では性能がでない

2-2

SS研HPCフォーラム2004

2004/10/08

ＶＰＭ（Vector Processor Matrix）• ＧＲＡＰＥの価格性能比を維持、柔軟性を確保• 計算／データ比が高いＨＰＣアプリケーションに特化– 重力多体問題、分子動力学、境界要素法– 第一原理電子状態計算（二電子積分、行列対角化）– ルジャンドル変換など– 密行列ソルバ

VPMにおける工夫（１）同報並列計算• HPCアプリの多くは、計算/データ>>1– 重力・静電力計算：行列対角化：密行列直接解法– 二電子積分：境界要素法– 計算/通信>>1でもよい• 一つのデータを何度も使いまわす
同報
データメモリ

プログラム
メモリ

PE1

PE2

PE3

PE4

J=1

J=2

J=3

J=4

同報

2-3

SS研HPCフォーラム2004

2004/10/08

VPMの工夫（２）Virtual Pipeline
GRAPE: Reaｌ Pipeline
書き換え不可能
データメモリ

PE1

PE2

PE3

PE4

VPM： Virtual Pipeline
データ同報
データメモリ

PE1
プログラム
メモリ
書き換え可能

PE2

PE3

PE4

命令同報

GRAPE-DR
VPM型の最初のプロトタイプ• 振興調整費– 2004年度開始 5年×3億円– 2.0～2.8Pflops（単精度）
2008年度– GRAPE-DRチップ• 1.4Gflops/0.35Gflops(単/倍精度)• メモリバンド幅５．６ＧＢ/ｓ
計算／通信=200– システム• 1024 PE／チップ
2048チップ• 256ノードのＰＣクラスタ• アプリケーション– 重力多体、分子動力学、境界要素法

2-4

SS研HPCフォーラム2004

2004/10/08

VPMシステム

PEの構成

2-5

SS研HPCフォーラム2004

2004/10/08

GRAPE-DRチップ• 90nmテクノロジ• ２億トランジスタ• 1.4Tflops／350Gflops（単精度／倍精度）• 700MHｚ動作• 1024個のPE内蔵• ２０W程度の消費電力

GRAPE-DRチップ機能• ブロードキャストユニット32個(PE 1024個)• 外部メモリからブロードキャストメモリへの転送バンド幅 5.6GB/s• ブロードキャストメモリから(リダクションツリーを通っての)• 外部メモリ/ホスト計算機へのデータ転送速度
1.4GB/s

2-6

SS研HPCフォーラム2004

2004/10/08

VPMチップ構造

プロセッサエレメントの仕様• 浮動小数点単精度乗算:1演算／1サイクル• 浮動小数点倍精度加減算:1演算／サイクル• 浮動小数点倍精度乗算:1演算／4サイクル• 内積演算：乗算・加算並列実行可能• ローカルメモリ: 倍精度 256 語2-7

SS研HPCフォーラム2004

2004/10/08

ブロードキャストユニットの仕様• プロセッサエレメント 32 個にデータを供給• ブロードキャストメモリ 1K語(デュアルポート)• ブロードキャストメモリからPEへのデータ放送機能• 個別PEによる読み書きを可能とする

行列積
1. 行列A、Bの要素を外部メモリに格納
2. Bの部分小行列を各PEのレジスタに格納
3. Aの部分列を全PEに順に放送、PEでは積和命令実行（cij=ai1*b1j+ai2*b2j…+aik*bkj)
4. グループにまたがったリダクションを行いながら、結果ｃを回収

2-8

SS研HPCフォーラム2004

2004/10/08

重力計算• 全粒子の位置座標を外部メモリに格納• 力を計算する場所の位置座標群を各PEのレジスタに格納• 力を与える位置情報を全PEに放送、PEでその粒子からの力の寄与を計算して積算• グループにまたがったリダクションを行いながら、積算結果を回収

ＧＲＡＰＥ－８
実用マシン• 目標– １０Ｐｆｌｏｐｓ

2010年度

50億円• ＧＲＡＰＥ－８チップ– １．０Ｔｆｌｏｐｓ／チップ （倍精度）– ～10000チップ– 計算／通信50～100（開発要素）– １０２４ノードのＰＣクラスタ• アプリケーション– 重力多体、分子動力学、境界要素法– 第一原理計算（2電子積分、密行列の対角化）

2-9SS研HPCフォーラム2004

2004/10/08

銀河を作る• 銀河の大きさ– 3万光年– 1千億太陽質量• 分解能– 空間～30光年– 質量～太陽質量• 粒子数– 空間分解能の要請
10003＝～10億個– 質量分解能の要請～
1000億個惑星を作る• 惑星形成– 原始太陽系星雲の中で微惑星の形成– 微惑星が公転しながら、重力散乱と合体・成長を繰り返す– 数十億年で惑星になる• 1000万個の粒子でこれをシミュレーション– １０Pflops

2 - 10SS研HPCフォーラム2004

2004/10/08

マックスウェルの悪魔• 分子モーター– エネルギー効率60％超– もっとも簡単なものはブラウニアン・モータ• なぜ生体分子モーターはこんなに効率が良いのか？
進行方向
KIF1A

マイクロチューブリン

心を作る• 脳は1000億個の神経細胞で構成• 神経細胞＝1万入力、1出力、１ｋHｚ動作のゲー
ト＝2ｋflopsのプロセッサ• 全体としては２０００Pflopsの計算機でエミュレート可能• ２０Pflopsマシンはその100分の一の性能を持つ。
• そろそろ心を作れてもいいかもしれない。

2 - 11

SS研HPCフォーラム2004

2004/10/08

これからの課題• ＦＦＴ– ポアッソン方程式の解法• 他の高速アルゴリズムの開発– データ解析• 低精度ÆＦＰＧＡベースマシン• 地球環境シミュレーション– 全球コード：大部分はルジャンドル変換の計算• ＶＰＭに向く

FPGA(Field Programmable gate Array)• 低精度のＨＰＣ計算には威力を発揮– 銀河シミュレーション（低精度型ＧＲＡＰＥ）– 類似度検索（ゲノムや文章の解析など）– 画像・データ処理（ＦＦＴ、位相回復など）• Ｂｉｏｌｅｒ－３の開発（千葉大と共同開発）• DAP-DNA (IP-Flex社)のソフトウエア開発

2 - 12

SS研HPCフォーラム2004

2004/10/08

まとめ• ＶＰＭ：高（計算／通信）でも高い実行性能– フォン・ノイマン・ボトルネックの回避• 多くの科学技術計算に適用可能– 重力多体、分子動力学– 行列演算（ＬＩＮＰＡＣＫなど）– 第一原理電子状態計算など• 二電子積分、密行列対角化• ＧＲＡＰＥ－ＤＲ：プロトタイプ– 2008年に2Pflops 15億円

• ＧＲＡＰＥ－８：実用マシン（応用範囲を拡大）– 2010年に10Pflops50億円• ベクトルマシン、PCクラスタと補完的

2 - 13