1

我正在尝试测试从预编译的二进制文件构建程序的 OpenCL 功能。到目前为止,我已经设法创建了二进制文件,但我无法加载它。我正在尝试调整此代码以与 C++ 绑定一起使用:

FILE* fp = fopen("oclLLtoUTM.ptx", "r");
fseek (fp , 0 , SEEK_END);
const size_t lSize = ftell(fp);
rewind(fp);
unsigned char* buffer;
buffer = (unsigned char*) malloc (lSize);
fread(buffer, 1, lSize, fp);
fclose(fp);

cl_int status;
cpProgram = clCreateProgramWithBinary(cxGPUContext, 1, (const cl_device_id *)cdDevices,
&lSize, (const unsigned char**)&buffer,
&status, &ciErr1);

if (ciErr1 != CL_SUCCESS)
{
cout<<"Error in clCreateProgramWithBinary, Line "<<__LINE__<<" in file "<<__FILE__<<" "<<endl;
Cleanup(EXIT_FAILURE);
}

ciErr1 = clBuildProgram(cpProgram, 0, NULL, NULL, NULL, NULL);

任何人都可以帮我解决这个问题,或者建议一个我可以解决的链接(我需要使用 C++ 绑定)?

提前致谢!

4

0 回答 0