我为每个设备使用一个上下文和一个命令队列。
在每次使用 clEnqueueWriteBuffer() 之后
clEnqueueMigrateMemObjects(CommandQueue,1,&Memory,CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED,NULL,NULL);
如果我想在同一平台的设备之间共享缓冲区,上述方法是否正确且最快?
额外:
在 clEnqueueMigrateMemObjects() 之后使用 clEnqueueWriteBuffer() 是否更快?
此外,调用 clSetKernelArg() 时是否有任何开销?