2018-04-11 获取命令队列信息大小

NDRange & single workitem

http://downloads.ti.com/mctools/esd/docs/opencl/execution/kernels-workgroups-workitems.html
如果内核使用单个工作项来执行——比如运行在一个CPU上,那么可以用下列函数:
clEnqueueTask (cl_command_queue command_queue, cl_kernel kernel, cl_uint num_events_in_wait_list, const cl_event *event_wait_list, cl_event *event)

OpenCL入门介绍
https://blog.csdn.net/u012361418/article/details/46475885

内核执行
一个执行内核的命令,必须排队到命令队列
clEnqueueNDRangeKernel()
    数据并行执行模型
    描述内核执行的索引空间
    需要NDRandge()维度和工作组大小的信息
clEnqueueTask()
    任务并行执行模型(多队列任务)
    内核在单工作项上执行
clEnqueueNativeKernel()
    任务并行执行模型
    执行一个未编译的本地C/C++函数,使用OpenCL编译器
    此模式不使用内核对象,因此参数必须被传递

OpenCL异构并行计算编程笔记(2):命令队列与内存对象

http://blog.csdn.net/catalyst_zx/article/details/52818557

cl_int ret;               //用于保存函数返回值  
cl_context_properties context_props[] = { CL_CONTEXT_PLATFORM, (cl_context_properties)platform[1], 0 };     //用于设置命令队列属性  
size_t ext_size;          //用于保存命令队列信息大小  
char *ext_data;          //用于保存命令队列信息  
cl_platform_info command_queue_info = CL_QUEUE_COMTEXT;    //设置所要查询的信息  
  
//建立命令队列  
cl_context command_queue = clCreateContext(context, device, context_props, &ret);  
//获取命令队列信息大小  
ret = clGetCommandQueueInfo(command_queue, command_queue_info, context_props, NULL, ext_size)  

//为ext_data分配空间大小  
ext_data = new char[ext_size];  
//获取命令队列信息  
ret = clGetCommandQueueInfo(command_queue, command_queue_info, ext_size, ext_data, NULL);  
  
std::cout << ext_data << std::endl;     //输出命令队列信息 

get_global_size

https://www.cnblogs.com/biglucky/p/3755189.html
uint get_work_dim() : 返回线程调度的维度数。
uint get_global_size(uint dimension) : 返回在所请求维度上work_item的总数。
uint get_global_id(uint dimension) : 返回在所请求的维度上当前work_item在全局空间中的索引。
uint get_local_size(uint dimension) : 返回在所请求的维度上work-group的大小。
uint get_local_id(uint dimension) : 返回在所请求的维度上,当前work_item在work_group中的索引。
uint get_number_groups(uint dimension) : 返回在所请求维度上work-group的数目,这个值等于get_global_size 除以 get_local_size。
uint get_group_id(uint dimension) : 返回在所请求的维度上当前wrok_group在全局空间中的索引。

Re: basic question regarding get_global_id
get_global_id returns the number for the current thread. The parameter is just the dimension of the array of threads. When you enqueue a kernel, one of the parameters is an int array global_work_size. If global_work_size is an int[2] (2 dimensional array of threads) then each thread will have a 2 dimensional identifier. Lets say global_work_size[0] = 3 and global_work_size[1] = 3 then there will be 3 * 3 = 9 threads in total in a grid something like this:

-----------------
| 0,0 | 0,1 | 0,2 |
-----------------
| 1,0 | 1,1 | 1,2 |
-----------------
| 2,0 | 2,1 | 2,2 |
-----------------

So the thread in the top left corner will have get_global_id(0) = 0 and get_global_id(1) = 0; The one just below it will have get_global_id(0) = 1 and get_global_id(1) = 0.
Edit: have a look at this link for another picture that might help: http://www.khronos.org/message_board...hp?f=28&t=5375.

-----------------
| global_id(0,0) | global_id(0,1) | global_id(0,2) |
-----------------
| global_id(1,0) | global_id(1,1) | global_id(1,2) |
-----------------
| global_id(2,0) | global_id(2,1) | global_id(2,2) |
-----------------

For Thread(1,2):
get_global_id = (1,2) ???
get_global_id(0) = 1
get_global_id(1) = 2
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容

  • 1. 简介 官网在这里 OpenCL(Open Computing Language),即开放运算语言,是一个统一...
    王侦阅读 1,854评论 0 1
  • 1. 简介 OpenCL(Open Computing Language),即开放运算语言,是一个统一的开放式的开...
    ai领域阅读 6,560评论 2 5
  • 在工作中经常会遇到在处理事情时,下属不配合自己的工作,或是消极应对,或是联合他人来攻击自己等,面对这种情况时我们一...
    梁耘嘉阅读 5,126评论 2 2
  • 几个世纪以前,康熙帝金口一出:“云林禅寺”,它又多了一个名字。面朝飞来峰,两峰挟峙,林木耸秀,深山古寺,云烟万状。...
    900bf949bd42阅读 334评论 6 10
  • 今天新年第一天,睡得迷迷糊糊的,被一阵阵拜年声给闹醒,侧耳倾听,是屋场里的人们来给母亲拜年来了。 拿起手机看看时间...
    六月荷清香阅读 939评论 0 12