GPU対応マシンでコードを書いていますが、GPUなしのコンピュータにコードを移植する必要があります。だから私はCPUとCPU + GPUを使用するものの2つの関数を書いた。CUDA Cでランタイム中にコンピュータにGPUが搭載されているかどうかを確認する
私は、たとえば、条件付きのコンプライアンスコードのためだ:
if (COMPUTER_HAS_GPU)
//Run CPU+GPU code
else
//Run CPU only code
はこのようなものはありますか?
int devices = 0;
cudaError_t err = cudaGetDeviceCount(&devices);
if (devices > 0 && err == cudaSuccess)
{
// Run CPU+GPU code
}
else
{
// Run CPU only code
}
あなたの例では、これは実行時にコンパイル時には行いたくないことを示唆しています。最も簡単なのは、定義を追加してユーザーが望むものを指定できるようにすることです。 –
あなたが正しいです、私の例はランタイムを示唆しましたが、今はコンパイル時に変更しました。 – user1007692
@ user10007692私は、あなたのサンプルがコンパイル時の提案を意味していたと仮定しますが、それをランタイムに変更しました。 –