酷派手机为什么会出现backcl

我试图理解诸如GPU之类的OpenCL设备的体系结构但是我看不到为什么本地工作组中的工作项数量有明确的界限,即常量CL_DEVICE_MAX_WORK_GROUP_SIZE

在我看来,这应该由编译器来处理即,如果(一维为簡单起见)内核以本地工作组大小500执行而其物理最大值为100 ,并且内核看起来像这样:

然后可以将其自动转换为工作组大小为100的执行内核:

 
但是这似乎不是默认设置。为什么不有没有办法使这个过程自动化(除了自己编写一个预编译器之外)?还是有一个内在的问题会使我的方法在某些示例上失败(您可以给我一个示例)


多个线程正在计算单元上同时运行,并且每个线程都需要保持状态(用于调用 jmp等)。大多数实现都为此使用堆栈如果您查看AMD Evergreen系列,则这是可用堆栈条目数量的硬件限制(每个堆栈条目都有子条目)从本质上讲,這限制了每个计算单元可以同时处理的线程数
至于编译器可以做到这一点。它可以工作但了解这意味着要重新编译内核。这并不总是鈳能的我可以想象这样的情况:开发人员会以二进制格式转储每个平台的编译内核,并随其软件一起提供只是出于"不是那么开源"的原洇。
}

自定义博客皮肤VIP专享

格式为PNG、JPG寬度*高度大于像素,不超过2MB主视觉建议放在右侧,请参照线上博客头图

请上传大于像素的图片!

图片格式为PNG、JPG不超过1MB,可上下左右平鋪至整个背景

图片格式为PNG、JPG图片宽度*高度为300*38像素,不超过0.5MB

}

我要回帖

更多关于 back down 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信