ubuntu服务器,深度学习环境配置

查看显卡信息

nvidia-smi

 右上角为cuda可安装的最大版本信息。

版本推荐

CUDA:11.2

CUDNN:8.2

tensorflow-gpu:2.9.0

Python:3.10

知道要安装的CUDA版本后,就很简单了,去NVIDIA官网直接下载对应版本就好了。

CUDA Toolkit Archive | NVIDIA Developer

wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run
sudo sh cuda_11.1.1_455.32.00_linux.run

(对应自己版本信息)

然后选择安装项,一般情况我们都安装了显卡驱动,所以这里第一项驱动最后一个最好不勾选,其他默认安装。

sudo vim ~/.bashrc

$ export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64\
                         ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

特别注意文件夹路径,有时候文件夹直接是/usr/local/cuda,有时候是别的版本号,要确保文件夹存在。

source ~/.bashrc

最后更新环境变量。

检查一下CUDA是否安装正确:(注意文件夹路径一定要存在,需要跟上面设置环境变量的路径保持一致)

cat /usr/local/cuda/version.txt

安装cuDNN

官网下载地址:(需要注册)

CUDA Deep Neural Network (cuDNN) | NVIDIA Developer


 

特别注意拷贝的路径一定是上面指定的环境变量路径!

sudo cp cuda/include/cudnn.h /usr/local/cuda-10.1/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.1/lib64
sudo chmod a+r /usr/local/cuda-10.1/include/cudnn.h 
sudo chmod a+r /usr/local/cuda-10.1/lib64/libcudnn*

查看cuDNN版本方法:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
注意,这句话可能执行了没效果,那是因为新版本换位置了,需要用:

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
这里再次注意路径问题。

至此CUDN + cuDNN安装完成
 

conda安装(略)

tensorflow-gpu 安装。

补充   环境操作:

创建自己的新conda环境:

$ conda create -n [环境名称] python=[需要的版本 X.X]
想使用环境时激活一下:

$ conda activate [环境名称]
想退出环境时:

$ conda deactivate
查看当前存在的环境:

$ conda env list
删除环境:

$ conda remove -n [环境名称] --all

1. conda创建虚拟环境
conda create --name tf1.15 python=3.6

conda activate tf1.15

2. 安装tensorflow wheel的索引
pip install nvidia-pyindex

3. 安装tensorflow-GPU
pip install nvidia-tensorflow==2.9.0

4. 测试tensorflow-GPU是否安装成功

依次输入pythonimport tensorflow as tf, tf.__version__, tf.test.is_gpu_available()查看tensorflow版本并测试GPU能否正常运行。

 

使用本地浏览器连接远程服务器上Jupyter Notebook的配置方法

在服务器上。自己创建的环境中   安装Jupyter Notebook

pip install jupyter notebook

生成配置文件

 jupyter notebook --generate-config
  • 设置自己的密码

输入ipython启动后,输入以下内容:

In [1]: from notebook.auth import passwd

In [2]: passwd()
Enter password: 
Verify password: 
Out[2]: 'argon2:XXX'

In [3]: exit

保存下argon2:XXX,这是后面会用到的密钥。

打开文件

vim ~/.jupyter/jupyter_notebook_config.py

按下 esc,输入 :$,跳到文件最后一行,按下 i 键,进入 INSERT状态 ,然后将以下内容复制粘贴到文件末尾:

c.NotebookApp.ip = '*' # 允许访问此服务器的 IP,星号表示任意 IP
c.NotebookApp.password = u'argon2:XXX' # 之前生成的密码 hash 字串, 粘贴进去
c.NotebookApp.open_browser = False # 运行时不打开本机浏览器
c.NotebookApp.port = 8889 # 使用的端口,随意设置,不建议使用默认的8888,感觉经常会被占用
c.NotebookApp.enable_mathjax = True # 启用 MathJax
c.NotebookApp.allow_remote_access = True # 允许远程访问

按下esc,输入:wq,退出并保存

查看结果&本地与远程的对齐

输入jupyter notebook,显示类似以下信息则启动成功:

[W 18:13:22.817 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 18:13:22.819 NotebookApp] Serving notebooks from local directory: /XXX/XXX
[I 18:13:22.819 NotebookApp] Jupyter Notebook 6.1.5 is running at:
[I 18:13:22.819 NotebookApp] http://node1:8890/
[I 18:13:22.819 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

按照 “running at” 提示的地址,打开本地浏览器,输入ip:port

如果能显示输入密码的界面,那么就成功了!如果显示“无法访问此网页”,那么还得往下走:

此时需要再打开一个本地终端,在本地终端输入:

ssh -N -f -L localhost:8889:localhost:8889 [用户名]@[服务器地址]

前一个8889是本地端口号,可随意设置。后一个8889就是刚才在配置文件里设置的端口号。这样做是为了将本地端口与服务器端口相映射,据说是因为防火墙,这样可以建立一个安全通道。

最后,在本地浏览器输入localhost:8889,输入之前设置的密码,大功告成!

Jupyter Notebook 其他一些要注意的问题

打开.ipynb错误代码500的问题

解决! 

    • 修改配置文件
    • 要先在服务器端启动 jupyter notebook,再另外开个本地终端,在本地终端输入建立端口映射的代码,顺序不能错。
    • 要退出jupyter notebook,按两次control+C就可以。
    • 要断开与服务器的连接,输入logout 就可以。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值