NVIDIA中的cupti的作用及设置: CUDA profiling tools interface —— Could not load dynamic library 'libcupti.so.10.1' —— failed with error CUPTI_ERROR_INSUFFICIENT_PRIVILEGES

NVIDIA官方给出的说明:


image




可以知道,这个组件的作用是对NVIDIA的CUDA进程进行性能分析的,通过对这个组件的调用可以实现对CUDA进程的性能监测。


在使用深度学习框架时有时需要对运行的代码的CUDA部分进行性能分析,于是就会调用该库的接口,有时会报错:

Could not load dynamic library 'libcupti.so.10.1'


这种情况下可以通过设置环境变量来解决(前提是已正确安装了该组件,该组件默认在CUDA SDK中):

export LD_LIBRARY_PATH=/usr/local/cuda-10.1/extras/CUPTI/lib64/:$LD_LIBRARY_PATH

有时候会报错:

failed with error CUPTI_ERROR_INSUFFICIENT_PRIVILEGES

该种情况是说明只有root用户可以使用cupti接口,我们需要手动取消该权限需求:

具体的设置:

echo 'options nvidia "NVreg_RestrictProfilingToAdminUsers=0"' | sudo tee -a /etc/modprobe.d/nvidia-kernel-common.conf
sudo update-initramfs -u
sudo reboot now

参考:

https://jax.readthedocs.io/en/latest/profiling.html



posted on 2024-01-18 22:59  Angry_Panda  阅读(852)  评论(0)    收藏  举报

导航