フォト

Google AdSense


  • AdSense
無料ブログはココログ

« 明日から | トップページ | NVIDIA VRWorks関連の360度スティッチ、オーディオSDK追加 »

2017.05.08

マルチGPUでアプリケーションを複数起動するケースの話

AMDのGPUOpenでContent Creation Tools and Multi-GPUって記事が出ていますね。

Content Creation Tools and Multi-GPU
http://gpuopen.com/content-creation-tools-multi-gpu/

マルチGPU環境でGPUを使うアプリケーションを複数起動するケース、ゲーム開発者だとゲームエンジンとDCCツールを同時起動するけど、それぞれ使用するGPUを分散することで同時起動で快適に使いたいということなんかですかね。あとは、ゲームエンジン側ともう1つでGPUベースのコンバート(テクスチャ圧縮とか)走らすとかですかね。

この時に、Direct3D(DXGIがある世代の11 or 12)とVulkanでそれぞれ使用するアプリケーションが被らないようにDirect3DならDXGIの層、VulkanならVK_KHR_get_physical_device_properties2とVK_KHX_external_memory_capabilitiesの2つの拡張を使用してデバイスのLUIDを取得することでどちらのAPIから見てもシステムから見えるGPUのデバイスを一貫したIDで確認できるわけね。

これを使用することで、お互いの使用するGPU分ける実装するわけね。この拡張はほかのベンダーも対応していれば(拡張の提出者見た感じではNVIDIAは対応してそうだけど)同じテクニックが使えそうですし、IntelとNVIDIAのOptimusみたいな環境でも良さそうではありますね。

サンプル
https://github.com/GPUOpen-LibrariesAndSDKs/VkD3DDeviceMapping

« 明日から | トップページ | NVIDIA VRWorks関連の360度スティッチ、オーディオSDK追加 »

Programming」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« 明日から | トップページ | NVIDIA VRWorks関連の360度スティッチ、オーディオSDK追加 »