深度学习环境搭建部署(DeepLearning 神经网络)
工作环境
系统:Ubuntu LTS 显卡:GPU NVIDIA驱动:410.93 CUDA:10.0 Python:.x
CUDA以及NVIDIA驱动安装,详见https://www.cnblogs.com/orzs/p/10951473.html
需要部署的软件
conda环境 nccl2环境 openmpi环境 horovod环境
1. 创建conda环境
官网下载地址:https://www.anaconda.com/distribution/#download-section
下载合适的安装文件,然后运行。
cd init sudo wget https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh bash Anaconda3-2019.03-Linux-x86_64.sh
根据提示操作,并选择安装目录,默认安装在~/anaconda3/ 目录下。
注:初始化操作
1、如果默认不初始化,则安装之后,没有conda命令,需要手动初始化
注:为避免用户名泄露,此处的用户名均已$USER替代
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>>
You have chosen to not have conda modify your shell scripts at all.
To activate conda's base environment in your current shell session:
eval "$(/home/$USER/anaconda3/bin/conda shell.YOUR_SHELL_NAME hook)"
To install conda's shell functions for easier access, first activate, then:
conda init
If you'd prefer that conda's base environment not be activated on startup,
set the auto_activate_base parameter to false:
conda config --set auto_activate_base false
Thank you for installing Anaconda3!
===========================================================================
Anaconda and JetBrains are working together to bring you Anaconda-powered
environments tightly integrated in the PyCharm IDE.
PyCharm for Anaconda is available at:
https://www.anaconda.com/pycharm
2、如果选择初始化,则会修改~/.bashrc文件,并创建conda命令 installation finished. Do you wish the installer to initialize Anaconda3 by running conda init? [yes|no] "deeplearning" 105L, 3558C written installation finished. Do you wish the installer to initialize Anaconda3 by running conda init? [yes|no] [no] >>> yes WARNING: The conda.compat module is deprecated and will be removed in a future release. no change /home/$USER/anaconda3/condabin/conda no change /home/$USER/anaconda3/bin/conda no change /home/$USER/anaconda3/bin/conda-env no change /home/$USER/anaconda3/bin/activate no change /home/$USER/anaconda3/bin/deactivate no change /home/$USER/anaconda3/etc/profile.d/conda.sh no change /home/$USER/anaconda3/etc/fish/conf.d/conda.fish no change /home/$USER/anaconda3/shell/condabin/Conda.psm1 no change /home/$USER/anaconda3/shell/condabin/conda-hook.ps1 no change /home/$USER/anaconda3/lib/python3./site-packages/xonsh/conda.xsh no change /home/$USER/anaconda3/etc/profile.d/conda.csh modified /home/$USER/.bashrc ==> For changes to take effect, close and re-open your current shell. <== If you'd prefer that conda's base environment not be activated on startup, set the auto_activate_base parameter to false: conda config --set auto_activate_base false Thank you for installing Anaconda3! =========================================================================== Anaconda and JetBrains are working together to bring you Anaconda-powered environments tightly integrated in the PyCharm IDE. PyCharm for Anaconda is available at: https://www.anaconda.com/pycharm
执行以下命令,使conda环境生效
source ~/.bashrc
2. 进入conda py3.6
conda create -n py36 python=3.6 conda activate py36
3. 安装必要包
#修改清华的pip源
mkdir ~/.pip touch ~/.pip/pip.conf
#pip.conf中写入以下内容
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
安装包
pip pip install opencv-python==4.1.0.25 pip pip
4. 安装nccl2
下载地址:https://docs.nvidia.com/deeplearning/sdk/nccl-install-guide/index.html
根据系统和cuda版本下载对应的nccl2
-ga-cuda10.0_1-1_amd64.deb -ga-cuda10./7fa2af80.pub(根据提示执行) sudo apt update -+cuda10. libnccl-dev=-+cuda10.
5、安装libcudnn
根据版本,下载对应的文件:https://developer.nvidia.com/rdp/cudnn-download
-+cuda10.0_amd64.deb -+cuda10.0_amd64.deb
6. 安装openmpi
下载地址:https://www.open-mpi.org/faq/?category=building#easy-build
sudo wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.1.tar.gz .tar.gz | tar xf - cd openmpi-/ sudo ./configure --prefix=/usr/local sudo make all install
7. 安装horovod
文档说明:https://github.com/horovod/horovod/blob/master/docs/gpus.rst
HOROVOD_GPU_ALLREDUCE=NCCL pip install --no-cache-dir horovod
注:HOROVOD_WITH_TENSORFLOW=1 可开启debug模式。
至此,深度学习环境安装完成,接下来即可做深度训练。
conda环境常用命令
如何默认不使用conda环境
conda config --set auto_activate_base false
退出conda环境
conda deactivate
进入conda环境
conda activate
安装过程中可能出现的问题:
1、
ImportError: libcudnn.so.: cannot open shared object file: No such file or directory
原因:cudann未安装或者版本错误
解决:根据版本,下载对应的文件:https://developer.nvidia.com/rdp/cudnn-download
-+cuda10.0_amd64.deb -+cuda10.0_amd64.deb
2、
ImportError: libcuda.so.: cannot open shared object file: No such file or directory
原因:一般是cuda版本不对导致
解决:安装对应的cuda版本即可
3、
ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory
原因:一般情况是cuda链接库的问题
解决:执行以下命令即可
sudo ldconfig /usr/local/cuda/lib64
4、奇葩问题:
ModuleNotFoundError: No module named 'cv2'
如果未安装opencv-python,直接执行以下命令安装即可
pip install opencv-python==4.1.0.25
如果已经安装,依然错误提示,我遇到的情况是,Python被劫持
执行命令
which python
回显提示
~/anaconda3/envs/py36/bin/python
执行
~/anaconda3/envs/py36/bin/python
看到的版本是3.6.8
但是直接python看到是3.6.6
原因:python被劫持
解决:将~/.bashrc里的python环境变量清除即可
# alias python=/usr/bin/python3.
5、执行以下命令报错
conda create -n py36 python=3.6
WARNING: The conda.compat module is deprecated and will be removed in a future release. Collecting package metadata: failed UnavailableInvalidChannel: The channel is not accessible or is invalid. channel name: anaconda/pkgs/free channel url: https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free error code: You will need to adjust your conda configuration to proceed. Use `conda config --show channels` to view your configuration's current state, and use `conda config --show-sources` to view config file locations.
检查conda配置(以前曾经安装过conda)
conda config --show-sources
channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ - defaults show_channel_urls: True
原因:conda已经不支持外部源
解决:删除清华的源即可
conda config --remove channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/' conda config --remove channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'
6、
[$USER-nmg-:] mca_base_component_repository_open: unable to open mca_oob_ud: libibverbs.so.: cannot open shared object file: No such file or directory (ignored) [$USER-nmg-:] mca_base_component_repository_open: unable to open mca_oob_ud: libibverbs.so.: cannot open shared object file: No such file or directory (ignored) [$USER-nmg-:] mca_base_component_repository_open: unable to open mca_btl_openib: libibverbs.so.: cannot open shared object file: No such file or directory (ignored)
原因:缺少libibverbs.so.1导致
解决:安装libibverbs1即可
apt-cache search libibverbs sudo apt-get install libibverbs1
7、
python: symbol lookup error: /usr/local/lib/openmpi/mca_coll_cuda.so: undefined symbol: opal_cuda_check_bufs
原因:openmpi安装有问题或者版本冲突导致
解决:卸载并重新安装openmpi即可。
cd /where/your/old_mpi/sources/are //进入其他版本的安装目录 sudo make uninstall sudo rm -rf /usr/local/lib/openmpi /usr/local/lib/libmca* /usr/local/lib/libmpi* /usr/local/lib/libompitrace* /usr/local/lib/libopen* /usr/local/lib/liboshmem* /usr/local/lib/mpi_* cd /where/your/mpi/sources/are //进入需要安装的版本的目录 sudo ./configure --prefix=/usr/local sudo make all install
8、
tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
我遇到的情况是,已经安装了对应的版本(cuda10.0、libcudnn7-dev_7.6.0.64、tensorflow-gpu-1.13.1),但是被/usr/local/cuda-9.0/空目录影响到了,删除此目录即可。
sudo rm -rf /usr/local/cuda-9.0/
深度学习环境搭建部署(DeepLearning 神经网络)的更多相关文章
- 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0
目录 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0 Reference 硬件说明: 软件准备: 1. 安装Ubuntu ...
- 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- [AI开发]centOS7.5上基于keras/tensorflow深度学习环境搭建
这篇文章详细介绍在centOS7.5上搭建基于keras/tensorflow的深度学习环境,该环境可用于实际生产.本人现在非常熟练linux(Ubuntu/centOS/openSUSE).wind ...
- linux系统下深度学习环境搭建和使用
作为一个AI工程师,对Linux的一些技能的掌握也能从一定层面反应工程师的资深水平. 要求1:基于SSH的远程访问(本篇文章) 能用一台笔记本电脑,远程登陆一台linux服务器 能随时使用笔记本电脑启 ...
- Win10+RTX2080深度学习环境搭建:tensorflow、mxnet、pytorch、caffe
目录 准备工作 设置conda国内镜像源 conda 深度学习环境 tensorflow.mxnet.pytorch安装 tensorflow mxnet pytorch Caffe安装 配置文件修改 ...
- Ubuntu深度学习环境搭建 tensorflow+pytorch
目前电脑配置:Ubuntu 16.04 + GTX1080显卡 配置深度学习环境,利用清华源安装一个miniconda环境是非常好的选择.尤其是今天发现conda install -c menpo o ...
- 深度学习环境搭建(CUDA9.0 + cudnn-9.0-linux-x64-v7 + tensorflow_gpu-1.8.0 + keras)
关于计算机的硬件配置说明 推荐配置 如果您是高校学生或者高级研究人员,并且实验室或者个人资金充沛,建议您采用如下配置: 主板:X299型号或Z270型号 CPU: i7-6950X或i7-7700K ...
- 深度学习环境搭建常用网址、conda/pip命令行整理(pytorch、paddlepaddle等环境搭建)
前言:最近研究深度学习,安装了好多环境,记录一下,方便后续查阅. 1. Anaconda软件安装 1.1 Anaconda Anaconda是一个用于科学计算的Python发行版,支持Linux.Ma ...
- (通用)深度学习环境搭建:tensorflow安装教程及常见错误解决
区别于其他入门教程的"手把手式",本文更强调"因"而非"果".我之所以加上"通用"字样,是因为在你了解了这个开发环境之后 ...
随机推荐
- [剑指offer] 54. 字符流中第一个不重复的字符
题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g".当从该字符流中读出 ...
- python小技巧 将二元列表转为一元列表
list=[num for row in nums for num in row]
- K-Means(K均值)、GMM(高斯混合模型),通俗易懂,先收藏了!
1. 聚类算法都是无监督学习吗? 什么是聚类算法?聚类是一种机器学习技术,它涉及到数据点的分组.给定一组数据点,我们可以使用聚类算法将每个数据点划分为一个特定的组.理论上,同一组中的数据点应该具有相似 ...
- Set接口的使用
Set集合里多个对象之间没有明显的顺序.具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection方法相同.只是行为不同(Set不允许包含重复元素). Set集合不 ...
- Python3发送邮件功能
Python3实现邮件发送功能 import smtplib from email.mime.text import MIMEText # 导入模块 class SendEmail: def send ...
- Android Studio 设置/更改 SDK 路径
网上看到有人说需要重启 Android Studio,感觉麻烦,就自己试了试其他方法,果然还是有的! 很简单,只需打开 File 菜单下的 Project Structure 就可以设置了,如图所示:
- Spring 核心技术(5)
接上篇:Spring 核心技术(4) version 5.1.8.RELEASE 1.4.5 自动装配协作者 Spring 容器可以自动连接协作 bean 之间的关系.你可以让 Spring 通过检查 ...
- [Hei.Captcha] Asp.Net Core 跨平台验证码实现
写在前面 说起来比较丢脸.我们有个手机的验证码发送逻辑需要使用验证码,这块本来项目里面就有验证码绘制逻辑,.Net Framework的,使用的包是System.Drawing,我把这验证码绘制逻辑复 ...
- 面试必谈的哈希,.Net 程序员温故而知新
引言: 作为资深老鸟,有事没事,出去面试:找准差距.定位价值. 面试必谈哈希, Q1:什么是哈希? Q2:哈希为什么快? Q3:你是怎么理解哈希算法利用空间换取时间的? Q4:你是怎么解决哈希冲突的? ...
- Docker部署ELK 日志归集
ELK ELK是Elasticsearch.Logstash.Kibana的缩写,使用ELK的原因是因为公司使用Spring cloud部署了多个微服务,不同的微服务有不同的日志文件,当生产上出现问题 ...