DirectCompute
[Wikipedia|▼Menu]
□記事を途中から表示しています
[最初から表示]

また、Root Signatureの指定や、Rasterizer Ordered View (ROV) に対応するハードウェア上でのROVオブジェクトの使用などが可能となるcs_5_1プロファイルが追加されている[8] [9] [10]
コンピュートシェーダー

アプリケーションでDirectComputeを使用する場合、Direct3D 11 APIもしくはDirect3D 12 APIを通してGPUデバイスを利用することになる。プログラムの記述にはHLSLと呼ばれるシェーダー言語(シェーディング言語)を使用するが、これはDirect3Dの頂点シェーダーやピクセルシェーダーといったグラフィックスパイプライン記述用に使われている言語でもある。GPGPU用のシェーダープログラムはコンピュートシェーダー[11]と呼ばれ、グラフィックスパイプラインとは独立して動作する。HLSLのコンピュートシェーダーはCUDAやOpenCLのカーネル関数(並列実行単位)の記述に非常によく似ている。なおDirect3Dの競合APIであるOpenGLでは、バージョン4.3でDirect3D同様のコンピュートシェーダーを導入した(OpenGLではコンピュートシェーダーの記述にGLSLを使用する)。

DirectComputeおよびコンピュートシェーダーがCUDAやOpenCLと比較して優れている点として、Direct3Dリアルタイムグラフィックスパイプラインとの連携がしやすい(シミュレーションの実行と可視化に向いている)、Direct3D/HLSLをすでに利用している場合は修得が容易である、などが挙げられる。また、マイクロソフトプラットフォーム専用という制約はあるが、逆にDirectX 11/DirectX 12対応でさえあればいかなるデバイスでも動作するというメリットがある。
ダウンレベルハードウェアでの実行

前述のようにDirectX 10.x世代のGPUであってもDirectX 11 APIを使ってDirectComputeを実行することができるが、DirectX 11フル対応のGPUと比較して実行可能条件にいくつかの制約があるため、使用する際は注意が必要となる[12]。なお、DirectX 10.x(シェーダーモデル4.x)対応のコンピュートシェーダーはDirectCompute 4.x、およびDirectX 11(シェーダーモデル5.0)対応のコンピュートシェーダーはDirectCompute 5.0とも呼ばれる[13]

倍精度浮動小数点数サポートに関しては、DirectCompute 4.xでは完全に不可能だが、DirectCompute 5.0では任意対応となる。
D3DCSX

Direct3D 11用のマイクロソフト公式拡張ライブラリとしてD3DX 11が存在するが、その中でもさらにDirectCompute(コンピュートシェーダー)の拡張ライブラリとしてD3DCSXが存在する[14]。D3DCSX 11にはFFTおよびスキャンアルゴリズムが実装されている。
採用事例

BattleForge
(英語版) [15] [16]

S.T.A.L.K.E.R.: Call of Pripyat [17]

ロスト プラネット 2 [18]

Battlefield 3 [19]

Battlefield 4 [20]

DiRT 2(英語版) [21] [22]

DiRT 3(英語版) [23]

DiRT Showdown(英語版) [24]

メトロ2033 (Windows版) - Diffusion-based DoF (depth of field) [25] [26]

トゥームレイダー (2013年のゲーム) - AMD TressFX [27] [28] [29] [30]

Call of Duty: Ghosts - NVIDIA HairWorks [31]

C++ AMP詳細は「C++ AMP」を参照
脚注[脚注の使い方]^ AMDのGPGPU戦略は新章へ - ATI Streamの展望、DirectX Compute Shaderの衝撃 (4) 今後のGPGPU動向は? 。マイナビニュース
^ASCII.jp:GPGPUをWindowsでサポートする「DirectCompute」 (2/2)|あなたの知らないWindows
^ DirectCompute 。NVIDIA Developer
^「CUDAとは?」 - NVIDIA社 (2011年1月3日確認) [リンク切れ]
^Nigel Dessau, senior VP and CMO at AMD, about DirectCompute - AMD社 (英語、2011年1月3日DirectComputeの記述は確認できず) [リンク切れ]
^ What is Direct3D 12? (Windows)
^DirectCompute in DirectX12: Innovations from the Game Space
^ Shader Model 5.1 (Windows)
^ HLSL Shader Model 5.1 Features for Direct3D 12 (Windows)
^ Hardware Feature Levels (Windows)
^ コンピュート シェーダーの概要 。Microsoft Learn
^ダウンレベルのハードウェア上のコンピュート シェーダー
^ Compute Shader Overview - Win32 apps 。Microsoft Learn
^ D3DCSX 11 Interfaces (Windows)
^BattleForge - AMD


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

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