如果python工具需要专用图形处理器(只能通过bumblebee或optirun获得),如何运行使用虚拟环境和库的python工具(如click
示例:
#normally (with nvidia driver being the default)
agent --run-with-tf-gpu trainagent脚本触发基于单击的应用程序,然后该应用程序使用venv/bin/python二进制文件。
我有一个解决方案(见下面的答案),但我很高兴给出一个更好的“正确答案”。
发布于 2018-07-13 04:46:06
选项1:用包装器替换二进制文件
p=`pwd`
cd venv/bin
rm python #soft link to python3.6
echo 'optirun $p/venv/bin/python3.6 "$*"' > python
chmod +x python选项2:创建别名
仅当未使用绝对路径调用python时才有效。
在venv/bin/activate文件的末尾插入以下三行:
#setting optirun to be used when running python in venv
alias python="optirun python"
alias python3="optirun python3"选项3:在前后打开和关闭卡
根据arch wiki的说法,以下内容还将全局启用该卡,因此可以很容易地使用IDE,否则,这些IDE将执行一些复杂的调用,并具有绝对路径等:
tee /proc/acpi/bbswitch <<< ON现在,当您启动CUDA应用程序时,它将自动加载所有必要的模块。
要在使用CUDA后关闭nvidia卡,请执行以下操作:
rmmod nvidia_uvm
rmmod nvidia
tee /proc/acpi/bbswitch <<< OFFhttps://stackoverflow.com/questions/51314176
复制相似问题