Linux和Windows系统下:安装Anaconda、Paddle、tensorflow、pytorch,GPU[cuda、cudnn]、CPU安装教学,以及查看CPU、GPU内存使用情况
1.下载 Anaconda 的安装包
Anaconda安装:Anaconda是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。使用Anaconda可以通过创建多个独立的Python环境,避免用户的Python环境安装太多不同版本依赖导致冲突。
Anaconda 是一个免费开源的 Python 和 R 语言的发行版本,用于计算科学,Anaconda 致力于简化包管理和部署。Anaconda 的包使用软件包管理系统 Conda 进行管理。Conda 是一个开源包管理系统和环境管理系统,可在 Windows、macOS 和 Linux 上运行。本文档为你介绍 Anaconda 安装方式。
1.1 Linux下载Anaconda
首先需要在官网上选择需要安装的版本。
官网地址:repo.anaconda.com/archive/ 如选择当前最新版本进行安装:
repo.anaconda.com/archive/Ana…
然后下载该安装包。
下载命令
wget https://repo.anaconda.com/archive/Anaconda3-2023.07-0-Linux-x86_64.sh
- 进入安装包所在目录,先对安装包进行赋权,再执行安装程序
#查看路径
pwd
赋权命令:
chmod +x Anaconda3-2023.07-0-Linux-x86_64.sh
安装命令:
sh Anaconda3-2023.07-0-Linux-x86_64.sh
2. 出现如下画面:
- 点击 Enter(回车键),出现 More,继续按 Enter,最后输入 yes 同意用户许可证就行。
- 直至出现以下画面,就安装成功了!
1.2 Windows下载Anaconda
参考文章:blog.csdn.net/sinat_39620…
- 第一步 下载
-
在 Anaconda官网 选择下载Windows Python3.8 64-Bit版本。
-
确保已经安装Visual C++ Build Tools(可以在开始菜单中找到),如未安装,请点击 下载安装。
- 第二步 安装
运行下载的安装包(以.exe为后辍),根据引导完成安装, 用户可自行修改安装目录(如下图)
- 第三步 使用
点击Windows系统左下角的Windows图标,打开:所有程序->Anaconda3/2(64-bit)->Anaconda Prompt在命令行中执行指令即可
后续框架库包安装同linux
2.环境变量配置
2.1 linux环境变量配置
Linux上成功安装anaconda后-bash: conda: command not found
如题,出现这个问题可能是环境变量配置有问题。
省流请看这里:执行cat ~/.bashrc
命令查看.bashrc
文件内容,若文件中没有export PATH="XXX/anaconda3/bin:$PATH"
说明是环境变量未配置,可以继续往下看了;若文件中有此路径,请退出本文,自行校对一下路径。
- 打开
.bashrc
文件
vim ~/.bashrc
2. 在最后一行新增 anaconda 路径
export PATH="XXX/anaconda3/bin:$PATH"
3. 保存文件(按esc
后输入:wq
回车)并使环境变量生效[打开文件后按i进入编辑模式,按Esc退出编辑模式,shift+冒号然后输入wq 保存文件并退出]
注意:这里是anaconda的安装路径,根据自己的安装路径即可
source ~/.bashrc
执行以上三步后,便可在linux上使用conda命令了!
2.2 Windows 环境变量配置
其实,以上的环境变量配置,相当于在window环境下的环境变量加上环境变量。如在window环境下安装anaconda,安装过程中会提示是否将环境变量加入到path中,如果选上该选项,便可省去很多麻烦,安装完后直接在终端使用conda命令;
如果没有选上,是无法直接使用conda命令的,需要在系统的环境变量中加上安装路径才可以使用conda命令。自动添加的安装路径的步骤:此电脑–>属性–>高级系统设置–>环境变量–>系统变量–>Path添加anaconda的安装路径。
3.用 conda 创建虚拟环境
#1.创建指定python版本的环境
conda create --name paddlenlp python=3.8
#2. 激活环境
conda activate paddlenlp
#3.退出环境
conda deactivate
4.安装项目依赖包&深度学习框架
4.0 其他环境检查
4.0.1 确认 Python 安装路径
确认您的 conda 虚拟环境和需要安装 PaddlePaddle 的 Python 是您预期的位置,因为您计算机可能有多个 Python。进入 Anaconda 的命令行终端,输入以下指令确认 Python 位置。
输出 Python 路径的命令为:
根据您的环境,您可能需要将说明中所有命令行中的 python3 替换为具体的 Python 路径
4.0.2 检查 Python 版本
使用以下命令确认版本
4.0.3 检查系统环境
确认 Python 和 pip 是 64bit,并且处理器架构是 x86_64(或称作 x64、Intel 64、AMD64)架构。下面的第一行输出的是”64bit”,第二行输出的是”x86_64(或 x64、AMD64)” 即可:
python3 -c "import platform;print(platform.architecture()[0]);print(platform.machine())"
4.1安装项目依赖包
安装项目requirement.txt文件依赖:
pip install -r requirement.txt
生成requirement.txt文件:
pip freeze > requirements.txt
4.2 安装Paddle&Paddlenlp
4.2.1 安装paddle
官网:www.paddlepaddle.org.cn/install/qui…
windows安装使用win下指令即可
根据版本进行安装 选择下面您要安装的 PaddlePaddle
4.2.1.1添加清华源(可选)
对于国内用户无法连接到 Anaconda 官方源的可以按照以下命令添加清华源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
4.2.2CUDA安装
4.2.1.2 CPU 版的 PaddlePaddle
如果您的计算机没有 NVIDIA® GPU,请安装 CPU 版的 PaddlePaddle
conda install paddlepaddle==2.4.2 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/
4.2.1.3 GPU 版的 PaddlePaddle
- 对于
CUDA 10.2
,需要搭配 cuDNN 7.6.5(多卡环境下 NCCL>=2.7),安装命令为:
conda install paddlepaddle-gpu==2.4.2 cudatoolkit=10.2 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/
- 对于
CUDA 11.2
,需要搭配 cuDNN 8.2.1(多卡环境下 NCCL>=2.7),安装命令为:
conda install paddlepaddle-gpu==2.4.2 cudatoolkit=11.2 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge
- 对于
CUDA 11.6
,需要搭配 cuDNN 8.4.0(多卡环境下 NCCL>=2.7),安装命令为:
conda install paddlepaddle-gpu==2.4.2 cudatoolkit=11.6 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge
- 对于
CUDA 11.7
,需要搭配 cuDNN 8.4.1(多卡环境下 NCCL>=2.7),安装命令为:
conda install paddlepaddle-gpu==2.4.2 cudatoolkit=11.7 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge
您可参考 NVIDIA 官方文档了解 CUDA 和 CUDNN 的安装流程和配置方法,请见 CUDA,cuDNN
4.2.1.4 pip安装
pip install paddlepaddle-gpu==2.4.2.post112 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html
4.2.1.5 CUDA Toolkit 11.2 官网下载
CUDA Toolkit 11.2 Downloads 链接
wget https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux.run
sudo sh cuda_11.2.0_460.27.04_linux.run
ubuntu环境下需额外注意:
┌──────────────────────────────────────────────────────────────────────────────┐
│ End User License Agreement │
│ -------------------------- │
│ │
│ The CUDA Toolkit End User License Agreement applies to the │
│ NVIDIA CUDA Toolkit, the NVIDIA CUDA Samples, the NVIDIA │
│ Display Driver, NVIDIA Nsight tools (Visual Studio Edition), │
│ and the associated documentation on CUDA APIs, programming │
│ model and development tools. If you do not agree with the │
│ terms and conditions of the license agreement, then do not │
│ download or use the software. │
│ │
│ Last updated: Nov 2, 2020. │
│ │
│ │
│ Preface │
│ ------- │
│ │
│ The Software License Agreement in Chapter 1 and the Supplement │
│ in Chapter 2 contain license terms and conditions that govern │
│ the use of NVIDIA software. By accepting this agreement, you │
│──────────────────────────────────────────────────────────────────────────────│
│ Do you accept the above EULA? (accept/decline/quit): │
│ accept │
└──────────────────────────────────────────────────────────────────────────────┘
输入accept
┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Installer │
│ - [ ] Driver │
│ [ ] 460.27.04 │
│ + [X] CUDA Toolkit 11.2 │
│ [X] CUDA Samples 11.2 │
│ [X] CUDA Demo Suite 11.2 │
│ [X] CUDA Documentation 11.2 │
│ Options │
│ Install │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ Up/Down: Move | Left/Right: Expand | 'Enter': Select | 'A': Advanced options │
└──────────────────────────────────────────────────────────────────────────────┘
#把默认选中的driver取消选中 然后install
4.2.1.6 设置环境变量
vim ~/.bashrc
#复制
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64
export PATH=$PATH:/usr/local/cuda-11.2/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-11.2
source ~/.bashrc
安装完成:输入 nvcc -V 验证 显示
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Nov_30_19:08:53_PST_2020
Cuda compilation tools, release 11.2, V11.2.67
Build cuda_11.2.r11.2/compiler.29373293_0
4.2.1.7验证安装
安装完成后您可以使用 python3 进入 python 解释器,输入import paddle ,再输入 paddle.utils.run_check()
import paddle
paddle.utils.run_check()
如果出现PaddlePaddle is installed successfully!,说明您已成功安装。
- 报错:ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory
解决办法:
- 简约版(省流)
在激活后执行export LD_LIBRARY_PATH=”$CONDA_PREFIX/lib”将包括libcudart.so.11.0如果你想让它自动化,将此内容添加到env-prefix/etc/conda/activate.d/env_vars.sh,这将在conda activate上运行脚本并设置LD_LIBRARY_PATH
cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
touch ./etc/conda/activate.d/env_vars.sh
#写入 并保存
vim ./etc/conda/activate.d/env_vars.sh
export LD_LIBRARY_PATH="$CONDA_PREFIX/lib"
-
详细版
- activate你的虚拟环境,查看虚拟环境路径
echo $CONDA_PREFIX
- 去这个路径下建立这些文件夹和文件。在activate的时候,会自动运行activate.d/env_vars.sh,deactivate的时候,会自动运行deactivate.d/env_vars.sh。你可以设置任何你想设置的变量,这里我们更改LD_LIBRARY_PATH
cd $CONDA_PREFIX mkdir -p ./etc/conda/activate.d mkdir -p ./etc/conda/deactivate.d touch ./etc/conda/activate.d/env_vars.sh touch ./etc/conda/deactivate.d/env_vars.sh
- 编辑activate.d/env_vars.sh,注意换成你的名字,注意=前后不能有空格哦
export OLD_LD_LIBRARY_PATH=${LD_LIBRARY_PATH} export LD_LIBRARY_PATH=anaconda3/envs/your_name/lib64
编辑deactivate.d/env_vars.sh,这样deactivate的时候,会恢复设置
export LD_LIBRARY_PATH=${OLD_LD_LIBRARY_PATH} unset OLD_LD_LIBRARY_PATH
- deactivate虚拟环境,再次activate你的虚拟环境,再查看
echo $CONDA_PREFIX
可以看到已经变成了anaconda3/envs/your_name/lib64。如果这个路径下的gcc已经含有了GLIBCXX_3.4.20,那么就不再会报错了。
4.2.3 cuDNN
部分提示:Linux系统:CentOS7:sudo: apt-get:找不到命令”的解决方法
原因分析:这是由于CentOS的软件安装工具不是apt-get,而是yum,使用yum命令代替apt-get即可。
4.2.3.1 Linux下安装
- 准备文件
下载后解压:tar vxf cudnn-10.1-linux-x64-v8.0.5.39.tgz
解压后得到 cuda 的文件夹,重命名为 cudnn_8.0.5, 并拷贝到/usr/local/
下:
sudo cp -r -d ./cudnn_8.0.5 usr/local/
把 / usr/local/cudnn_8.0.5 中的内容复制到 /usr/local/cuda/include 中
sudo cp /usr/local/cudnn_8.0.5/include/* usr/local/cuda/include/
重置读写权限
sudo chmod a+r /usr/local/cuda/include/cudnn.h
- 添加软链接环境变量
将/usr/local/cudnn_8.0.5/lib64
添加到环境变量 LD_LIBRARY_PATH 中
gedit ~/.bashrc
在最后添加:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cudnn__8.0.5/lib64
使环境变量生效:
source ~/.bashrc
4.2.3.1 ubuntu下安装
自行根据实际情况选择:ubuntu 20.04 、ubuntu 16.04 ubuntu 18.04 版本
#依次安装
sudo dpkg -i libcudnn8_8.1.1.33-1+cuda11.2_amd64.deb
sudo dpkg -i libcudnn8-dev_8.1.1.33-1+cuda11.2_amd64.deb
sudo dpkg -i libcudnn8-samples_8.1.1.33-1+cuda11.2_amd64.deb
- 验证cuDNN可用
#官方说法:To verify that cuDNN is installed and is running properly, compile the mnistCUDNN sample located in the /usr/src/cudnn_samples_v8 directory in the debian file.
# 将cuDNN例子复制到可写路径中
cp -r /usr/src/cudnn_samples_v8/ $HOME
# 转到可写路径
cd ~/cudnn_samples_v8/mnistCUDNN
# 编译文件。
sudo make clean
sudo make
# 运行样例程序。
sudo ./mnistCUDNN
如果成功运行,会显示下列信息:
bai@ubuntu:~/cudnn_samples_v8/mnistCUDNN$ sudo ./mnistCUDNN
Executing: mnistCUDNN
cudnnGetVersion() : 8101 , CUDNN_VERSION from cudnn.h : 8101 (8.1.1)
Host compiler version : GCC 9.3.0
There are 2 CUDA capable devices on your machine :
device 0 : sms 30 Capabilities 6.1, SmClock 1582.0 Mhz, MemSize (Mb) 12196, MemClock 5705.0 Mhz, Ecc=0, boardGroupID=0
device 1 : sms 30 Capabilities 6.1, SmClock 1582.0 Mhz, MemSize (Mb) 12192, MemClock 5705.0 Mhz, Ecc=0, boardGroupID=1
Using device 0
Testing single precision
Loading binary file data/conv1.bin
Loading binary file data/conv1.bias.bin
......
Resulting weights from Softmax:
0.0000000 0.0000008 0.0000000 0.0000002 0.0000000 0.9999820 0.0000154 0.0000000 0.0000012 0.0000006
Result of classification: 1 3 5
Test passed!
#查看cudnn版本
cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
4.2.3.1 centos下安装
#依次安装
yum install libcudnn8-8.1.1.33-1.cuda11.2.x86_64.rpm
yum install libcudnn8-devel-8.1.1.33-1.cuda11.2.x86_64.rpm
yum install libcudnn8-samples-8.1.1.33-1.cuda11.2.x86_64.rpm
即可
4.2.4 安装paddlenlp
- 环境依赖
- python >= 3.7
- paddlepaddle >= 2.3
- pip安装
#创建名为my_paddlenlp的环境,指定Python版本为3.8
conda create -n my_paddlenlp python=3.8
#进入my_paddlenlp环境
conda activate my_paddlenlp
#安装PaddleNLP
pip install --upgrade paddlenlp>=2.0.0rc -i https://pypi.org/simple
pip install --upgrade paddlenlp>=2.0.0rc -i https://pypi.tuna.tsinghua.edu.cn/simple
github代码会跟随开发进度不断更新:或者可通过以下命令安装最新 develop 分支代码:
pip install --pre --upgrade paddlenlp -f https://www.paddlepaddle.org.cn/whl/paddlenlp.html
按如上方式配置后,即可在环境中使用PaddleNLP了,命令行输入python回车后,import paddlenlp试试吧,之后再次使用都可以通过打开’所有程序->Anaconda3/2(64-bit)->Anaconda Prompt’,再执行conda activate my_paddlenlp进入环境后,即可再次使用PaddleNLP。
问题一: 相关pip问题默认镜像问题(trusted-host问题),安装设定清华源即可
进入虚拟环境,查看pip安装路径
whereis pip
pip: /usr/bin/pip3.8 /etc/pip.conf /root/anaconda3/envs/paddlenlp/bin/pip
#查看pip.conf,修改成清华源,:wq 保存即可
vim /etc/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
问题二:报错提示:pip install –use-pep517
pip isntall --use-pep517 -U paddlenlp
- 代码安装
git clone https://github.com/PaddlePaddle/PaddleNLP.git
cd PaddleNLP
git checkout develop
如果遇到:github 报错 Failed to connect to github.com port 443:connection timed out、一般原因:电脑里开启了代理,例如开启了翻墙软件等,就会造成这个原因
取消全局代理:
git config --global --unset http.proxy
git config --global --unset https.proxy
4.3 安装pytorch
4.3.1 GPU版本安装
方法一:
安装 pytorch 需要注意 torch 与 torchvision 的版本对应,参照以下网址对照:
windows安装使用win下指令即可
从官网上找到适合自己版本的安装pytorch的指令 pytorch.org/get-started…
-
创建虚拟环境,参考3.用 conda 创建虚拟环境
-
安装pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
方法二
先在以下三个网站下载需要的安装包(根据自己的驱动选择):
- Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source
- Mirror https://download.pytorch.org/whl/cu100/torch_stable.html
- download.pytorch.org/whl/torch_s…
在conda环境下安装:
conda activate pytorch1.10.0 # 进入conda环境,这个是我之前创建好的
cd Download
pip install torchaudio-0.8.0-cp38-cp38m-linux_x86_64.whl
pip install torchvision-0.8.0-cp38-cp38m-linux_x86_64.whl
pip install torchvision-0.9.0+cu111-cp38-cp38m-linux_x86_64.whl
4.3.2 CPU版本安装
pip install torch torchvision torchaudio
4.4 安装tensorflow2.6.0-gpu(conda环境下)
根据TensorFlow 官网,我们选取CUDA11.2搭配cuDNN8.1安装,NVIDIA驱动版本尽量选460系列
conda activate tensorflow2.6.0 # 进入conda环境,这个是我之前创建好的
pip install tensorflow-gpu==2.6.0
其他加速库安装参考前面
5.Linux查看CPU、GPU内存使用
5.1 查看 CPU 内存使用情况
1、输入命令:top
,显示如下
top - 17:09:22 up 12 days, 23:10, 12 users, load average: 1.69, 1.43, 1.27
Tasks: 885 total, 3 running, 877 sleeping, 4 stopped, 1 zombie
%Cpu(s): 2.9 us, 0.6 sy, 0.0 ni, 95.3 id, 1.2 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 13150492+total, 11463488 free, 20194752 used, 99846680 buff/cache
KiB Swap: 4194300 total, 4088316 free, 105984 used. 11051801+avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
65593 root 20 0 161460 6120 4368 S 1.7 0.0 2:51.34 sshd
2、输入命令:htop
,显示如下
若没有该命令,需要先安装,ubuntu 安装命令为:
sudo apt-get install htop
centos
安装命令为:
yum install htop
5.2 查看 GPU 内存使用情况
1、输入命令: nvidia-smi
,显示如下,该命令只能显示一次。
2、实时显示
1)使用 watch 命令, 按照指定间隔刷新,例如下面命令是每隔 1s 刷新一次
watch -n 1 nvidia-smi
2)watch 每个时间周期开启一个进程 (PID),查看后关闭进程,会影响 cuda 操作,建议使用 nvidia-smi -l n 或者 nvidia-smi –loop=n,这个命令执行期间一直是一个进程 PID。例如下面命令是每隔 1s 刷新一次。
nvidia-smi -l 1
更多优质内容请关注公号&知乎:汀丶人工智能;会提供一些相关的资源和优质文章,免费获取阅读。