相关疑难解决方法(0)

如何选择运行作业的GPU?

在多GPU计算机中,如何指定应运行CUDA作业的GPU?

作为一个例子,在安装CUDA时,我选择安装NVIDIA_CUDA-<#.#>_Samples然后运行几个nbody模拟实例,但它们都在一个GPU 0上运行; GPU 1完全空闲(使用监控watch -n 1 nvidia-dmi).检查CUDA_VISIBLE_DEVICES使用

echo $CUDA_VISIBLE_DEVICES
Run Code Online (Sandbox Code Playgroud)

我发现这没有设定.我尝试使用它

CUDA_VISIBLE_DEVICES=1
Run Code Online (Sandbox Code Playgroud)

然后nbody再次运行但它也进入了GPU 0.

我看了相关的问题,如何选择指定的GPU来运行CUDA程序?,但deviceQuery命令不在CUDA 8.0 bin目录中.除此之外$CUDA_VISIBLE_DEVICES$,我看到其他帖子引用环境变量,$CUDA_DEVICES但这些没有设置,我没有找到有关如何使用它的信息.

虽然与我的问题没有直接关系,但是使用nbody -device=1我能够让应用程序在GPU 1上运行但是使用nbody -numdevices=2不能在GPU 0和1上运行.

我在使用bash shell运行的系统上测试这个,在CentOS 6.8上,使用CUDA 8.0,2 GTX 1080 GPU和NVIDIA驱动程序367.44.

我知道在使用CUDA编写时,您可以管理和控制要使用的CUDA资源,但在运行已编译的CUDA可执行文件时,如何从命令行管理?

cuda nvidia

41
推荐指数
5
解决办法
8万
查看次数

Docker Run 可以访问 GPU,但 Docker Build 不能访问

我正在为 NVIDIA GPU 构建 DeepStream Docker 映像,如本链接中所述。

我安装了NVIDIA 容器工具包,原始 Dockerfile 可以运行,构建后我可以使用以下命令启动具有 GPU 支持的容器:

sudo docker run --runtime=nvidia --gpus all --name Test -it deepstream:dgpu
Run Code Online (Sandbox Code Playgroud)

问题是我想在docker build序列期间安装 PyTorch 并使用它。一旦 PyTorch 在构建序列中导入,Found no NVIDIA driver on your system就会出现错误:

#0 0.895 Traceback (most recent call last):
#0 0.895   File "./X.py", line 15, in <module>
#0 0.895     dummy_input = torch.randn([1, 3, 224, 224], device='cuda')
#0 0.895   File "/usr/local/lib/python3.8/dist-packages/torch/cuda/__init__.py", line 229, in _lazy_init
#0 0.895     torch._C._cuda_init()
#0 0.895 …
Run Code Online (Sandbox Code Playgroud)

gpu docker pytorch nvidia-docker

7
推荐指数
0
解决办法
1787
查看次数

标签 统计

cuda ×1

docker ×1

gpu ×1

nvidia ×1

nvidia-docker ×1

pytorch ×1