clEnqueueMarkerWithWaitList不能执行cl函数的参数?

时间:2019-05-04 12:49:00

标签: opencl

假设我有一组要异步运行的内核,并且它们之间有一些依赖关系。

一个同步选项是clEnqueueMarkerWithWaitList。 规范指出,此

  

排队一个标记命令,该命令等待事件列表   complete [...]此命令返回一个可以等待的事件,即可以等待此事件以确保event_wait_list或所有先前排队的命令中的所有事件在此命令到达command_queue之前已排队。

另一方面,我也可以直接使用clEnqueueNDRangeKernel将内核加入队列。 它具有以下参数:

  

event_wait_list和num_events_in_wait_list

     

指定在执行此特定命令之前需要完成的事件。 [...] event_wait_list中指定的事件充当   同步点。

据我所知,所有cl函数都具有这些参数。 那么clEnqueueMarkerWithWaitList首先是什么呢? 根据网站上的描述,我唯一能想到的是,我可以等待marker命令的结果事件,而不是列表中的所有事件,但这似乎仅在编程过程中提供了一些小便利(即使),没有任何真正的区别。

我所缺少的两者之间是否存在细微差别? 请注意,this question仅与clWaitForEvents比较。

0 个答案:

没有答案