DirectX 11 Driver Command Lists

NVIDIA GeForce GTX 460 でドライバを v270.61 に入れ替えたら
ついに! Driver Command Lists が Yes になっていました。
Direct3D 11 が出てから1年半、ようやくフル機能使えるようになりました。

関連エントリ
OpenGL 4.1 GeForce GTX 460
DirectX 11 / Direct3D 11 と RADEON HD 5870 の caps
Direct3D11/DirectX11 GeForce の ComputeShader とドライバ

DirectX 11 Driver Command Lists」への3件のフィードバック

  1. itouh2

    はじめまして。いきなりの質問ですいません。
    ComanndListがDriver側で処理されるとどういうメリットがあるんでしょうか。
    DeferredContextの負担が軽くなるんでしょうか。

  2. oga 投稿作成者

    各スレッドがそれぞれ非同期に Push Buffer を作れて、
    あとから直接実行出来るというのが Direct3D 11 が
    目指してた目標でした。
    HW と Driver 両方のサポートが必要となります。

    Driver と HW が対応してないうちは D3D によるエミュレーション
    となり、描画コマンドの履歴を保存しておいて、実行時に
    Push Buffer に展開しているようです。
    どこかでそんなスライドを見た覚えがあります。

    メモリコピーやコマンド生成のオーバーヘッドがあるので
    CPU 側の負荷になると考えられます。
    ただぜんぜん試していないので、本当に違いがあるのか、
    どの程度効率が違うのかなど、具体的に
    お答えできるデータは無いです。

  3. itouh2

    なるほど、CPU側システムメモリにコマンドリストをためる、はきだす、という処理がなくなる分
    処理が軽くなりそう、というふうに理解いたしました。

    お答えいただきありがとうございます。

コメントは停止中です。