2013-04-25 70 views

回答

1

是的,多个内核可以使用相同的内存对象,只要不存在内核同时执行的风险。通常的“单一命令队列不是无序执行”。

1

是的,我用我的射线示踪剂做了这个。我有三个内核。改变几何图形的预处理器,光线追踪器和进行图像处理的后处理器。我与他们三个共享内存缓冲区。在开始下一个之前,我确定内核已经完成。

0

你可以共享内存没有任何问题。如果内存是只读的,您甚至可以将该内存对象用作并发运行的2个内核(即:不同的GPU /相同上下文)的输入。

但是,如果您要覆盖内存区域,请小心并使用事件来同步内核。我强烈推荐这种事件机制,因为它支持并行I/O读取和写入另一个队列中的内存区域。

相关问题