我正在使用具有2个GPU的远程计算机,以便执行具有CUDA代码的Python脚本。为了找到可以提高代码性能的位置,我尝试使用nvprof
。
我已经设置了我的代码,我只想使用远程计算机上的2个GPU中的一个,但是,当调用nvprof --profile-child-processes ./myscript.py
时,每个都启动具有相同ID的进程。 GPU&#39>。
为了只使用一个GPU进行分析,我可以给nvprof
提出任何论据吗?
答案 0 :(得分:0)
CUDA environment variable CUDA_VISIBLE_DEVICES
可用于限制CUDA运行时API仅使用某些GPU。你可以这样试试:
CUDA_VISIBLE_DEVICES="0" nvprof --profile-child-processes ./myscript.py
此外,nvprof
为documented,并且还通过nvprof --help
提供命令行帮助。查看命令行帮助,我看到一个--devices
开关似乎限制了至少一些仅使用特定GPU的功能。你可以试试:
nvprof --devices 0 --profile-child-processes ./myscript.py