zoukankan      html  css  js  c++  java
  • opencl(7) 内核执行命令入队]工作组、工作项

    1:将内核执行命令入队(该命令可被多个工作项执行)

    cl_int clEnqueueNDRangeKernel(

    cl_command_queue command_queue,

    cl_kernel kernel,

    cl_uint work_dim,          //数据的维度

    const size_t * global_work_offset,   //各维度上的全局ID偏移量

    const size_t* globak_work_size,    //各维度上工作项数目

    const size_t* local_work_size,     //各 维度上一个工作组中的工作项数目

    cl_uint num_events_wait_in_list,

    const cl_event* event_wait_list,

    cl_event* event

    )

    2:将内核执行命令入队(该命令只在一个工作项中执行)

    cl_int clEnqueueTask(

    cl_command_queue command_queue,

    cl_kernel kernel,

    cl_uint num_events_waite_in_list,

    const cl_event* event_in_list,

    cl_event* event

    )

    clEnqueueTask 和 clEnqueueNDRangeKernel的功能都是将核执行命令加入命令队列。而clEnqueueNDRangeKernel可以更好的划分数据,充分利用设备的资源

    工作组和工作项的特点:

    1、工作组中的工作项可以访问局部内存的同一块地址

    2、工作组中的工作项可以进行同步

    3:工作项相关函数

     4:工作组相关函数

  • 相关阅读:
    UIViewcontroller生命周期方法
    runtime中的宏定义解释表
    opencv在Mac环境下的安装和配置
    Oracle导入导出
    Oracle触发器详解
    查找表的父表和子表
    Oracle创建表空间
    TRIGGER控制级联更新
    启动Oracle的bat文件
    PL(SQL)块
  • 原文地址:https://www.cnblogs.com/pengtangtang/p/PengTangTang_OpenCL_numbersix.html
Copyright © 2011-2022 走看看