zoukankan      html  css  js  c++  java
  • opencl(3)程序、内核

    1:程序

    1)从上下文中创建程序

    cl_program clCreateProgramWithSource(

    cl_context context,  //上下文

    cl_uint count,    //文本个数

    const char**strings, //程序文本

    const size_t *lengths,  //每个程序文本长度

    cl_int *errcode_ret  //错误码

    )

    2)编译程序

    cl_int clBuildProgram(

    cl_program program,            //程序

    cl_uint  num_devices,             //设备数量

    const cl_device_id* device_list,       //设备列表

    const char *options,            //编译选项

    void (*pfn_notify)(cl_program,void *user_data),  //报错信息回调函数

    void *user_data                //报错信息

    )

    3)获取程序信息

    cl_int clGetProgramInfo(

    cl_program program,        //程序

    cl_program_info  param_name,  //信息类型名称

    size_t param_value_size,    //要保存的信息大小

    void *param_value,      //信息保存地址

    size_t param_value_size_ret  //获取信息应有的大小

    )

    4)获取编译信息

    cl_int clGetProgramBuildInfo(

    cl_program program,

    cl_device_id device,

    cl_program_build_info param_name,

    size_t param_value_size,

    void *param_value,

    size_t param_value_size_ret

    )

    常用的变异信息参数    CL_PROGRAM_LOG  查看编译日志

    2:内核

    1)为程序中的每个函数创建内核

    cl_int clCreateKernelsInProgram(

    cl_program program,      //程序

    cl_uint num_kernels,     //内核数量

    cl_kernek* kernels,     //内核地址

    cl_uint *num_kernels_ret  //获取应有的数据

    )

    2)获取内核信息

    cl_int clGetKernelInfo(

    cl_kernel kernel,        //内核

    cl_kernel_info param_name,  //信息类型

    size_t param_value_size,   //想要获取信息的大小

    void *param_value,      //信息保存的地址

    size_t *param_value_size_ret //应有信息的大小

    )

  • 相关阅读:
    P7276-送给好友的礼物【dp】
    P4831-Scarlet loves WenHuaKe【组合数学】
    CF461D-Appleman and Complicated Task【并查集】
    P6499-[COCI2016-2017#2]Burza【状压dp】
    CF757F-Team Rocket Rises Again【最短路,DAG支配树】
    Loj#6053-简单的函数【Min25筛】
    P5325-[模板]Min_25筛
    2019.10.6 机房训练赛
    [CSP校内集训]v(记忆化搜索+map优化状压)
    [CSP校内集训]ac(树上启发式合并)
  • 原文地址:https://www.cnblogs.com/pengtangtang/p/PengTangTang_OpenCL_numbertwo.html
Copyright © 2011-2022 走看看