天天看點

OpenCL 學習step by step (4) 讀入二進制kernel檔案

本教程中,我們使用上一篇教程中産生的二進制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>

繼續閱讀