最近の話題 2010年7月24日

1.続 NVIDIAのメインストリームGPU GF104

  先週の話題で紹介したNVIDIAのGF104に関して2010年7月21日のSemiAccurateにCharlie Demerjian氏が書いています。それによると,オリジナルのFermiであるGF100のチップサイズは529o2であるのに対して,GF104のチップサイズは367mm2とのことです。

  ATIのトップエンドのHD5870を使うボードは$350程度に対して,GF104を使うGTX460ボードは$250程度と売値が$100程度安いのに,チップサイズはHD 5870/Cypressの334o2より大きく,アンチNVIDIAのCharlieは儲かるはずがないと貶しています。

  それはともかく,GF104は48CUDACore×8=384コアで,512コア搭載のGF100の3/4のCUDAコアです。また,GDDR5メモリチャネルは8チャネルで,こちらは2/3です。つまり,CUDAコア数の比率で行けば約397o2,メモリチャネルの比で行けば352mm2という計算になるのですが,Charlieの言う数字が正しいとすると,367o2というのは思ったほど小さくなっていません。SFUやテクスチャユニットなどが相対的に増えた(チップ上の個数は同じですが,CUDAコア数は3/4だから)ということはありますが,各CUDAコアでの倍精度浮動小数点演算を 除き,ECCを除いたというにしては,ちょっと物足りない感じです。

  Charlieの言うように,10%大きいチップで$100安く売るのは大変です。

2.NVIDIA Fermiのキャッシュの効果

  2010年7月21日のマイコミがFermiのキャッシュの効果について報じています。

  あまり意識していなかったのですが,GPGPUのキャッシュやローカルメモリはCPUの1次キャッシュと同程度の容量ですが,マルチスレッドの数が桁違いなので,GPGPUでは1スレッドに1キャッシュラインが割り当てられるかどうかというレベルなんですね。そのため,全スレッドで共通に使うデータを入れるという用途にしか使えないし,全スレッドがそのデータを有効に使うようにプログラムしないと性能が出ないんですね。

  報道されている富士通の成瀬氏の発表では,対象とした姫野ベンチマークでは,CUDA化してキャッシュを使うだけで50%性能が向上し,先走るスレッドを抑えてキャッシュの内容を全スレッドで使うようにすると,シェアードメモリを使って頑張ってチューニングしたプログラムとほぼ同じ性能がでる。しかもプログラムはシェアードメモリチューニング版はオリジナル版のCUDAコードに164行を追加しているのに,キャッシュチューニング版はわずか5行の追加で,開発の手間としては,大幅削減と思われます。

  勿論,姫野ベンチは一つの例で,他のアプリが同様にうまく行くという保証はありませんが,全スレッド共通の変数をキャッシュに載せて,全スレッドでちゃんと使えるように同期を掛けるという程度の手間で,シェアードメモリを使ってギンギンにチューニングするのに近い性能が得られるとすれば,これは朗報です。

  また,Fermiの1次キャッシュのアクセス時間が約70ns,2次キャッシュのアクセス時間が約250ns,GDDR5のデバイスメモリのアクセス時間は約400nsと書かれています。CPUの場合,1次キャッシュのアクセスは1ns以下,2次キャッシュで も10nsを超えない程度なので,それに比べるとメチャ遅のキャッシュですが,超マルチスレッドなのでレーテンシは隠ぺいできているということでしょうか。しかし,レーテンシはともかく,次々と切り替えられるワープからのアクセスをパイプライン的に処理する必要はあると思うのですが,この辺はどうなっているのでしょうね。

  400nsのデバイスメモリを250nsのキャッシュで高速化するというセンスも良くわかりません。まあ,これらの測定はCUDAコアからのアクセス 時間の測定なので,物理的なキャッシュアレイのアクセス時間だけでなくワープのスケジューリングの影響を含んだ値になっているのかも知れません。

3.IBMが新メインフレームzEnterprise 196を発表

   2010年7月22日にIBMは新メインフレームシステムzEnterpriseを発表しました。目玉は二つで,一つはzEnterprise 196と呼ぶ新メインフレームで,前世代のz10に比べて最大1.6倍の性能と述べられています。そして,もう一つの目玉はPOWER7やx64を使うxシリーズのブレードを収容するzBX(z Blade Extension)が接続できるようになり,Unified Resource Managerと呼ぶツールで,メインフレームも含めて一体となった仮想化システムとして管理,運用ができるようになっている点です。なお,メインフレームとブレード間の接続は10GbEとのことで特別な接続ではありません。

  新規開発のzEnterprise 196ですが,2010年7月23日のThe Registerがチップ写真を含めて詳しく報じています。それによると,CPUは4コア,5.2GHzクロックで,IBMの45nm SOIプロセスを使い,512.3mm2のチップに1.4BTrを集積しています。そして,信号バンプ数は1134。キャッシュは各コアに64KB L1I$,128KB L1D$と1.5MBのL2$を持っています。そして,4コア共通の24MBのeDRAMのキャッシュを搭載しています。これはPOWER7と同様です。

  CPUコアは前世代のz10からマイナーチェンジですが,100命令を新規に追加し,パイプラインの制御もある程度改良されているとのことです。そして命令デコードは3命令並列で,実行パイプラインは,整数2本,浮動小数点1本,ロードストア2本,10進浮動小数点1本です。また,暗号と圧縮用のコプロセサを2個搭載しています。

  このCPUチップを96mm角のMCMに6個搭載し,2個のSCチップで接続を行っています。SCチップも同じ45nmテクノロジで製造され,チップサイズは478.8mm2で1.5BTrを集積しています。SCチップは6個のCPUチップの接続ポートと3つのMCM間接続ポートを持ち,各ポートのバンド幅は40GB/sとなっています。そして,SCチップはeDRAMで出来た96MBのL4キャッシュを搭載しています。このMCMの消費電力は1800Wとなっています。10cm角で1.8KWですから,ホットプレートよりずっと熱いです。ということで水冷のオプションがあります。

  そしてBookと呼ぶユニットには1個のMCMの搭載で,最大構成のシステムは4冊のBookで構成されます。zEnterpriseのメインメモリは,最大3TBで,IBMがRAIM(Redundant Array of Independent Memory)呼ぶRAID構成になっており,RAIDのように1ユニットが壊れても,データが復元できるようになっています。使用できるメモリは3056GBですが,RAIM構成のため,実際には3840GBのメモリが搭載されているとのことで,つまり4ユニットに1ユニットが冗長部分でついているという計算になります。

  また,zEnterprise 196では全てSER耐性を強化したラッチを使っているとのことで,RAIMと併せてメインフレームの信頼性をさらに引き上げています。

  zEnterprise 196はM15,M32,M49,M66,M80というモデルがあり,それぞれの数字はシステム全体のPU(各種処理に使えるコアの数)を表しています。最大モデルのM80は4MCMで物理的には96PUなのですが,zOSやLinux,あるいはDBやJavaなどの処理に使えるのは80PUで,残りはI/Oプロセサなどに使われたり,故障に備えるスペアになっています。

 2010年7月23日のThe Registerの別の記事によると,zEnterprise 196の性能は1PUで1,500MIPS,最大システムで50,000MIPSとのことです。

4.MicrosoftがARMのアーキテクチャライセンスを取得

  2010年7月23日のCNETなどが,MicrosoftがARM社のアーキテクチャライセンスを取得したと報じています。ARMのライセンスは特定の設計のコアの使用に関するライセンスと,ARMアーキテクチャに準拠するコアを独自に設計できるアーキテクチャライセンスがあり,QualcommやMarvellなどはアーキテクチャライセンスを取得しています。また,公表されていませんが,A4を作っているAppleもアーキテクチャラインセンスを得ていると見られています。

  MicrosoftがARMのアーキテクチャライセンスを取得した意図については,サーバ用,あるいはモバイルデバイス用,さらにはARMベースのNetbookなどにWindowsが載るというようにいろいろの観測が流れていますが,真相は不明です。

  但し,Bing用のOSを開発するとか,NetbookにWindowsを移植するというソフト開発だけなら,現在のMicrosoftとARMの協力関係の範囲で実施可能で,アーキテクチャライセンスを取得する必要はないと思われます。シャープに製造を委託したKinは大失敗のようですが,やはり,このような分野でAppleを追撃するというような意図があるのではないでしょうか。

 

inserted by FC2 system