61. 1Pflops (2008/6/15 )
Los Alamos の Roadrunner が
Linpack 1Pflops を突破しました。 1Pflops という数字に特別な意味があるわけ
ではありませんが、競合であった Bluegene/P や、 2007/11 に Top 1 の可
能性があった Texas Ranger を押しのけて Top 1 に立ったことにはそれなり
の意義があるでしょう。
ノード構成ですが、2007/1 に書いた 41 で参照した資料から若干
変わっていて、 4 ソケットの Opteron ブレードに CELL 4 ブレード(8チップ)で
はなく、その半分の Opteron 2 ソケットのブレードに CELL ブレードを2枚、
となっています。もっと大きな違いは、昔の資料では Opteron-CELL 間の接続
がIB だったのですが、
この資料の 16ページにあるように Opteron-CELL 間は PCIe 16 レーン
接続になり、このためにもう1枚ボードをつけて4ボードで1組の構成に変わって
いることです。
IB 接続を PCIe に換えたのは、要するに LINPACK を含めたアプリケーション
である程度の実行効率を出すためにはバンド幅が必要だからと考えられます。
LINPACK を例にとると、例えば行列のブロックサイズが 2048 だとして、乗算
には 200 Gflops で 86ms かかります。転送される行列データはほぼ 100MB な
ので、この転送を 86ms 以内に終えるためだけでも 1.16GB/s 以上の速度が必
要になり、IB では理論的には可能かもしれないけど、、、という数字です。
PCIe 16レーンだと理論ピークは双方向 4GB/s で、実効で半分くらいしかでな
いとしても余裕で、ブロックサイズをもっと小さくすることも可能です。ある
程度の実行効率をだそうと思うとブロックサイズ 2048 はちょっと大きいので、
通信速度はもうちょっと欲しくなります。
ちなみに、 GRAPE-DR の場合にはこの問題ははるかに深刻です。GRAPE-DR ボー
ド1枚で CELL ブレードの5倍の 1Tflops がでてしまうからです。接続は PCIe
16 レーンですが、それでも Roadrunner で使ったブロックサイズのさらに
5 倍程度のブロックサイズが必要です。さらに、我々はお金がないので高価な
2ソケットマザーボードをホストに使うといった選択はありえないので、
4コア1ソケットの CPU で2 ボードを制御、となりシステムが組み上がった直
後の LINPACK 効率は、例えば 80% とかは結構難しいことになります。
まあ、ホスト計算機は1年もたてば速くなるし搭載メモリも増えるので、ホスト
計算機の更新ができればこの問題は1年後くらいには解決します。GRAPE-DR の
場合 1 Pflops をホスト 512 台程度で実現するので、ホスト1ノード 10万と
しても更新だけで 5000万もかかるのが問題ではありますが。
と、それはともかく、 Roadrunner の
ノード構成で興味深いのは、 Opteron が Dual Core で、かつ極めて低クロッ
クのものを使っているように思われることです。多様なアプリケーションの性
能を上げるためには Opteron のところもなるべく強力にするべきなのに、あ
えて旧式の K8 コアで低クロックにしているのは消費電力を押さえるためでしょ
うか。
仕様書上は K8 Dual core の Opteron HE と K10 Quad core では K10 のほう
が TDP が小さくなっていますが、実際の数字は逆かもしれません。もちろん、
それ以外の問題として K10 コアにはまだ色々問題があるために確実に動作す
る K8 コアを使った、ということもあるでしょう。
とはいえ、やはり、ボード 4 枚も使って CELL 4 チップ、400Gflops という
のは、Opteron とか Xeon だけのとどれくらい違うの?というのは非常に微妙
なところでしょう。 同じボード4枚構成で、Quad Core Xeon E5450 が載った
IBM HS21 を使えばほぼ同じ性能が消費電力も大きな差なしで実現できそうだ
からです。まあ、現行の Xeon でメモリが FB-DIMM だとそうはいっても若干
電力は厳しいかもしれませんが、Opteron なら多少クロックは下がりますがそ
れ以上に電力は下がることになります。
x86 だけで全部の計算能力をまかなうのではなく、アクセラレータで演算能力
を上げる、というアプローチ自体にはとっても賛成なのですが、価格性能比で
上がってなくては使いにくくなるだけで意味が薄い、という気もします。
BG/P より早く組みあげて性能を出した、というのは
素晴らしいことですが、CELL という特定のチップに関する限り、倍精度版が
発表された瞬間である現在で x86 チップに比べた価格メリットが殆どないわ
けで、今後の発展があるかどうかという観点では極めて厳しいでしょう。