cuda在.bashrc中的配置模板

## <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ##
## 将 CUDATOOLKIT 的安装路径添加到系统变量中,使用 nvcc -V 查看是否配置成功 ##
## <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ##

# 创建软链接:sudo ln -s /usr/local/cuda-xx.x /usr/local/cuda
# 好处是更改cudatoolkit版本时,只需要修改软链接的指向,不用每次都重新修改.bashrc
export CUDA_HOME=/usr/local/cuda

# 不使用软链接时:只需要将CUDA_HOME设置为cudatoolkit安装的路径
# 确保新添加的环境放在原始环境的最后面,这样source ~/.basrc才能生效
export PATH="$CUDA_HOME/bin:$PATH"  # 使用引号确保有特殊含义的字符成为普通字符
export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH"

## <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ##
## <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ##

如果要修改 RunTime cudatoolkit 的版本,只需要修改软链接即可。

sudo ln -s /usr/local/cuda-xx.x /usr/local/cuda

修改 cudatoolkit 版本的脚本文件 change_cuda-ver.sh

#!/bin/bash
echo "当前的cuda版本为:"
nvcc -V

## ============================================== ##
## ============================================== ##

echo "正在删除旧的软连接..."
# 如果输出不为空,表示有错误
if [ -n $(rm -rf /usr/local/cuda) ]; then
	echo "删除失败,准备切换到root执行权限进行操作!"
	# 如果当前字符串为空,表示命令执行成功
	if [ -z $(sudo rm -rf /usr/local/cuda) ]; then
		echo "删除成功!"
	fi
fi

## ============================================== ##
## ============================================== ##

read -p "请输入要设置的cuda版本:" VER
echo "正在创建新的软链接..."
sudo ln -s /usr/local/cuda-${VER} /usr/local/cuda

echo "修改成功!现在的cuda版本如下:"
nvcc -V

运行时采用:

source ./change_cuda-v.sh

运行效果:
运行效果
这里需要强调下:原以为软链接可以不删除直接覆盖就可以,经过多次运行测试发现有 bug,所以还是修改成以上,先删除原来的软链接,然后重新创建。本人只是初学,有大神知道的望在评论区不吝赐教,感谢!

关于 sourcebash 运行 shell 脚本的详细知识,参考:http://c.biancheng.net/view/739.html

总的来说,在这里帮助我的是:source 可以直接执行 bash 命令,且不需要获取 root 权限,直接使用 ./xxx.sh 不能执行。

注意:如果脚本中某条语句的执行需要用到 root 用户权限,直接执行会报错:rm: cannot remove '/usr/local/cuda': Permission denied
效果
解决方法:在需要更高执行权限的语句前加上 sudo,上面说的不需要 root 执行权限的意思是,执行 source xxx.sh 时,不需要 sudo

参考链接:Linux常用shell命令及语法基础

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值