conda会维护各个包的依赖,但是太严格了,我不喜欢

有的包只发了conda我也不得不用conda了

装个python方便一点,其他的包能用pypi就用pypi,

Quick Start

Get a Installer

官网
镜像站

我用的Linux

下载的是清华源的 Miniconda3-py39_4.12.0-Linux-x86_64.sh

下载下来是个.sh就是安装包

1
2
3
4
5
6
7
8
9
10
11
12
13
$> bash Miniconda3-py39_4.12.0-Linux-x86_64.sh -h
usage: Miniconda3-py39_4.12.0-Linux-x86_64.sh [options]

Installs Miniconda3 py39_4.12.0

-b run install in batch mode (without manual intervention),
it is expected the license terms are agreed upon
-f no error if install prefix already exists
-h print this help message and exit
-p PREFIX install prefix, defaults to /root/miniconda3, must not contain spaces.
-s skip running pre/post-link/install scripts
-u update an existing installation
-t run package tests after installation (may install conda-build)

-b batch mode就是无交互直接解压到安装目录
-p prefix 就是就是安装路径,默认安装到/root/miniconda3

Install

bash Miniconda3-py39_4.12.0-Linux-x86_64.sh就进入交互式安装

我就直接bash Miniconda3-py39_4.12.0-Linux-x86_64.sh -b安装完成

安装完成后会有一个base环境。里面是python3.9, 因为安装包下的就是py39的

所有和conda有关的都在/root/miniconda3里面, 所以如果想删掉miniconda直接把这个目录删掉就行了

Setup With Bash

刚刚只是解压出来,并没有把conda加到PATH里

1
$ /root/miniconda3/bin/conda init bash

这个会修改.bashrc,下次进入的时候就自动把conda加到PATH下

也可以init zsh等其他shell

最后显示要重新打开shell(自己source一下也行)

再次打开后发现bash最前面多了一个(base)表示在base环境下

配置conda

修改HOME 下的.condarc,主要就是改了conda源

这里放一个我自己的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
default_channels:
- https://mirror.sjtu.edu.cn/anaconda/pkgs/r
- https://mirror.sjtu.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2

custom_channels:
conda-forge: https://mirror.sjtu.edu.cn/anaconda/cloud/
pytorch: https://mirror.sjtu.edu.cn/anaconda/cloud/
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

channels:
- defaults

用的是sjtu源还比较快,就是有时候网站不开。

Install Packages

建议不动原来的base环境,后面再装可能会和base环境里的冲突。

Create new ENV
1
$ conda create -n myenv python=3.9 -c pytorch -c conda-forge

-n 环境名

-c 指定custom_channels,对应配置里的 channels字段,是个列表,可以多个

Install Anything

以 nvidia cudatoolkit 为例

如果环境里已经有driver了cudatoolkit可以用conda装,

conda也方便在同一个机器上共存不同版本的cuda

cuda有driver版本要求,新的cuda需要新的driver,也就是说最新的driver可以运行全部版本的cuda

nvidia-smi查看driver版本

cuda 兼容性文档

The version of the development NVIDIA GPU Driver packaged in each CUDA Toolkit release is shown below.

Cuda Linux Windows
CUDA 11.8 GA >=520.61.05 >=522.06
CUDA 11.7 Update 1 >=515.48.07 >=516.31
CUDA 11.7 GA >=515.43.04 >=516.01
CUDA 11.6 Update 2 >=510.47.03 >=511.65
CUDA 11.6 Update 1 >=510.47.03 >=511.65
CUDA 11.6 GA >=510.39.01 >=511.23
CUDA 11.5 Update 2 >=495.29.05 >=496.13
CUDA 11.5 Update 1 >=495.29.05 >=496.13
CUDA 11.5 GA >=495.29.05 >=496.04
CUDA 11.4 Update 4 >=470.82.01 >=472.50
CUDA 11.4 Update 3 >=470.82.01 >=472.50
CUDA 11.4 Update 2 >=470.57.02 >=471.41
CUDA 11.4 Update 1 >=470.57.02 >=471.41
CUDA 11.4.0 GA >=470.42.01 >=471.11
CUDA 11.3.1 Update 1 >=465.19.011 >=465.89
CUDA 11.3.0 GA >=465.19.011 >=465.89
CUDA 11.2.2 Update 2 >=460.32.031 >=461.33
CUDA 11.2.1 Update 1 >=460.32.031 >=461.09
CUDA 11.2.0 GA >=460.27.031 >=460.82
CUDA 11.1.1 Update 1 >=455.32 >=456.81
CUDA 11.1 GA >=455.23 >=456.38
CUDA 11.0.3 Update 1 >= 450.51.06 >= 451.82
CUDA 11.0.2 GA >= 450.51.05 >= 451.48
CUDA 11.0.1 RC >= 450.36.06 >= 451.22
CUDA 10.2.89 >= 440.33 >= 441.22
CUDA 10.1 (10.1.105 general release, and updates) >= 418.39 >= 418.96
CUDA 10.0.130 >= 410.48 >= 411.31
CUDA 9.2 (9.2.148 Update 1) >= 396.37 >= 398.26
CUDA 9.2 (9.2.88) >= 396.26 >= 397.44
CUDA 9.1 (9.1.85) >= 390.46 >= 391.29
CUDA 9.0 (9.0.76) >= 384.81 >= 385.54
CUDA 8.0 (8.0.61 GA2) >= 375.26 >= 376.51
CUDA 8.0 (8.0.44) >= 367.48 >= 369.30
CUDA 7.5 (7.5.16) >= 352.31 >= 353.66
CUDA 7.0 (7.0.28) >= 346.46 >= 347.62

安装前先搜索一下

1
$ conda search cudatoolkit -c conda-forge

然后指定版本安装,否则如果安装pytorch,pytorch是不知道我的环境应该装那个版本的cuda。大概率直接找个cuda10装上了

1
$ conda install -c conda-forge cudatoolkit=11.7.0=hd8887f6_10