Linux下Caffe、Docker、Tensorflow、PyTorch环境搭建(CentOS 7)

注:模型的训练、测试、部署都可以通过Docker环境完成,环境问题会更少。

1. CUDA 8.0安装

  • Config env variables
# CUDA PATH
export PATH="/usr/local/cuda-8.0/bin:$PATH"

# CUDA LDLIBRARY_PATH
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH"
  • CUDA check

$ nvcc –version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2016 NVIDIA Corporation Built on Tue_Jan_10_13:22:03_CST_2017 Cuda compilation tools, release 8.0, V8.0.61

2. cuDNN安装

# unzip cudnn
tar zxvf cudnn-8.0-linux-x64-v5.1.tgz
cd cuda

# copy include file
sudo cp include/cudnn.h /usr/local/cuda-8.0/include/

# copy .so file
sudo cp lib64/libcudnn.so.5.1.10 /usr/local/cuda-8.0/lib64/

# add ln link
cd /usr/local/cuda-8.0/lib64/
sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so

3. NCCL安装

# clone nccl
git clone https://github.com/NVIDIA/nccl.git

make CUDA_HOME=/usr/local/cuda-8.0 test

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./build/lib

./build/test/single/all_reduce_test 10000000

make PREFIX=nccl install

# Copy files
sudo cp /yourpath/nccl/build/include/nccl.h /usr/local/include
sudo cp /yourpath/nccl/build/lib/libnccl* /usr/local/lib

# Edit ~/.bashrc
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:/yourpath/nccl/build/lib:$LD_LIBRARY_PATH"

4. Caffe安装

  • Install dependencies
sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5-devel gflags-devel glog-devel lmdb-devel atlas-devel
sudo yum install python-pip
sudo pip install --upgrade pip
sudo pip install numpy
  • Installation

参考http://blog.csdn.net/quincuntial/article/details/53494949

  • Caffe Test

参考http://blog.csdn.net/quincuntial/article/details/53468000

5. Tensorflow安装

sudo pip install tensorflow-gpu

6. PyTorch安装

pip install http://download.pytorch.org/whl/cu80/torch-0.1.12.post2-cp27-none-linux_x86_64.whl
pip install torchvision
pip install lmdb
pip install mahotas
pip install cffi

7. Docker安装

# Install docker
sudo yum install docker-ce

# Start docker
sudo systemctl start docker

# Test docker
sudo docker run hello-world

8. Nvidia-Docker安装

# Install nvida-docker
# https://github.com/NVIDIA/nvidia-docker
wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.1/nvidia-docker-1.0.1-1.x86_64.rpm

sudo rpm -i /tmp/nvidia-docker*.rpm && rm /tmp/nvidia-docker*.rpm

# start
sudo systemctl start nvidia-docker

# Test nvidia-smi
nvidia-docker run --rm nvidia/cuda nvidia-smi     

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏iOS Developer

FFmpeg-iOS推流器的简单封装

1304
来自专栏GIS讲堂

Highcharts导出图片

Highcharts是在做项目涉及到统计图的时候大家的首选,同时也会用到highcharts的export功能,将统计图导出为图片,刚好,最近也遇到了这样的事情...

1732
来自专栏杨建荣的学习笔记

ASM无法启动的问题分析(二)(r7笔记第88天)

第一篇的内容可以参考。ASM无法启动的问题分析(一),有不少的朋友给了一些建议,我也糅合了进来。一并感谢。 当然重启服务发现CSSD服务是Online,但是AS...

37310
来自专栏程序员互动联盟

【android开发】Android GUI系统学习1:Gralloc

Gralloc模块是从Android Eclair(android 2.1)开始加入的一个HAL模块,Gralloc的含义为是Graphics Alloc(图形...

4155
来自专栏Android源码框架分析

Android后台杀死系列之二:ActivityManagerService与App现场恢复机制

本篇是Android后台杀死系列的第二篇,主要讲解ActivityMangerService是如何恢复被后台杀死的进程的(基于4.3 ),在开篇 Fragmen...

2553
来自专栏Netkiller

hyperledger v1.0.5 区块链运维入门(一)

中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com>

51311
来自专栏吴伟祥

Linux命令缩写英文对照记忆(〇) 转

732
来自专栏海天一树

小朋友学C++(21):命名空间

这里的第一行,#include好理解,iostream是输入输出流,包含了输入流istream和输出流ostream。 第二行using namespace s...

1044
来自专栏芋道源码1024

分布式作业系统 Elastic-Job-Lite 源码分析 —— 作业事件追踪

另外,Elastic-Job-Cloud 作业事件追踪 和 Elastic-Job-Lite 基本类似,不单独开一篇文章,记录在该文章里。如果你对 Elasti...

633
来自专栏gaoqin31

基于php+shell的发布系统

  一个比较完善的发布系统首先肯定是要能发布文件,其次当发布出现问题时要能支持撤销,避免长时间无法解决问题影响产品的正常运营。 对于发布脚本语言如PHP,she...

902

扫码关注云+社区