2017-04-11 34 views
0

openclのアプリケーションにAMD Radeon Proデュオを使用しています。 これはDual Fiji GPUを搭載していますが、Cross Fireを1つのデバイスとして動作させるにはどうすれば設定できますか?私はデバイス計算ユニットをチェックするためにopenclでclgetdeviceinfoを使用していますが、各fiji GPUに64を表示しています。AMD Radeon Proのクロスファイアを有効にする方法DUO

2つのGPUSに合計128個の計算ユニットがあります。どのようにCrossfireを使用してそれらを使用するのですか?

答えて

2

OpenCLにはデバイスフュージョンがありますが、デバイスフュージョンはありません。デバイスは効率のためにメモリを共有できますが、シェーダは結合できません。

  • プリフェッチ命令(グローバルキャッシュのGPU?)
  • clEnqueueAcquireGLObject(GPUのバッファをカーネルで

    • アトミック機能:

      はまだ2つのGPU間で同期することはできませんまた、いくつかの機能がありますか? )

    • clCreateBuffer(どのデバイスmemorryそれは我々が選択することはできません?選ぶん。)
    • clEnqueueTask(このタスクは行くのですか?)

    エンコード作業を2つに分割し、両方のGPUで実行する必要があります。ドライバーが問題を抱えている場合は、クロスファイアを無効にする必要があります。これは、GPGPUエンコーダを書くよりも難しいはずはありません。

    しかし、pci-eを2回通すのではなく、1つのデバイスだけにデータをコピーし、そのバッファから別のGPUにデータの半分をコピーする必要があるかもしれません。 GPU間接続はpci-eより高速でなければなりません。

  • 関連する問題