启用多线程后,OpenCL API调用将花费更多时间

时间:2018-08-13 13:56:59

标签: multithreading opencl gpu

我正在使用7个不同的命令队列启动7个内核。对于单线程,API开销接近803毫秒。启用多线程后,API开销时间增加到约1,702毫秒(几乎增加了一倍)。 API调用所在的处理功能始终由单线程执行(此特定功能禁用了多线程)。 在启动内核之前,我将打印所有事件的状态。全部都在打印0表示已完成(表示commandQueue中没有待处理的内容)。我不明白,即使命令队列中没有待处理的命令,启用线程时为什么enqueueTask和其他API调用会消耗更多时间。

预先感谢

0 个答案:

没有答案