2012-11-22 37 views
1

我可以使工作组与其他工作组进行通信而不使用全局内存吗?如果是,如何?OpenCL - 工作组之间的通信

使用本地内存速度至少快10倍,使用寄存器甚至比全局内存快50倍。

由于

+0

您可以发布代码,我们可以讨论实施metodology以改进设计,因为我预计可以避免这种情况。 – DarkZeros

+0

代码是一个简单的全双Nbody代码,需要N * N个内存操作,而gpu可以轻松地同时执行50-60个注册操作。 –

回答

5

不能通信工作的基团时,每个工作组是在平行于所有其它运行的分离的运算部。

通信工作组的唯一方法是将内核拆分为两个内核,并将内核1的输出保存在全局内存中。之后,将其用作内核2的输入以继续处理。