[英]Is it possible to run a cuda kernel on multiple gpus
这是一个相当简单的问题,但谷歌搜索似乎没有答案,所以。
我想知道的是,如果我有两个能够运行 cuda 的 gpu 卡(相同),我的内核可以跨这些卡吗? 还是绑定到一张卡或另一张卡上? 即 cuda 提供了整套可用的 gpu 内核,或者只是运行它的卡上的内核。
如果是这样,为了实现它,我需要了解什么特别的东西吗?除了 cuda sdk 之外,还有什么值得了解的例子吗?
目标语言当然是C/C++。
单个 CUDA 内核启动绑定到单个 GPU。 为了使用多个 GPU,需要启动多个内核。
cuda 设备运行时 API 专注于选择的任何设备。 任何给定的内核启动都将在最近使用cudaSetDevice()
选择的设备上启动
cuda samples simple multi-gpu with P2P和simple multi-gpu中给出了多GPU编程的例子
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.