Linux环境下GPU版Pytorch安装
1. 准备环境
Linux系统下若是dash解释器,需先输入bash命令,使用bash解释器。
dash和bash解释器的区别:!!!
2. Anaconda安装
2.1 Anaconda安装与使用
2.1.1 Anaconda安装
参考链接:
2.1.2 Anaconda使用
(1)包管理
-
安装
命令:conda install package_name
例如:
1)安装pandas包,在终端输入:conda install pandas
2)安装多个包:conda install pandas numpy
3)指定包版本:conda install numpy=1.10 -
卸载包
命令:conda remove package_name -
更新包
命令:conda update package_name -
列出已安装包
命令:conda list
(2)环境管理
-
安装nb_conda用于notebook自动关联nb_conda的环境。
-
创建环境:
命令:conda create -n env_name package_name
命令解释:env_name是设置的虚拟环境名,package_name是要安装在创建的虚拟环境红的包名称。
例如:创建名为py2的虚拟环境并安装numpy,在终端输入:
conda create -n py2 numpy
当创建具有特定Python版本的虚拟环境时,如创建名为py3且安装最新版本的Python3.8时,在终端输入:
conda create -n py3 python=3.8 -
进入环境
1)查看所有环境
命令:conda env list 或 conda info --envs
出现的星号表示你现在所在的虚拟环境。默认环境为base环境。
2)进入环境
命令:conda activate my_env
3)离开环境
命令:conda deactivate
4)删除环境
命令:conda env remove -n env_name
2.2 jupyter notebook安装与使用
Anaconda中没有包含jupyter notebook,需要自己安装。
2.2.1 jupyter安装
(1)jupyter安装
在终端输入命令:conda install jupyter notebook
注意:此时只是在默认的base环境下安装了Jupyter notebook。
2.2.2Jupyter使用
- 启动Jupyter
直接在终端输入:jupyter notebook
若不需要启动浏览器,则输入:jupyter notebook --no-browser
(1)更改默认路径
在终端输入vi ~/.jupyter/jupyter_notebook_config.py,进入到配置文件中,找到
#c.NotebookApp.notebook_dir = ' '
将其修改为
c.NotebookApp.notebook_dir = 'E:\Jupyter'
注意记得去掉前面的#号;
然后在终端输入jupyter notebook,出现
Serving notebooks from local directory: E:\Jupyter
表明修改成功。
(2)安装jupyter到其他虚拟环境
- 安装到其他虚拟环境:
由于miniconda(Anaconda)经常会根据项目的不同来创建虚拟环境,故可能需要将Jupyter安装到所需的虚拟环境中。
首先要切换到目标环境如py3中:
conda activate py3
然后执行命令:
conda install -n py3 ipykernel
之后重启jupyter notebook即可。
参考链接:jupyter安装到其他虚拟环境中
-
删除虚拟环境
(1)查看已安装的虚拟环境kernel,命令:
jupyter kernelspec list
(2)删除指定的kernel的命令:
jupyter kernelspec uninstall myenv
参考链接:如何在Jupyter中删除虚拟环境 -
卸载:
在终端依次输入pip install pip-autoremove和 pip-autoremove jupyter -y命令就可以完全卸载jupyter。
3. cuda安装
参考链接:cuda完整安装步骤
4. cudnn安装
参考链接:cudnn完整安装步骤
5. Pythorch安装
- 选择
进入Pytorch官网,点击“install”,对Pytorch进行选择
Pytorch Build:选择Stable(1.8.1);
Your OS:选择Linux;
Package:选择Pip(Linux下推荐选择Pip,Windows下推荐选择Conda);
Language:选择Python;
Compute Platform:选择CUDA 11.1
- 安装
进入到需安装Pytorch的虚拟环境中,然后复制Run this Command里的命令:”“pip3 install torch== 1.8.1 + cu111 torchvision== 0.9.1+cu111 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html”,将命令粘贴到环境中并执行,如果出现安装不上的情况,可以重复执行该命令进行安装。 - 验证
先进入安装了Pytorch的虚拟环境;输入python;
然后输入import torch,如果没有报错则说明Pytorch安装成功;
输入torch.cuda.is_available(),如果是True则说明可以使用GPU,如果是False则说明只能使用CPU。
参考链接:在Jupyter中安装Pytorch
6. Jupyter notebook远程连接Linux服务器
(1)检查是否有jupyter notebook
先用ssh远程连接服务器,在环境下输入命令jupyter notebook,若没有则需要进行安装。安装后可再次输入命令检查。
(2)配置文件
在默认环境下输入以下命令即可:
jupyter notebook --generate-config
(3)设置密码
输入ipython进入ipython编程界面
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb'
在“Enterpassword:”出现时输出自己设置的密码,这个在第(5)步远程登录的时候用到;复制out[2]中的密文:‘sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb’
,然后输入exit()可退出ipython编辑界面。
(4)修改配置文件
输入vim ~/.jupyter/jupyter_notebook_config.py,进入文件编辑页面,此时文件中的所有语句都有#注释,我们直接在文件末尾添加以下语句,注意不要加#注释
c.NotebookAPP.allow_remote_access = True # 意思是允许远程访问 如果没有这句话在虚拟环境下打不开jupyter notebook
c.NotebookApp.ip='*' #意思是任意IP都可以访问
c.NotebookApp.password = u'sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb' #刚才那个生成的密文
c.NotebookApp.open_browser = False#意思是默认不打开浏览器 如果不设置远程访问jupyter 这里可以设置为True
c.NotebookApp.port=10001#随便指定一个你想要的端口,后面可以从这个端口使用
添加完后保存退出。
(5)远程登录jupyter notebook
在连接的服务器中输入jupyter notebook,开启之后直接将在本地的浏览器中输入:服务器ip地址:10001,其中10001是在第(4)步中设置的端口号,例如我们在本地浏览器中输入233.23.23.3:10001;
第一次输入会出现登录界面,将第(3)步中设置的密码输入即可登入。若可以看见服务器中的jupter文件,则说明远程连接成功。
** (6).ipynb文件的运行 **
1) .ipynb文件转.py文件
先目标虚拟环境的命令行下进入“myprogram.ipynb”文件所在目录;
执行jupyter nbconvert --to script myprogram.ipynb,执行成功后会在当前目录下生成一个同名py文件“myprogram.py”;
命令行下运行ipython ./myprogram.py,检查文件是否运行成功。
2)后台运行py文件
输入命令nohup ipython ./myprogram.py >myprogram.log 2>&1 &。该命令会将标准输出写入myprogram.log中,最后的&表示让命令在后台运行,即这个命令执行后即使终端退出,该程序也不会停止运行。
3) 关闭程序
查找该进程端口号PID:ps -aux | grep myprogram.py;
然后输入命令kill -9 PID 关闭掉jupyter进程
参考链接: