こんにちは私はopenCLを学び、本の例に従って、次のことをしようとしています
//Obtain the GPU data (platform, device and context)
PlatformDevice gpu = retrieveDevice(CL_DEVICE_TYPE_GPU);
assert(gpu.allDat![enter image description here][1]aPresent());
const char * kernalSource = "__kernel void multiplication(__global float* GridA, __global float* GridB,__global float* val ){int igrid = get_global_id(0);float a = GridA[igrid];float b = GridB[igrid];val[igrid] = a * b;}";
//Create Program
cl_program program = clCreateProgramWithSource(gpu.context,1, (const char**) kernalSource,NULL,&err);
最後の行に到達すると、次のエラーが発生します
Unhandled exception at 0x53349301 (nvopencl.dll) in OpenCLPracticeSetup.exe: 0xC0000005: Access violation reading location 0x656B5F5F.
Visual Studio 2012のセットアップの問題だと思いますが、nvopencl.dllでエラーが表示されないため、オンラインで何も見つかりません。変更したプロパティは次のとおりです。
c /c++一般-追加のインクルードディレクトリは次のとおりです。\NVIDIAGPUComputing Toolkit \ CUDA \ v4.2 \ include \ CL Linker一般-追加のライブラリディレクトリは次のとおりです:\ NVIDIA GPU Computing Toolkit \ CUDA \ v4.2 \ lib \ Win32入力-OpenCL.lib;kernel32.lib;user32.lib; gdi32.lib; winspool.lib; comdlg32.lib; advapi32.lib; shell32.lib; ole32.lib; oleaut32.lib; uuid.lib; odbc32.lib; odbccp32.lib;%(AdditionalDependencies)
ありがとう