2

OpenCLに不可分操作を使用しています。同じコードがIntelCPUで機能していますが、NvidiaGPUでエラーが発生しています。32ビットと64ビットの両方でAtomicsを有効にしました。

     int cidx=idx%10;

     int i=1;
     C[idx]=In1[idx] & In2[idx];
     atomic_add(R,i);

これはコード全体のほんの一部です。ビルドエラー「サポートされていない操作」が発生します。NvidiaQuadroGPUで実行している間は、Intel i3、Xeon、およびAMDプロセッサですべて正常に動作しています。

4

1 に答える 1

0

atomic_add は OpenCL 1.0 には表示されませんでした。仕様の後のリビジョンで追加されました。異なる OpenCL バージョンに準拠する 2 つの異なる実装で実行している可能性があります。

于 2013-06-03T13:49:28.037 に答える