【レポート】
今年6月、最高速コンピュータのベンチマークとも言える「TOP500」の第4位にIBMのBlueGene/Lのプロトタイプが突如登場した。この時の構成は8,192プロセッサで、Rmax:11.680TFlops・Rpeak:16.384TFlopsという成績(ちなみに地球シミュレータの結果はRmax:35.860TFlops・Rpeak:40.960TFlops)であったが、これに引き続き9月には16,384プロセッサまで増やした新プロトタイプがRmaxで36.01TFlopsを発揮し、ついに地球シミュレータを抜いたという話も出ている(厳密には、次のTOP500リストが更新される11月までは、地球シミュレータが最速)。今回のFPFでは、このBlueGene/Lの詳細について最終セッション(Cool Technology)で説明があったので、この話をお届けしたい。(Photo01)
従来のスーパーコンピュータの場合、演算速度を上げるためにベクトル化は必須であり、従って巨大なベクトル演算プロセッサが密結合の形でメインのスカラープロセッサにぶら下がるという構造をとることが多かった。ただ、必ずしもベクトルへの最適化が十分になされない場合もあって、これに備えてスカラープロセッサもこれまた強烈なパフォーマンスを持つものが用意されるという構造だった。それがここ数年来、巨大な密結合システムから、クラスタリングを利用した疎結合プロセッサの方向に向かいつつあるのはご存知の通り。この場合、個別のプロセッサの性能自体は(密結合プロセッサの場合に比べて)それほど高くなくても問題は無いとされる。ただこれも程度問題であって、やっぱり最終的にはスカラー性能がものを言ったりする。クラスタを使う場合、データをベクトル化する代わりに多数のスレッドに分散させ、それをクラスタの各メンバに振り分ける形で処理を行うわけだが、このスレッド分散が効率的でないと1スレッドあたりの処理量が大きくなるし、また(例えば有限要素解析の様な)ある部分の計算結果がそのまま周囲のデータに影響を及ぼす類の処理では、どうしてもクラスタメンバ間でのデータのやり取りが増えるため、これをカバーするためにスカラー性能が必要になるという側面もある。
このため、クラスタをベースにしたHPC(High Performance Computer)であっても、クラスタを構成する各メンバはかなりハイパフォーマンスなCPUを利用することが一般的である。たとえば地球シミュレータは640個のPN(Processor Node)からなり、更に各々のPNは8つのAP(Arithmetic Processor)から構成される(つまりAPは全部で5,120個)が、個々のAPはというと8ユニットのベクトル演算ユニット(VU)と1つのスカラー演算ユニット(SU)から構成される。VUは計算部分の肝だから当然潤沢な演算能力を持つわけだが、SUも500MHz動作で4wayのスーパースカラー・アウトオブオーダの構造を持つそれなりにパワフルなものである。当然ながら、これだけのパフォーマンスをもたせる場合には消費電力も馬鹿にならない。APは0.15μmプロセスで製造されるが、トランジスタ数は6000万、ダイサイズは433.2平方mm(20.79mm×20.79mm)で、消費電力は平均140Wにも達している。
さて、前置きが長くなったわけだが、BlueGene/Lでは、こうした従来の発想をひっくり返すところから始まった。IBMによれば、こうした従来のアプローチでは、消費電力及びコストの面で無理があるという。要するにこうした高消費電力型プロセッサを使うと、集積度を高く上げられない(発熱が苦しくなる)し、必要とされる供給電力量も大きくなるからランニングコストも上昇する。従って、どうしても1つのラックに収められるプロセッサの数は少なくなるから、結果として設置面積が増えるし、これは配線長が大きくなる(=遅延が大きくなる)事にも繋がるという訳だ。もっと言えば予算の枠は一定な訳で、そうなれば当然イニシャルコストやランニングコストを抑える事は、トータルの計算能力を確保する上でも重要である(Photo02)。(予算青天井、なんていう景気の良い話は今時どこにもない)
![]() |
|
Photo02:こちらはもうすこし分析が深い。従来よりも多数のノードを利用できるクラスタ対応アプリケーションが増えた結果、1ノードあたりの演算能力はもっと落としても行ける、という方向性がまずあり、そして低コストと安定性を確保するためには、消費電力と複雑な回路構成を抑えることが重要で、これを実現することで単位消費電力あたりの性能を更に引き上げられる、という仕組みだ。 |
こうした状況を重視してか、BlueGene/LはPowerPCのCPUコアをベースに、周辺回路をSoCで搭載する事でシステム全体の回路をシンプルにし、かつ安定度を上げようという試みである。ここでキーになるのは、SoCを使ってインタフェースを全て統合してしまうことだ。例えばCray Inc.のRed Stormの場合、CPUにOpteronをそのまま利用している関係で、インタフェースをCPUの外側に用意する必要がある。従ってプロセッサボードは当然大型化するし、部品点数も増えるからMTBFも短くなる。全てをワンチップに収めた方が、当然小型化されるしMTBFも伸び、安定度が高まるという訳だ。ただし、いかにSoCとはいえ、周辺回路を全部統合するとダイサイズは肥大化しがちである。これを抑えるためには、CPUコアにあまり大きなものを使うことは出来ない。IBMといえばPowerシリーズのCPUがまず思い浮かぶわけであるが、これは余りに回路規模が大きいのでSoCには不向きである。(というか、そもそもPowerシリーズはSoCを前提とした設計はなされていない。作り変えることは可能だろうが、回路規模を考えるとあまり現実的ではないだろう)そこで、という訳でもないのだろうが、採用されたのはもっと規模の小さなPowerPCである。これであれば、確かにダイサイズの肥大化は抑えることができるだろう(Photo03)。
![]() |
|
Photo03:最初から周辺回路を統合する前提でSoCの利用が最初にあり、そこから必然的にPowerPCの採用が導き出されたという話でもある。もっとも、システムレベルでのRAS機能は持っていないから、これは今回新規に作りこむ必要があった訳だ。 |
さて、その結果としてBlueGene/Lはどんな構成を目指したかというと、65536個のプロセッサノードからなり、180~360TFlopsをターゲットとする構成である(Photo04)。最小単位は2つのプロセッサが載ったCPUカード(これがノードである)で、それが2枚とメモリが搭載されたのがCompute Cardと呼ばれる。このCompute Cardが16枚搭載されたのがNode Boardという訳だ。BlueGene/LはこのNode Boardを32枚搭載したキャビネット64台から構成される。つまりプロセッサの数は
2×2×16×32×64=131,072個
となるわけだ(Photo05)。
これだけの数ともなれば、どうやってノード同士を接続するかが重要なポイントになるわけであるが、BlueGene/Lでは、同時に5種類のネットワークで接続されている。ノード間の通信には3次元のトーラス構造で接続されたリンクを使い、ネットワークや割り込みなどにはツリー構造のリンクを、システム制御にはスター型のリンクをそれぞれ利用するという仕組みだ(Photo06)。
| 日本ユニシス、エンタープライズサーバの大型機/中型機を販売開始 [09:43 5/23] |
| Windows版Kinectのランタイム/開発キット、Kinect for Windows SDK 1.5登場 [09:23 5/23] |
| 【レポート】手法が高度化する「標的型攻撃」、その実態と企業を守るための考え方を聞く [09:00 5/23] |
| 【レポート】中小開発会社を救え! 営業力も提供するスマホ研究会 - スマホ&モバイルEXPO [09:00 5/23] |
| Ruby on RailsやPHPなどOSSのビジネス活用を推進する業界団体が7月に発足 [09:00 5/23] |
|
日本ユニシス、エンタープライズサーバの大型機/中型機を販売開始 [09:43 5/23] エンタープライズ |
|
2011年下半期国内自動車駆動用蓄電池市場、リチウムイオン蓄電池が急成長 [09:42 5/23] 経営 |
|
ゴールドウイン「MXP BIZ シャツ」、汗の臭い消す素材でクールビズに最適! [09:38 5/23] ライフ |
|
Google、Motorola Mobility買収を完了 - CEO交代 [09:36 5/23] 経営 |
|
「東京ソラマチ」にこだわりレザーアイテムを扱う工房併設「kissora」誕生 [09:35 5/23] ライフ |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。