d3d:d3d12:multiadapter
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
d3d:d3d12:multiadapter [2015/09/20 16:04] – oga | d3d:d3d12:multiadapter [2015/09/21 03:57] (現在) – [Adapter の列挙] oga | ||
---|---|---|---|
行 19: | 行 19: | ||
- BIOS -> Advanced 等から Integrated Graphcis を選択 | - BIOS -> Advanced 等から Integrated Graphcis を選択 | ||
- Integrated GPU (iGPU 等) の有効化を行う | - Integrated GPU (iGPU 等) の有効化を行う | ||
+ | |||
+ | |||
+ | ===== 非対称 Multi-Adapter の概要 ===== | ||
+ | |||
+ | - Adapter を列挙して、それぞれ ID3D12Device を作成。 | ||
+ | - 各 Device 毎にリソースの転送や Object の生成等を行う。Device を跨いで Object の使い回しはできない。 | ||
+ | - 同期用に Device 間で共有可能な Fence の作成 | ||
+ | - 転送用に Device 間でどちらからもアクセス可能な Shared Resource を作成 | ||
+ | - Device 毎に CommandQueue , CommandList それぞれ作成して実行 | ||
+ | - それぞれの Queue では Shared Fence を使って完了待ちが可能 | ||
+ | - 結果を Shared Resource を通して合成 | ||
===== Adapter の列挙 ==== | ===== Adapter の列挙 ==== | ||
+ | |||
+ | |||
+ | <code cpp> | ||
+ | IDXGIFactory1* | ||
+ | CreateDXGIFactory( IID_PPV_ARGS(& | ||
+ | |||
+ | for( unsigned int ai= 0 ; ai< MAX_ADAPTER ; ai++ ){ | ||
+ | IDXGIAdapter1* | ||
+ | if( ifactory-> | ||
+ | break; | ||
+ | } | ||
+ | ~ | ||
+ | } | ||
+ | ifactory-> | ||
+ | </ | ||
+ | ===== Shared Resource の作成 ===== | ||
+ | 共有可能な Object は、Resource, | ||
d3d/d3d12/multiadapter.1442732681.txt.gz · 最終更新: 2015/09/20 16:04 by oga