我的代码中有两个for
循环,运行相同数量的循环周期。这两个循环是独立的(每个循环适用于不同的输入数据)。在一个循环中,有CPU功能和几个内核不同时运行。
我可以在不同的GPU上运行这些迭代吗?
答案 0 :(得分:3)
您可以在两个不同的GPU上单独运行相关内核。
您必须注意CPU处理在两个GPU的部分结果上的同步。由于存在顺序部分,因此在使用2
GPU时,您可能不会遇到2
的最大加速因子。
从CUDA 4.0开始,您可以使用cudaSetDevice()
设置与给定设备相对应的当前上下文,而无需创建流以启用多GPU处理。