No.7_7 OpenCL 同步——命令队列 内核代码的执行以及内存对象的操作,需要通过将 OpenCL 命令提交到命令队列来完成。在大多数情况下,我们只有一个命令队列,并且命令队列中的命令在执行时按照函数调用的顺序。但是在某些场景下并非如此……
No.7_4 OpenCL 同步——工作项同步 在 OpenCL 中多个工作项会并行执行,当一个工作项对某个存储空间写入数据后,其它的工作项从该地址读取数据时,该如何保证后面工作项读取的数据是前一个工作项写入的数据。这时,就涉及到了工作项之间的同步。
No.7_2 OpenCL 同步——事件回调函数 在调用 clEnqueueXXXX 一系列函数时,会传递一个指向 cl_event 对象的指针。该指针接收事件对象,用来标识执行的命令。可以使用该事件对象来查询命令的执行状态,例如命令是否已经执行完成;该事件对象也可以用来在其它命令执行前等待对应的命令执行完成。