2

Clooを使用してC#OpenCLアプリケーションを開発しています。デバイス (Intel CPU) から奇妙な値が返されるので、OpenCL デバッガーを使用してカーネルにいくつかのブレークポイントを設定することにしました。Visual Studio 2012Intel Debuggerを有効にしても、それらは無視されます。ソースを含む文字列ではなく、カーネルのパスを使用してプログラムをビルドする必要があるかもしれませんが、Cloo を使用してそれを行う方法が見つかりません。

これが私がプログラムを構築する方法です:

program = new ComputeProgram(context, kernelSource);
program.Build(devices, "-g", null, IntPtr.Zero);

ここで、kernelSourceOpenCLソースを含む文字列です。前もって感謝します!

4

1 に答える 1

2

「-g -s」を使用してプログラムをビルドする必要があります。ここには、ビルドしようとしている .cl ファイルが含まれている必要があります。また、カーネルに #include ファイルがないことを確認してください。何も機能しない場合は、環境変数を設定してください。

INTEL_OCL_DBG_LOG=1 INTEL_OCL_DBG_LOG_FILE=c:\temp\debugger.txt

Visual Studio を再起動します。デバッグを続行します。これにより、デバッグが機能しない理由を特定できるログ ファイルが生成されます。このログはhttp://software.intel.com/en-us/forums/intel-opencl-sdkで送信できます。これは、インテル OpenCL SDK に関する問題を送信したり、質問したりすることもできる場所です。

ありがとう。

于 2014-02-25T18:50:23.590 に答える