我想在多个 GPU 上并行运行内核。为此,我在使用的设备之间切换cudaSetDevice()
,然后在相应的设备中启动我的内核。现在,通常一个流中的所有调用都是按顺序执行的,如果它们应该并行执行,则必须使用不同的流。使用不同设备时是否也是这种情况,或者在这种情况下我可以在两个设备上的默认流上运行我的内核调用并且它们仍将并行运行?
2019 次
我想在多个 GPU 上并行运行内核。为此,我在使用的设备之间切换cudaSetDevice()
,然后在相应的设备中启动我的内核。现在,通常一个流中的所有调用都是按顺序执行的,如果它们应该并行执行,则必须使用不同的流。使用不同设备时是否也是这种情况,或者在这种情况下我可以在两个设备上的默认流上运行我的内核调用并且它们仍将并行运行?