在使用Stream进行内核启动之前是否需要调用cudaSetDevice?

时间:2016-05-27 19:20:19

标签: cuda

我在多个GPU上运行相同的CUDA内核,并打算使用流同时执行此操作。在使用唯一流ID启动内核之前是否需要调用cudaSetDevice?如果没有,那很好,但如果是这样,我认为我需要以某种方式全局同步对cudaSetDevice的调用。

请注意,我正在使用cudaSetDevice的同步调用创建流,因此保证流与该特定GPU相关联。

1 个答案:

答案 0 :(得分:2)

是。您创建的cudaStream 特定于您在创建流时生效的设备。

来自documentation

  

如果内核启动发布到与当前设备无关的流...

,则会失败
相关问题