BlueGene系列についてはまたそのうち触れるので、スーパーコンピューターの系譜は再びASC系列に戻る。記念すべき連載300回を迎える今回は、ASCI Qの置き換えのためにIBMが開発したRoadRunnerだ。

世界で初めて1PFLOPSに到達したコンピューター「RoadRunner」
ノード数も動作周波数も限界
後継機作りに立ちふさがる壁
なんだかんだ言いつつ、地球シミュレータとBlueGene/Lという2製品の成功は、ASC系列を考える上で大きな課題を残した。
まず1つ目は、ノード間接続のレイテンシーの問題である。ASCI系列だけを見ていれば、SMP(Symmetric Multiprocessing:対称型マルチプロセッシング)+クラスターという方式がダメと思いそうだが、地球シミュレータも初代システムは640ノードを1段のクロスバーでつないだ巨大なSMP+クラスター構成である。
それにもかかわらず、この地球シミュレータが高い性能を発揮した理由の1つは、そもそもプロセッサーがベクトル方式で、250MHzと低い動作周波数でも8GFLOPSもの性能をたたき出しており、これでトータルの性能を稼ぎ出したことだが、もう1つはノード間接続が極めて高速だったことだ。
これは単段のクロスバーを使ったことによるものだが、ここでクロスバーを使えたのはノード数がそれでも640と少なかったことによる。後期型の地球シミュレータではノード数が5120に増えた結果、単段クロスバーを放棄し、2段構成のクロスバーでFat Treeを構成するという、なんだかASCI Qを彷彿とさせる構成になっている。
つまり、ノード数が増えるとどうしてもレイテンシーが増えるという、当たり前と言えば当たり前の結果である。
もう1つは汎用プロセッサーの限界である。BlueGene/LはデュアルFPUを使って700MHz駆動で2.8GFLOPSを実現し、トータルで360TFLOPSものマシンを構築できたが、ではこれで1PFLOPSができるかというと、ノード数が3倍ではノード間通信のレイテンシーが難しいことになるだろう。
つまりmidplaneの数が128個から384個になるわけで、これをプログラムで使い切るのは結構難しそうだ。では1つのmidplaneのノード数を増やすかというと、今度はmidplane内のレイテンシーがぐっと増えそうだ。
では動作周波数を3倍に引き上げようということになるが、その場合は消費電力がおそらく10倍を超え、Blue Gene/Lの高い実装密度はまず実現できない。
CRAY-2並に冷却液に全部漬け込むくらいの放熱対策が必要になるであろうから、性能/消費電力比が桁違いに悪くなる。
ではFPUの数を6つに……というくらいなら、もうベクトル型プロセッサーにしてしまったほうが早い。地球シミュレータにしてもBlue Gene/Lにしても、ぎりぎりのバランスでうまくシステムとして成立しているので、これをそのまま拡張するとバランスが崩れることになる。
こうした話は2004年頃から本格的に出てきており、解としては1ノードあたりの性能を引き上げるのが一番楽、というこれも当たり前の話になった。ただ動作周波数に関してはもうそろそろ限界が見えてきていた時期だけに、これは方法論としては筋がよろしくない。
ではマルチコアは? というと、こちらは半導体製造技術との兼ね合いになるわけだが、コア数を増やすとコア間の同期が問題になるため、こちらも無尽蔵に増やせるものでもない。そこでHeterogeneous Architecturesを利用しよう、というのがASCの中での結論だったようだ。
Heterogeneousに活路を見出す
当時はまたHeterogeneousと呼べるものは3つしかなかった。まずはインテルが研究開発の一環として発表した80コアのプロトタイプ(関連記事)、それとGPGPUとして利用できるようになったGPU、もう1つがCellである。
ご存知の通り、CellプロセッサーはSCEのPlayStation 3のためにSCEとソニー、IBM、それに東芝が共同で開発したプロセッサーで、64bitのPPE(PowerPC Processor Element)と呼ばれる汎用プロセッサーに、SPE(Synergistic Processor Element)と呼ばれるサブプロセッサー×8を組み合わせたものである。
PPEそのものはあまり性能が高くなく、主にSPEの管理などに専念する形で、演算そのものはSPEが主体で行なう方が一般的だった。
このSPEは単精度浮動小数点演算ならば1つあたり25.6GFLOPSで、これを7つ利用することで179.2GLOPSの演算性能を発揮できた。
ちなみになぜ7つかというと、8つのSPEのうち1つは無効にされているためで(これは歩留まり改善のためである)、仮に8つとも有効にしたら204.8GFLOPSとなる計算である。
加えて言えば、仮にPPEにもフルに演算をやらせた場合のピーク性能は230.4GFLOPSになる計算だが、ここまでの性能は出なかった模様だ。
→次のページヘ続く (ASC Projectが選んだのはOpteronとCell)

この連載の記事
- 第721回 性能ではなく効率を上げる方向に舵を切ったTensilica AI Platform AIプロセッサーの昨今
- 第720回 Meteor Lakeには4次キャッシュが存在する インテル CPUロードマップ
- 第719回 EUV露光で堀った溝を削って広げる新技法Sculpta EUVによる露光プロセスの推移
- 第718回 引火性危険物で冷却しないといけない露光機 EUVによる露光プロセスの推移
- 第717回 要求にあわせて構成を変更できるSynopsysのARCシリーズ AIプロセッサーの昨今
- 第716回 Radeon Pro W7900/W7800が異様に安い価格で投入される理由 AMD GPUロードマップ
- 第715回 Emerald Rapidsは2023年第4四半期に量産開始 インテル CPUロードマップ
- 第714回 AMDのメディアアクセラレーター「Alveo MA35D」はナニがすごいのか?
- 第713回 Tenstorrentが日本支社を設立、自動運転の市場開拓が狙い AIプロセッサーの昨今
- 第712回 推論をわずか20mWで実行するエッジAIチップ「ERGO」 AIプロセッサーの昨今
- 第711回 Teslaの自動運転に欠かせない車載AI「FSD」 AIプロセッサーの昨今
- この連載の一覧へ