安装mimconda
可前往清华镜像站下载
安装好mimconda后记得修改conda和pip的源
conda虚拟环境相关
基本命令:
# 创建一个虚拟环境(csgo)
conda create -n csgo python=3.8 -y
# 激活一个虚拟环境(csgo)
conda activate csgo
# 删除一个虚拟环境(csgo)
conda remove -n csgo --all
# 查看虚拟环境列表
conda env list
# 搜索一个可用的包(python)
conda search python --info
# 安装一个包
conda install numpy
conda设置代理
往~/.condarc文件中加入以下内容
proxy_servers:
http: http://127.0.0.1:8888 # 代理服务器地址
https: http://127.0.0.1:8888 # 代理服务器地址
可通过如下命令实现
echo -e 'proxy_servers:\n http: http://192.168.0.124:7890\n https: http://192.168.0.124:7890' >> ~/.condarc
conda虚拟环境中配置不同的环境变量
创建 {虚拟环境路径}/etc/conda/activate.d/env_vars.sh 文件;内容如下:
# 先将环境变量备份到ORIGINAL_LD_LIBRARY_PATH,后续离开当前虚拟环境时要用到。
ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
# 再写当前虚拟环境需要定制的环境变量
export LD_LIBRARY_PATH=xxx:$LD_LIBRARY_PATH
# 比如指定cuda
export PATH=/usr/local/cuda-11.3/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH
创建 {虚拟环境路径}/etc/conda/deactivate.d/env_vars.sh 文件;内容如下:
# 还原环境变量
export LD_LIBRARY_PATH=$ORIGINAL_LD_LIBRARY_PATH
# 删除备份
unset ORIGINAL_LD_LIBRARY_PATH
pip安装的包不在虚拟环境里
pip install --target=~/miniconda3/lib/python3.9/site-packages 安装包名
安装cuda、cudnn、pytorch
参考:在anaconda环境中使用conda命令安装cuda、cudnn、tensorflow(-gpu)、pytorch
# 安装cuda
## 查找可安装的版本
conda search cudatoolkit
## 根据查找结果安装特定版本
conda install cudatoolkit=11.3
# 安装cudnn
## 查找可安装的版本
conda search cudnn --info
## 根据查找结果安装特定版本
conda install cudnn=8.2.1
# 安装pytorch,这里是下载文件到本地后安装的
conda install --use-local pytorch-1.10.0-py3.8_cuda11.3_cudnn8.2.0_0.tar.bz2
注意:在查找cudnn时请带上“–info”,这样就可以看到cudnn与cudatoolkit的对应关系。
验证环境是否安装成功
# 验证pytorch是否安装成功
import torch
print(torch.cuda.is_available())
print(torch.__version__)
# 验证cuda是否安装成功
print(torch.version.cuda)
# 验证cudnn是否安装成功
print(torch.backends.cudnn.version())
一个小问题:
在使用openmmlab的算法库时遇到numpy版本问题,在尝试安装各种版本时一共遇到了三个不同的报错
- module ‘numpy’ has no attribute ‘int’
- ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject
- ImportError: numpy.core.multiarray failed to import
最终解决方案:
pip install numpy==1.23