85. Green 500 Little List (2010/7/5-7)
Green 500 の数字がでました。 GRAPE-DR は今回 Top 500 にははいってない
ので、Green 500 のリスト自体にはのらないのですが、昨年から Little List
という、過去 18ヶ月に載る性能のものなら登録してよい、というリストが
できたのでそれに申請したところ、 7/4 深夜にリストが更新されて
無事一位になりました。システムとして10位までにくるものをあげると
1 815.43 GRAPE-DR accelerator Cluster
2 773.38 QPACE SFB TR Cluster, PowerXCell 8i, 3.2 GHz
5 536.24 BladeCenter QS22 Cluster, PowerXCell 8i 4.0 Ghz
9 492.64 Dawning Nebulae, TC3600 blade CB60-G2 cluster, Intel Xeon 5650/ nVidia C2050
10 458.33 BladeCenter QS22/LS21 Cluster, PowerXCell 8i 3.2 Ghz / Opteron DC
16 431.88 Mole-8.5 Cluster Xeon L5520 2.26 Ghz, nVidia Tesla
17 418.47 iDataPlex, Xeon X56xx 6C 2.8 GHz
20 378.77 Blue Gene/P Solution
35 368.07 BladeCenter HS21 Cluster, Xeon QC HT 2.83 GHz
41 345.2 Cray XE6 12-core 2.0 GHz
というような感じで、GRAPE-DR, QPACE はほぼ同様な数字、QPACE と同じ
PowerXCell 8i を使っても IBM のブレード QS22 では2/3程度に電力効率が落
ち、QS22/LS22 の Tribrade だとさらに落ちて、それと Fermi ベースの
Nebulae がほぼ同じ、それとあまり変わらないところに Xeon X5660 ベースの
IBM iDataPlex、その後に BG/P、Xeon がもうひとつあって Magny-Cours の
Cray XE6 となってます。
Cray の数字は、12コアプロセッサのくせに 8470 コアで測定、と書いてあって
なんだか謎ですが、まあ、ソケット当り 220W くらいなのでこんなものでしょ
う。iDataPlex は Westmere Xeon でソケット当り 140W になっていてちょっと
本当かよ?という気もしなくもありません。まあ、でも、32nm だし、TDP 95W
なのでありえないわけではないと思います。
GRAPE-DR の数字は、前にも書いたようにまだかなり改善の余地があるもので、
あと 1.5倍程度はあげないといけません。GRAPE-DR のことはここではよいこ
とにして他のシステムをあげつらうと、 32nm の Westmere-EP、 45nm の
Magny-Cours に比べて 65nm の PowerXCell がまだ倍近い電力性能比を出している
ということ、また Fermi + Xeon X5650 の Dawning Nebulae は GPU をつけ
ても Xeon X5660 だけのシステムに比べて殆ど電力性能比が上がっていない
ということ辺りが興味深いところです。
ちなみに、過去の歴史をみてみると、 x86 での Green 500 のベストの数字は
Nov 07 157MF/W Xeon 5335
Jun 08 266MF/W Xeon 2.5GHz
Nov 08 266MF/W Xeon 2.5GHz
Jun 09 273MF/W Xeon 5560
Nov 09 341MF/W Opteron 2.5GHz
Jun 10 418MF/W Xeon X5660
で、 65nm Clovertown の 5300 系から 45nm Nehalem-EP になったところで大きく改善し、
さらに 32nm の Westmere EP であがる、となっており、逆にいうと 32nm の
うちはこれ以上はなかなかあがりません。 AMD は 32nm になるのがもうすぐ
なので、そうすると 500MF/W 程度を実現してきそうです。世代毎の改善は大
体 1.6 倍なので、22nm になると Intel は 650 MF/W 程度、AMD は 800MF/W
程度ということになります。この辺まできてやっと 65nm の PowerXCell と同
等であり、大体3世代、4倍の効率差がある、ということになります。
ちなみに、理研次世代の SPARC64 VIIIfx は Typcal 消費電力が 58W (Typ at
30C)と
のことで HPL 動かすともっと大きいのではないかと心配になりますが、
楽観的に60W 程度ですんで、システムもチップの 1.6 倍程度ですんだとする
と 100W で、 9割効率で 1.1Gflops/W となって 22nm の Intel、まだ 32nm
であろうと思われる AMD よりかなり良くなります。まあ、その、楽観的な数
字ですが、電力面からは極めて優秀なプロセッサである、ということです。
もちろん、30度まで冷やせば、、、ということで、空調に通常よりかなり電力
がかかるはずなので、システム全体としては?というところもあります。
あ、でも、 AVX というものがあるので、 Intel に関してはチップの電力をあ
まりあげないで浮動小数点性能が倍になる可能性はあります。そうすると 32 nm で
700-800MF/W、22 nm では 1.2GF/W 程度になります。2012 年には 22nm にな
るでしょうから、なかなか厳しいものはあります。
GPGPU は Fermi がなかなか難しい状態になっているので今後が不透明ですが、
明らかなのはこのままでは x86 に比べてよいところがない、ということです。
84 では、Fermi を使うことで Xeon だけに比べて 1.6 倍程度は
電力効率が上がっているのでは?と書いたのですが、そんな大きな効果はなく
て実際の向上は 14% しかなかったわけです。これは、松岡さんがどこかで指摘
していたように、行列サイズが妙に小さいために実行効率が低いことが原因の
一部ではあり、あと 2-3 割は上がる余地があると思います。しかしこれは半導
体技術1世代分にもならないわけで、現状の Fermi や、そこから技術を外挿し
たものには将来性はない、ということになるでしょう。
GRAPE-DR については、もうちょっとチューニングができれば 2012 年までは
x86 には負けないわけで、その辺までには後継の計画を立ち上げたいところで
す。45 nm を使っても現在の比べて電力当り性能を単純なスケーリングで 3-4
倍、色々設計のおかしいところを直すと6倍程度にできるので、、、
(以下 7/7追記)
というわけで、前に書いた通りプレス発表をさせていただきました。結構反響
が大きく、「世界一」になることの意味というのはこういうことかと思わされ
ました。この重要性というのはもちろん海外のグループも良くわかっていて、
QPACE のグループは一体なにをしたのか知りませんが、前回の 732 Mflops/W
から 773Mflops/W まであげてきています。このために、記事にした
ところによって、前回の一位を 5% 上回ったと書いてあったり 13% と書いて
あったりしますが、「前回の一位」
2008 年に国立天文台のスパコン調達をやった時にも大問題だったのですが、
最近のスパコンでは価格よりも電力消費がサイズを決めかねない状態に
なっています。天文台の場合、電力を 300KW 以下に、というのが上層部から
きていた条件で、これは天文台の三鷹キャンパス自体の総容量の余裕を相当
食いつぶしてなんとか認めてもらったものです。
原理的には電源こみでどこか別の場所に設置して、レンタル経費に電気代もい
れる、というやり方もありますが、そうするとそこからSINET につなぐのはど
うするかとか、その回線費はどうするかとかいう話になってそれはそれでまた
大変です。
このような電力消費の増加が起こっている基本的な理由は、過去20年の間に
マイクロプロセッサの消費電力が恐ろしいほど上がった、というものです。
80486 の消費電力は 5-10W のレベルでした。現在の高性能マイクロプロセッサ
では 130W、GPGPU にいたっては 200W 以上になっています。電気代は大雑把
にいって1W1年で100円なので、これらは5年間で 7-10万円、システム全体や空
調をいれるとその3倍程度になり、ハードウェアの値段と電気代が大差なくなっ
ています。常時稼働させるわけではない個人のゲーム用ならともかく、
365日24時間基本的には計算しつづけるスパコンで使うには大きな問題がある
ものになっているわけです。
GRAPE-DR も、かなり汎用化したせいとはいえ消費電力当りの性能が GRAPE-6
に比べてあまり上がっていないことは大きな問題です。 GRAPE-6 プロセッサ
チップは 30Gflops を 10W 程度で実現しましたが、 GRAPE-DR では倍精度で
は 200Gflops を50W でやっと実現しており、電力効率では倍も変わっていま
せん。回路規模は 25倍程度、クロックは5倍ですから125倍の性能になってい
いところが7倍しかなくて、汎用化して、特に倍精度演算で比べると 15倍程度
トランジスタ効率がさがっているわけです。
逆にいうと、トランジスタ効率の低下がなければ電力効率で 20倍程度は実現で
きたはずということになります。半導体技術は3世代しかし違わないので、古典
的な CMOS スケーリングからくる効率向上は大体20倍であり、少なくとも
250nm から 90nm までは半導体技術はそういう進化をしてきた、ということで
す。これは、逆にいうと、マイクロプロセッサの進歩が何か異常なものだった、
ということです。どう異常だったかというのは簡単で、 CMOS スケーリングで
普通にできる以上に無理をしてクロックをあげてきてたわけです。大雑把にいっ
てデザインルールと動作クロックは反比例するはずで、 1μm の時に
50-100MHz だったわけですから 180nm の Pentium 4 では 500MHz がせいぜい
で普通なら 2GHz なんかで回るはずがないのを、色々無理をしてクロックをあ
げたわけです。無理をしたのは並列度をあげないで性能をあげるためにがんばっ
たからで、まあ、その、パーソナルコンピュータにはそういうのも必要だった
のかもしれないですが、 HPC に使うプロセッサをそんなふうに作るべきでは
なかった、というだけの話です。
まあ、その、問題は、そういうのを極めて電力効率の悪いものに比べても
使いものになるような HPC 向けの汎用プロセッサを作るのは容易では
ない、というか、そもそもプロセッサを作ること自体が予算的に容易では
ない、ということなわけですが、、、