部分卡片上的cuda app

时间:2010-09-13 15:22:24

标签: c++ c cuda gpu nvidia

我有一部Nvidia Tesla s2050;带有nvidia quadro card.CentOS 5.5和CUDA 3.1的主机 当我运行cuda应用程序时,我想使用4特斯拉c-2050,但不包括主机上的quadro,以便不会使整个性能落后,同时将工作分成5个等等。实现这个的任何方式?

2 个答案:

答案 0 :(得分:2)

我假设你有四个进程和四个设备,虽然你的问题表明你有五个进程和四个设备,这意味着手动调度可能更好(特斯拉设备处于“共享”模式)。

最简单的方法是使用nvidia-smi指定Quadro设备是“禁止计算”。您还可以指定Teslas是“计算独有的”,这意味着在任何给定时间只有一个上下文可以附加到每个上下文。

运行 man nvidia-smi 以获取更多信息。

答案 1 :(得分:1)

是。查看CUDA Support/Choosing a GPU

  

<强>问题

     

在机器上运行代码   多个GPU可能会导致您的代码   在较旧且较慢的GPU上执行。

     

<强>解决方案

     

如果你知道的设备号   要使用的GPU,请致电   cudaSetDevice(N)。为了更健壮   解决方案,包括显示的代码   在程序开头的下方   自动选择最佳GPU   在任何机器上。

查看他们的网站以获得进一步的解释。

您可能还会发现this post非常有趣。