【发布时间】:2018-07-20 05:52:31
【问题描述】:
我是 OpenCL 的初学者。我知道当使用一个内核时,每个工作项都执行同一个内核。但是当使用多个不同的内核并并行工作时,它们如何分布在工作项中?它们中的哪一个会执行一个内核,哪一个会执行另一个内核?这是如何区分的?
谢谢
【问题讨论】:
标签: parallel-processing kernel opencl
我是 OpenCL 的初学者。我知道当使用一个内核时,每个工作项都执行同一个内核。但是当使用多个不同的内核并并行工作时,它们如何分布在工作项中?它们中的哪一个会执行一个内核,哪一个会执行另一个内核?这是如何区分的?
谢谢
【问题讨论】:
标签: parallel-processing kernel opencl
通常一个内核会在下一次启动之前完成(它们不会并行运行)。也有例外,但您必须选择加入才能到达那里。单个内核的执行在称为工作组的集合中,其中包含各个工作项。工作组可以按任何顺序运行,并且可以并行运行(是否同步运行;无关紧要)。当最后一个工作组完成时,内核就“完成”了。然后下一个内核启动。
【讨论】: