OpenCL 教程 第四章 内核模型

#第四章 内核模型
在OpenCL中,程序是由多个内核构成的,而内核就是在设备上运行的一个个功能函数,内核函数用__kernel字符标记,表示该函数用于在设备上运行,实现某种特定的功能,OpenCL程序就是将这些特定的功能模块组合在一起,从而实现整个系统功能。内核的调用由主机完成,主机通过命令队列指示设备调用内核,完成任务。
我们要从程序中将内核分离出来,放在特定的内核对象中,用于后面的调用。
创建内核对象的方法有两种:

cl_kernel clCreateKernel (cl_program program,        //内核所在的程序对象
                          const char *kernel_name,   //内核函数的名称
                          cl_int *errcode_ret)       //错误指示标记

该接口将会返回一个根据特定名称而创建的内核对象。

cl_int clCreateKernelsInProgram (cl_program program,           //内核所在的程序对象
                                 cl_uint num_kernels,          //该程序中所包含的内核数量
                                 cl_kernel *kernels,           //创建的内核对象列表
                                 cl_uint *num_kernels_ret)     //返回的该程序中所包含的内核数量

该接口需要调用两次,第一次确定该程序中包含的内核个数,第二次将所有的内核对象创建完成并存放在内核对象列表中。

在内核对象创建完成后可以查

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值