4
我正在使用opencl開始我的第一步,現在有一個問題。我使用NVIDIA OpenCL lib和GT540m顯卡。OpenCL:防止內核緩存
現在看來內核在編譯後得到了緩存,並且在我對內核做了一些更改時沒有重新編譯。爲了測試我正在向輸出緩衝區寫入一些值,但是當我在內核中更改這些值時,輸出保持不變。
我該如何防止這種行爲?
非常感謝。 問候羅賓
我正在使用opencl開始我的第一步,現在有一個問題。我使用NVIDIA OpenCL lib和GT540m顯卡。OpenCL:防止內核緩存
現在看來內核在編譯後得到了緩存,並且在我對內核做了一些更改時沒有重新編譯。爲了測試我正在向輸出緩衝區寫入一些值,但是當我在內核中更改這些值時,輸出保持不變。
我該如何防止這種行爲?
非常感謝。 問候羅賓
void enable_cuda_build_cache(bool enable)
{
#ifdef _MSC_VER
if (enable)
_putenv("CUDA_CACHE_DISABLE=0");
else
_putenv("CUDA_CACHE_DISABLE=1");
#else // GCC
if (enable)
putenv("CUDA_CACHE_DISABLE=0");
else
putenv("CUDA_CACHE_DISABLE=1");
#endif
}
要禁用緩存電話:enable_cuda_build_cache(假);
你用什麼方式編譯內核。是在運行時還是在編譯時編譯? – Christian
相關:http://stackoverflow.com/questions/31338520/opencl-clbuildprogram-caches-source-and-does-not-recompile-if-included-source –