加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

OpenCL用户定义的内联函数

发布时间:2020-12-16 03:22:57 所属栏目:百科 来源:网络整理
导读:是否可以在OpenCL代码中定义我自己的函数,以便内核可以调用它们?是的,在哪里可以看到一些简单的例子? 解决方法 用于创建程序的功能是… cl_program clCreateProgramWithSource ( cl_context context,cl_uint count,const char **strings,const size_t *len
是否可以在OpenCL代码中定义我自己的函数,以便内核可以调用它们?是的,在哪里可以看到一些简单的例子?

解决方法

用于创建程序的功能是…
cl_program clCreateProgramWithSource  (     
    cl_context context,cl_uint count,const char **strings,const size_t *lengths,cl_int *errcode_ret)

你可以把这个函数放在strings参数中,

float AddVector(float a,float b)
{
    return a + b;
}

kernel void VectorAdd(
    global read_only float* a,global read_only float* b,global write_only float* c )
{
    int index = get_global_id(0);
    //c[index] = a[index] + b[index];
    c[index] = AddVector(a[index],b[index]);
}

现在你有一个用户定义的函数“AddVector”和一个内核函数“VectorAdd”

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读