zoukankan      html  css  js  c++  java
  • opencl(三)----创建、编译程序(cl_program)、创建内核

    1、创建程序

    // 从文本中创建程序
    cl_program clCreateProgramWithSource (    
            cl_context context,      // 上下文
         cl_uint count,             //文本个数
         const char **strings,   // 程序文本
         const size_t *lengths,  //每个程序文本的长度
         cl_int *errcode_ret     //错误码
    )

    编译程序

    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
    )

    2、获取程序信息

    // 获取程序信息
    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   //应有的大小
    )

    3、获取编译信息

    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_BUILD_LOG  查看编译日志

    4、创建内核

    // 为程序中的每个函数创建内核
    cl_int clCreateKernelsInProgram (    
         cl_program  program,  //程序
         cl_uint num_kernels,   // 数量
         cl_kernel *kernels,     //核地址
         cl_uint *num_kernels_ret  //获取应该有的数量
    )

    获取内核信息

    // 获取核信息
    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
    )
  • 相关阅读:
    图像处理之理解卷积
    图像卷积与滤波的一些知识点
    利用SynchronizationContext.Current在线程间同步上下文
    C#基础之 --- 消息队列例子
    c#子线程与主线程之间的通信
    映美精相机软触发
    halcon例程学习笔记(11) 一维码、二维码识别
    C#的分布式消息队列介绍
    相似、仿射、射影变换区别
    配置管理
  • 原文地址:https://www.cnblogs.com/feihu-h/p/12081307.html
Copyright © 2011-2022 走看看