这三个函数,特别是后两个函数的区别是什么?图书馆手册上说
请注意,此函数已弃用,因为它的名称不能反映其行为。它的功能类似于不推荐使用的函数cudaDeviceSynchronize(),应该改用它。
但不太确定这是什么意思。
发布于 2012-11-21 11:28:20
这些都是障碍。障碍阻止代码执行超出障碍,直到满足某些条件。
cudaThreadSynchronize
()是类似于上述两个函数的,但它阻止在cudaDeviceSynchronize
主机线程中进一步执行,直到GPU完成处理在引用流中发出的所有先前请求的cuda任务。所以cudaStreamSynchronize
()只接受一个流id作为它的参数。当CPU代码执行超过此障碍时,其他流中发出的cuda任务可能会完成,也可能不会完成。https://stackoverflow.com/questions/13485018
复制相似问题