腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(3186)
视频
沙龙
2
回答
NVIDIA的CUDA核心和
OpenCL
计算
单元之间有什么关系?
、
、
但是,当我运行clGetDeviceInfo来查找
计算
机中的
计算
单元数时,它会打印出5个(见下图)。听起来,数据自动化系统的核心与
OpenCL
认为的
计算
单元有些不同吗?或者一组数据自动化系统核心组成了一个
OpenCL
计算
单元?你能给我解释一下吗?
浏览 0
提问于2015-12-14
得票数 3
回答已采纳
1
回答
使用
2D
内核
计算
OpenCL
阵列
偏移量
工作组
、
、
我在
使用
2D
工作组
计算
正确的数组偏移时遇到了困难。我用这些参数调用我的
内核
ret = clSetKernelArg(kernel, 0, sizeof(cl_mem), (void *)&a_mem_obj); ret = clSetKernelArg,如何
计算
一个简单的数组加法的索引
偏移量
?[index]; 在localworksize为32X32的情况下运行相同的代码,如下所示 const size_t localWorkSizeCalc[2] = {
浏览 26
提问于2021-04-05
得票数 0
回答已采纳
1
回答
Opencl
发布并发
内核
、
、
、
据我所知,要执行并发
内核
(在我的例子中是相同的
内核
,但不同的I/O数据),它必须通过启动唯一的
计算
单元(流式多处理器-SMs)来完成,而且显然是它们自己的
工作组
。例如,gtx960m有5个SMs (
Opencl
中的
计算
单元)。用自己的16x16 (
2d
)
工作组
异步和无序地启动clEnqueueNDRangeKernel,将启动所有5个
计算
单元来并发执行它们吗?也就是说,对于所有的
计算
单元,还是每个
计
浏览 2
提问于2021-07-15
得票数 1
回答已采纳
1
回答
OpenCL
死锁可能性
、
我
使用
全局原子在
OpenCL
中的
工作组
之间进行同步。所以
内核
使用
了如下代码 while(*counter !在另一个地方从理论上讲,如果所有
工作组
同时运行,该算法应该总是有效的。但是,如果一个
工作组
只在另一个
工作组
完全完成之后才
浏览 0
提问于2018-01-29
得票数 2
回答已采纳
2
回答
OpenCL
:只运行基于CPU的
内核
的单个实例
我有两个
OpenCL
内核
:第一个是并行任务,第二个是线性任务(LZW)。第一个是并行的,在GPU上运行,第二个是线性的,在CPU上运行。我有一个多核处理器,我真的希望只在一个核上运行
内核
的单个实例,而不是在2+核上运行2+实例。这不是生产所必需的,而是我对各种类型任务的性能的学术研究。我现在
使用
的比较愚蠢的方法是:else do_nothing();谢谢。
浏览 1
提问于2011-05-05
得票数 3
回答已采纳
1
回答
OpenCL
local_work_size空
、
当
OpenCL
内核
排队时,local_work_size可以设置为NULL,在这种情况下,
OpenCL
实现将决定如何将全局工作项分解为适当的
工作组
实例。自动
计算
local_work_size似乎是一个很好的特性(比猜测64的倍数更好)。
OpenCL
的
工作组
规模选择是否趋于最佳?是否有更好的情况是手动指定local_work_size
浏览 6
提问于2013-08-16
得票数 4
回答已采纳
1
回答
OpenCL
:编程图形处理器更像是多线程cpu
这可能是一个新手的问题,但我想
使用
opencl
来利用几十个gpu
内核
。几天前,当我在搜索
opencl
编程时,我对
工作组
、工作项、
内核
和
opencl
的逻辑感到困惑。在我继续与这个员工打交道之前,我有一个问题: 我可以分配一个带有代码的线程在单个gpu
计算
核心(或指定的核心)中运行,就像对多核cpu编程一样吗?
浏览 2
提问于2017-12-14
得票数 0
2
回答
clGetKernelWorkGroupInfo - CL_KERNEL_WORK_GROUP_SIZE是否是
OpenCL
在clEnqueueNDRange
内核
中不指定它时
使用
的大小?
我读到,在将
内核
入队时,如果没有指定
工作组
大小,
OpenCL
会为我选择一个。//don't know which workgroup size
OpenCl
will use!clEnqueueNDRangeKernel(queue, kernel, 1, NULL, &global_size, NULL, 0, NULL, NULL); 有没有办法获得
OpenCL
在这里
使用
的
工作组
大小
OpenCL
选择的
浏览 1
提问于2012-11-21
得票数 7
1
回答
OpenCL
:
计算
单元数
我是
OpenCL
的初学者。我正在实现一个算法的AMD 8670 M(GCN架构)设备。我
使用
OpenCL
本地内存存储经常访问的全局数据。我推出了一个包含8个
工作组
的
内核
,每个
工作组
有256个工作项,每个
工作组
使用
16 KB的本地内存。所以
内核
使用
:b) 128 KB local memory 2048个工作项适合于一个
计算
单元,但一个
计算</em
浏览 1
提问于2015-07-28
得票数 0
1
回答
在
OpenCL
中放弃额外的全局工作id的
计算
、
、
我是
OpenCL
的初学者,正在尝试
使用
GPU进行数据集的并行处理。这些数据集具有从10到10000的不同大小,并且逐个为这些集调用相同的
内核
。每次调用的问题大小等于
内核
代码包含的`set_size:result = Process dataset[id] output[id] = result我有一个具有6个
计算
单元和最大local_group_size为256的图形处理器。如果
使用
local_group_size=64和globa
浏览 2
提问于2016-01-20
得票数 0
2
回答
OpenCL
工作-每个工作项-2 2DRange中的组
、
、
这个代码表示矩阵乘法,代码是用
OpenCL
编写的。这三个矩阵的大小(二合一)是1024x1024。谈到
OpenCL
实现,执行的范围是二维的,所以我们有1024x1024
工作组
,每个
工作组
由16x16工作项组成。问题是,为什么我们应该设置每个
工作组
的大小,因为在
内核
中,我们既不
使用
本地内存,也不
使用
get_local_id()调用。将
工作组
维度设置为null不会更好,这样每个
工作组
都可以填充输出矩阵的每个单元格吗?在我
浏览 1
提问于2016-01-18
得票数 1
2
回答
确定最优
工作组
规模和
工作组
数目的算法是什么?
OpenCL
标准定义了以下选项以获取有关设备和已编译
内核
的信息: CL_DEVICE_MAX_COMPUTE_UNITSCL_DEVICE_MAX_WORK_GROUP_SIZECL_KERNEL_WORK_GROUP_SIZECL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE给定这个值,如何
计算
工作组
的最佳大小和
工作组
的数目?
浏览 3
提问于2012-04-10
得票数 12
回答已采纳
2
回答
OpenCL
和Tesla M1060
、
、
我
使用
特斯拉m1060来
计算
GPGPU。如何将GPU的"240核心“与
工作组
/项目联系起来? 编辑:对于我
使用
的
内核
,CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE值为32。在
OpenCL
1.1Api中,它是这样写的(第15页):
计算
单元:-- <e
浏览 7
提问于2014-11-21
得票数 2
回答已采纳
1
回答
在本地内存中分配一个常量内存变量,只在其
工作组
中共享一次。
我有一个
OpenCL
应用程序,其
内核
都共享两大块常量内存。其中一个用来生成密码,另一个用来测试密码。我相信这是因为测试密码的子例程有一个巨大的(10k)查找表,用于AES解密,并且在同一
工作组
内同一时间运行的多个
内核
之间不共享。我知道它不是共享的,因为AES查找表被分配为每个
内核
中的__local,然后初始化从外部库复制值(如
内核
创建静态内存的本地副本并
使用
该副本)。我应该做什么来确保我的常量内存只分配给每个
工作组
一次,并且在同一个
工作组</e
浏览 1
提问于2018-01-16
得票数 1
回答已采纳
3
回答
GPU上高效的桶排序
、
、
、
、
对于当前的
OpenCL
GPGPU项目,我需要根据一些键对数组中的元素进行排序,其中包含64个可能的值。我需要最后的
阵列
,有所有的老鼠会与相同的钥匙是连续的。一个想法是把一些
计算
放在
工作组
中。但我不确定该如何做到这一点,因为我在GPGPU
计算
方面没有经验。每个
工作组
都被隐式分配输入元素数组的一部分。
浏览 5
提问于2013-05-27
得票数 8
2
回答
Delphi数组在
2D
和1D之间来回转换
、
我正在用
OpenCL
做一些
计算
处理的工作。
OpenCL
不能接受传递给它的
2D
数组,因此我的
2D
数组需要转换为1D,然后在处理后转换回
2D
。对于
2D
到1D,我
使用
如下代码... i:=0;begin begin
OpenCL
处理时间非常快。一旦
OpenCL
完成,需要将一维数组转换回
2D
。
浏览 43
提问于2020-10-30
得票数 1
1
回答
OpenCL
同步全局存储器
、
、
、
我有一个
内核
,它有三个阶段。每个阶段必须在执行跳转到下一个阶段之前完成。我不知道该如何做,也不知道CLK_GLOBAL_MEM_FENCE是否用于此。(我在水蚀核上得到了非常奇怪的结果)。是否可以在一个
内核
中执行此操作,只需要必要的缓冲区,或者我必须添加in和out缓冲区,而不仅仅是read_write?还是创建多个
内核
和共享缓冲区更好呢?
浏览 2
提问于2014-05-31
得票数 1
回答已采纳
1
回答
OpenCL
WorkGroupSize与OpenGL
计算
着色器WorkGroupSize比较
、
我读过,
OpenCL
内核
是像OpenGL
计算
着色器一样分组的。这意味着,您可以定义一个
工作组
内应该执行多少次调用。这些调用位于同一个
工作组
中,可以与所谓的shared变量通信。这意味着,当每个
工作组
(
OpenCL
)分配不到32个调用时,您的GPU没有得到充分
使用
。据我所知,这与硬件规格有关。在这里,我的GPU上的32个核心被分组为一个翘曲,也一起执行。当分配少于32个调用时,该硬件组中的其余核心不被
使用
或空闲。 我是否对OpenGL<
浏览 0
提问于2022-11-02
得票数 0
回答已采纳
1
回答
多
内核
实现中的
OpenCL
计算
单元数
、
、
我正在一个多
内核
OpenCL
实现中工作,我不知道不同的
内核
如何映射到
计算
单元中。 我所有的
内核
都是并发执行的,我认为只有执行相同
内核
的
工作组
才被分配给一个
计算
单元。因此,我推断,对于我
使用
的每个不同的
内核
,我至少有一个
计算
单元。我说的对吗?我知道我可以
使用
clGetDeviceInfo并查看字段CL_DEVICE_MAX_COMPUTE_UNITS,但是它并没有告诉我
内核<
浏览 1
提问于2018-09-16
得票数 0
1
回答
OpenCL
内核
性能很差吗?
、
、
我的应用程序
使用
5200 My 来
计算
使用
GPU上的
OpenCL
的数据集,
使用
CPU 上的
OpenCL
来
计算
相同数据的330 My;而
使用
多线程在CPU上不
使用
OpenCL
完成的相同数据处理则需要110
OpenCL
计时仅用于
内核
执行,即在clEnqueueNDRangeKernel之前开始,在clFinish之后结束。我有一个Windows小工具,它告诉我,我只
使用</em
浏览 3
提问于2014-04-09
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
OpenCL-1-编程四大模型介绍
谷歌称 TensorFlow 的 OpenCL 可以将推理性能提高一倍
OpenCL-0-基础概念
如何在Julia编程中实现GPU加速
发掘 ARM GPU 的全部深度学习性能,TVM 优化带来高达2倍性能提升
热门
标签
更多标签
云服务器
ICP备案
即时通信 IM
云直播
实时音视频
活动推荐
运营活动
广告
关闭
领券