現在開催中の電子書籍ストアセール情報まとめ

家電・PCなどのAmazonセール情報

注目の大規模セール・速報など (12/12更新)



AMDがBitcoin採掘でNvidiaを打ち破る、差はいつ埋まるのか(1/3)

ちと古い話題になりますが(2013/4)、ビットコインの採掘でRadeonが良い結果を叩き出している件について、EXTREMETECHが検証記事を出していました。3ページあるので、1ページずつ訳していきたいと思います。

元記事はこちら。
AMD destroys Nvidia at Bitcoin mining, can the gap ever be bridged? | ExtremeTech

結構意訳した部分があるので、間違いなどあれば指摘頂けると有難いです。

f:id:hassyX:20131210120805j:plain

はじめに

もしあなたがゲーミング環境でのGPU性能に詳しく、そしてビットコインの採掘に興味を持ち始めていたとしたら、ゲーミング市場での実情とは真逆に、AMDがパフォーマンスリーダーであるという事実に驚くだろう。

これは、PCグラフィックス市場において、AMDのHD7000シリーズがNVIDIAのGK104(Geforce 600シリーズ)に後塵を喫していた事実とはまったく対照的だ。ビットコインの採掘においては、状況はほぼ完全に逆転する。Radeon HD7970は、550M/秒でのハッシュ値計算が可能だが、GTX 680はおおよそHD7970の1/5の速度しかない。

Bitcoin Wikiに、この性能差を説明しようとした記事があるのだが、2011年以来更新されていない。その記事は、FermiとAMDのVLIWアーキテクチャを参照し、AMDの優位がNVIDIAよりもはるかに多いシェーダコアを有するためである、と結論付けている。

この結論は不正確であり、GTX 680がはるかに多くのコアを有するにもかかわらず、ビットコインの採掘でGTX 580よりも遅い理由を説明できていない。

この記事では、改良されたCUDA MinerがAMDとNVIDIA間のパフォーマンス差を大幅にシフトするのかどうか、またNVIDIAのGPGPU性能が最近のAMDのそれに匹敵するかどうか、ということに言及し、過去の記事との違いを説明しようとするものだ。

この記事で説明しないトピックは次の通り:

  • ビットコインのバブルについて。
  • 投資機会について。
  • ASICが 来月 今夏 将来現れた時に、GPUによる採鉱市場を破壊するかどうか。

これらは重要なテーマではあるが、この記事の焦点ではない。我々はある程度まで、出力効率およびワットあたりのハッシュ生成量について議論するだろう。これらの要因は、AMDとNVIDIAの採掘パフォーマンスの比較に影響を及ぼすからだ。

採掘の仕組み

ビットコインの採掘は、SHA2-256アルゴリズムの具体的な実装である。AMDのカードがビットコインの採掘において優れている理由の1つは、整数演算性能を増強する多くの特徴を持っているからだ。これは本当に風変りである - GPUのワークロードは、テクスチャがhalf(FP16)またはfull(FP32)の精度で格納されているという理由から、歴史的に浮動小数点演算性能を重視してきた。

問題は、NVIDIAがCUDAを推し進めた時に、Geforceの主な利点としてパスワード解析を強調したという事実によって混乱させられる。G80から始まるGeForce GPUがCPUより著しく高い暗号化パフォーマンスを提供したのは事実だ。しかし、AMDのハードウェアは今、NVIDIAのそれを凌駕している

AMDのカードが、ビットコイン採掘でNVIDAを超えるパフォーマンスを発揮する第一の理由は、SHA-256アルゴリズムが32ビット整数の右ローテート命令を利用するからだ。これは、整数値がシフトされる(説明はここで)けれども、シフトによって失われたビットは元の値に再設定されることを意味する。右シフトでは、右端から消えたビットは左端に設定される。AMDのGPUは、1ステップでこの操作を行うことができる。しかし、GTX Titan以前のNVIDIA GPUでは、2回のシフトと1回の加算の計3ステップを要する。

「GTX Titan以前」と表現したが、これはNVIDIAがCompute Capability 3.5(GTX Titan と Tesla K20/K20Xでのみサポート)でファネルシフタを導入したからである。ファネルシフタはオペレーションを結合でき、3サイクルのペナルティを削減できる。これはGK104からGK110への唯一の改良点ではないので、我々は直ちにパフォーマンスがどのように改善されていくか見ていくことにする。GK110はまた、1SMX(Titanは14個のSMXを持っている)あたり最大64個の32bit整数をシフトすることができる。対照的にGK104は、1SMXあたり32個の整数のみをシフト可能で、8個のSMXブロックしか持っていない。

f:id:hassyX:20131210121400p:plain

この図は、CC 3.0とCC 3.5の間での32ビット整数シフトの機能差をハイライトしている。

AMDは、GCN(Graphics Core Next)の32bit整数演算性能を公表していない。しかし、同社はGCNが倍精度浮動小数点と同じ速度で32ビット整数値のコードを実行することを確認している。これは、1CUについて、1クロック当たりの論理的なピーク値が、32bit整数値を64個処理可能であることを意味する。これはGK104の2倍である。

それ以外のAMDの利点としては、GPUを構成する演算ユニット(CU)が膨大な数であることだ。Titanは、我々が述べてきたように、HD7970の32個のCUと比較して、14個のSMXを持っている。CU(Compute Unit) / SMXの数の方が、これらの文脈におけるコアの総数よりもはるかに重要なのかもしれない。

(次のページに続く)



GIGABYTE ビデオカード R9-290搭載 GV-R929OC-4GD

GIGABYTE ビデオカード R9-290搭載 GV-R929OC-4GD