最近の話題 2012年3月24日

.1.続 NVIDIAのKepler GPU

  2012年3月22日のReal World TechnologiesがKeplerの印象という記事を載せています。

  初代のFermiであるGF100はGDDRメモリやレジスタフィアルなどにECCを付け,倍精度浮動小数点演算も単精度の1/2という高い比率のFlopsが得られるという,かなり,HPC向けの機能の充実した設計であったのですが,そのためにチップが肥大化してしまいました。GF104では単精度のFlopsを1.5倍に引き上げ,ECCのサポートなどを止めることで,グラフィックス性能を引き上げ,かつ,コストダウンを図りました。

  今回発表されたKepler(GK104)は,このGF104の路線の延長で,グラフィックスに使う単精度のピーク演算性能は3TFlopsに増強されていますが,倍精度の演算性能は,その24分の1という低い性能だそうです。倍精度をサポートしているのは,Fermi系のGPUで倍精度を使うソフトがあり,それが性能はともかく,そのまま動くという互換性の観点からと見られます。

  RWTの記事では1次キャッシュとシェアードメモリのバンド幅を比較していますが,GF100では1.0B/Flopのバンド幅が確保されていたのに対して,GF104では0.67B/Flop,GK104では32ビット幅でのアクセスの場合,0.33B/Flopに減少しており,データの供給路が細くなっています。レジスタファイルは128KBから256KBに拡張されており,1つのワークアイテムが使用できるレジスタファイルは85.33Bから128Bに増えているので,多少は1次キャッシュやシェアードメモリへのアクセスを減らすことができると思われますが,データの供給や演算結果の格納が厳しくなっていることは確かです。

  一方,AMDのGCN(HD7900シリーズ)コアではシェアードメモリに1.0B/Flopと,これに加えて1次キャッシュの0.5B/Flopと,合計では1.5B/Flopのバンド幅があり,GK104 の5倍近いバンド幅を確保しています。

  また,GK104ではDVFSを採用しており,負荷が低いときにはクロックと電源電圧を下げて,消費電力を下げます。また,シェーダーアレイ部はパワーゲートがあり,アイドルの場合は電源を切ってリーク電流を減らすと書かれています。

  Webに見られる各種のベンチマーク結果をみると,GK104を搭載したGTX680はAMDのHD7980に勝つケースが多く,評判は良いようです。しかし,GTX680は発売後数時間で売りきれ,後続の商品がいつ入荷するか分からないという状況で,ペーパーローンチに近いという非難も上がっています。また,GTX680のモノが無いので,HD7980の値段も下がっていないという報道もあります。

  今回発表のGK104はグラフィックス向けなので,HPC用にはGF100に対応するGK100?が発表されると見られています。GF100と同様に,単精度の1/2の倍精度演算性能を維持するか?B/F比はどうなるか?メモリは256ビット幅か384ビットに拡張されるか?ECCは当然,付くんでしょ?とかいろいろと知りたいことはありますが,答えは5月のGTCまで,お預けです。

2.筑波大のHA-PACSスパコン

  2012年3月29日のマイナビニュースが筑波大の新スパコンHA-PACSのレポート記事を掲載しています。

  計算ノードは,Xeon E5-2600 2ソケットに4台のM2090 GPUを接続しています。東工大のTSUBAME2.0ではCPUがWestmere-EPで,2ソケット合計でPCI Expressが72レーンしかなかったので,x16レーン3本をGPUに割くのがやっとで,M2050 GPUを3台接続になっているのですが,筑波大はSandy Bridge-EPで合計80レーンのPCI Expressがあり,x16レーン4本をGPUに使って4台のM2090を接続しています。

  ベースクラスタ部は,この計算ノード268ノードをQDRのInfiniBandで接続しており,ピーク演算性能は802TFlopsとなります。メモリはCPU側に34TB,GPU側に6.4TBが実装されています。ファイルシステムはDDNのSFA1000で容量は504TBです。ピーク演算性能と比べるとファイルの容量が少な目ですが,これは結果を長く保存するのではなく,自分のサーバのファイルに移動して貰うことで対応するとのことです。ファイルシステムと計算ノード群の接続は×4QDRが16本なので,総バンド幅は128GB/sとなっています。京では11PFlopsの演算性能に対してローカルファイルのバンド幅は1TB/s程度ですから,これより若干高めの比率となっています。

  HA-PACSで特徴的なのは,2012年度に完成予定のTCA部です。TCA部の計算ノードはXeon E5 2ソケットに4台のGPUを接続という点はベースクラスタ部と変わりませんが,GPUにはKeplerが使用される予定です。そして,TCA部は64計算ノードの予定で,HPC向けKeplerの性能にもよりますが,ベースクラスタ部と合わせた全体性能は1PFlops超となる予定です。

  TCA部の構成は,まだ,検討中ですが,現在の案では,PEACH2というPCI Expressを4ポートもつルータチップをFPGAで開発し,これで4個〜16個の計算ノード間を繋ぎ,16台〜64台のGPUを共通メモリ空間に配置して,PEACH2に内蔵したDMA機構で,CPUの介在なしに直接データ転送を行うことになっています。

  GPUのGDDRメモリはバンド幅は高いのですが,容量が小さく,大きなメモリを必要とする処理では,GPU間やCPUと別ノードのGPUとのデータ転送が必要になります。このとき,ベースクラスタの構成では,CPUやInfiniBandを介しての転送になるのに対して,TCA部の構成ではPCI Expressで直接にデータのやり取りができ,転送のオーバヘッドを大きく減らすことができます。

  この1PFlops超のシステムのお値段は10億円以下とのことで,京の総予算の1/10以下,京の開発費や建物などの費用を引いても1/5以下と,(時期も1年くらい違いますが)大量生産の市販コンポーネントを使っているので,かなり安上がりです。

  ベースクラスタ部の消費電力は,機器の定格の合計では405kWですが,60%程度の稼働率での実測では190kWと,かなり小さい値になっているとのことです。これにはM2090 GPUのDVFSが効いているとのことです。M2090の定格は225Wですが,アイドル状態では30Wまで減るとのことです。先に紹介したRWTの記事で,Kantar氏はKeplerがDVFSを使った最初の品種と書いていますが,Fermiを使うM2090でもDVFSが実装されているようです。

  HA-PACSは素粒子,原子核,宇宙などの分野での研究に使用されることに加えて,TCA部の開発で,密結合アクセラレータでどのようなメリットが生まれるかを,実際に使って検証し,また,新しい計算法を考えるなど,ExaFlopsに向けの知見の獲得やソフトウェアの開発を行うことを目標としているとのことです。

@981413

inserted by FC2 system