GPGPU
[Wikipedia|▼Menu]
1999年-2000年: GPUとプログラマブルシェーダーの登場

続いて1999年GeForce 256の発売によってジオメトリエンジングラフィックスアクセラレータに統合した「GPU」という製品カテゴリが登場し、2000年11月9日にはアセンブリ言語で128個の命令のみ記述可能な原始的なプログラマブルシェーダーシェーダーモデル1.x)が登場した。2002年、GPUの固定機能シェーダーがプログラマブルシェーダーに置き換わったことでブレイクスルーが起きたと主張し、ムーアの法則を超える速度で進化するGPUのストリーム・プロセッサとしての未来を予感したIan Buckにより、再度GPUによるレイトレーシング計算の高速化についての論文が発表された[13]
2002年: シェーダーモデル2.0への進化

2002年12月20日のシェーダーモデル2.0の登場により、GPUのプログラマブルシェーダーで従来より遥かに長い命令長と浮動小数点演算が扱えるようになった直後の2003年頃からGPGPUが大々的に試みられ始め、2004年8月には世界初のGPGPU学会「GP2」(Workshop on General Purpose Computing on Graphics Processors)が開催された[14]。しかし当時は画像処理専用に作られていたGPU特有の制約(演算精度の不足や仮想メモリが扱えないなど)について酷評が相次いでいた[要出典]。またGPUメーカーは歩留まり向上のため画面表示に問題がなければ計算ミスがあってもGPUを出荷するため、計算ミスを起こすようなGPUを検品して排除する必要が生じた[要出典]。
2007年: CUDAの提供開始

その後、2005年にIan BuckらのチームがグラフィックスAPIを経由せずC言語ライクにGPGPUの処理を記述できるCUDAの開発に着手[11]し、2007年7月にCUDA 1.0を提供開始したことで、以降2008年頃からGPGPUが普及して行った[14]。CUDAが有名になったことで、NVIDIAはGPGPUでトップランナーの地位を占めることになった。GPGPUは2010年代前半以降のビッグデータブームや仮想通貨ブーム、2010年代中盤以降の人工知能ブームを下支えする存在となり、2020年代にはブームのあまりの過熱ぶりにGPU製品の供給が不足する事態まで発生している[15]
概要.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この節は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方
出典検索?: "GPGPU" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL(2015年3月)

GPUは一般的に画像処理を専門とする演算装置であり、多くの場合、CPUと呼ばれる主演算装置の制御の下で用いられる動画信号生成専用の補助演算用ICである。動画像の実時間内での生成は高速な演算が要求されるが、その多くが定式化された単純な演算の繰り返しであるためハードウェア化に向いており、GPUを設計している数社からは、高速なメモリインタフェース機能と高い画像演算能力を備えたIC製品のシリーズがいくつもリリースされている。GPUは民生用に大量生産されているため、スーパーコンピュータに用いられるベクトル型のカスタムCPUからすれば非常に安価である[6]。但し、GPGPUは完全なベクトル型として設計されていないx86等の一般的なCPUのSIMD命令と比較して高い並列度を誇りスループットが高いが、バスアクセスのためにレイテンシも大きくなることが欠点となる。従って、一定量のデータを常に流し込みながら計算させ続ける事が最も理想的な利用形態(ストリーム・プロセッシング)であり、逆にネットワークのパケット処理といった多数の小さいデータの各々に対して個別に処理を行う場合では効率は劇的に悪化する。

特に1990年代中盤以降は3D描画性能が劇的に向上し、それに伴いベクトル行列演算を中心としたSIMD演算機の色彩が強くなってきた。2000年代に入ると、表現力の向上を求めて固定機能シェーダーからプログラマブルシェーダーへの移行が進み、演算の自由度・柔軟性(プログラマビリティ)が飛躍的に増した。そこでこれをグラフィックス・レンダリングのみならず、他の数値演算にも利用しようというのがGPGPUのコンセプトである。GPGPUのコンセプトは2000年代の実験期を経て、入力データをテクスチャデータに変換して画像用のシェーダーに処理させるという回りくどい工夫[16]が必要ない汎用計算用の言語やコンピュートシェーダーが開発された後、2010年頃のビッグデータブームの波に乗り産業応用が開始され、2010年代半ばには一般化した。

最高のシングル理論演算性能を持つGPU・MIC・CPU
(2015年8月現在)種別単精度倍精度
TFLOPSTFLOPS
GPU8.6
(AMD Radeon R9 Fury X)[17]2.62
(AMD FirePro S9170)[18]
MIC2.416
(Xeon Phi 7120P)[要出典]1.208
(Xeon Phi 7120P)[要出典]
CPU1.325
(Xeon E5-2699 v3)[要出典]0.662
(Xeon E5-2699 v3)[要出典]

上記の表は 1CPU, 1MIC, 1GPU に限定した表である。なおAMD Radeon R9 295X2やAMD FirePro S10000、NVIDIA GeForce GTX TITAN ZやNVIDIA Tesla K80のようなデュアルGPUソリューションは除外されている。

2015年現在、GPUの浮動小数点演算能力は単精度で8TFLOPSをオーバーした一方で、CPUはサーバー向けでも単精度は1TFLOPS台に留まっている。GPUは構成が単純であるためにCPUよりも集積化の点で有利であることから浮動小数点演算での効率がよく、またGPU専用にローカル接続されたメモリIC (VRAM) とのバンド幅を広く備えるために、CPUと比べて性能比で安価かつ成長の伸び率が高い[19]。さらにCPUよりも電力あたりの理論演算性能(ワットパフォーマンス、Performance per Watt)が高いのもGPUの特徴である。またGPUの主な使途がゲーム(PCゲーム)と動画再生で、ゲームをしないユーザーにとって余り気味の資源ということもあって注目されている。

2015年現在におけるGPGPU対応のグラフィックスカード(グラフィックスチップ)単体製品すなわちディスクリートGPU (discrete GPU, dGPU) としては、NVIDIANVIDIA GeForceおよびNVIDIA Quadroシリーズや、AMDAMD RadeonおよびAMD FireProシリーズなどが代表として挙げられる(ただし後述するGPGPU対応APIをサポートするのはDirectX 10世代以降の製品となる)。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:101 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef