本教程中,我們使用上一篇教程中産生的二進制kernel檔案vecadd.bin作為輸入來建立程式對象,程式代碼如下:
//kernel檔案為vecadd.bin
gclFile kernelFile;
if(!kernelFile.readBinaryFromFile("vecadd.bin"))
{
printf("Failed to load binary file \n");
exit(0);
}
const char * binary = kernelFile.source().c_str();
size_t binarySize = kernelFile.source().size();
cl_program program = clCreateProgramWithBinary(context,
1,
&device,
(const size_t *)&binarySize,
(const unsigned char**)&binary,
NULL,
NULL);
程式執行的界面和教程三中一摸一樣…
完整的代碼請參考:
工程檔案gclTutorial3
代碼下載下傳:
<a href="http://files.cnblogs.com/mikewolf2002/gclTutorial.zip">http://files.cnblogs.com/mikewolf2002/gclTutorial.zip</a>