Ubuntu下安装MxNet
来源:互联网 发布:云计算包含哪些技术 编辑:程序博客网 时间:2024/05/29 17:01
本文是2017.1月份的时候安装的步骤, 现在可能有些已经不适用, 请大家注意鉴别.
http://blog.csdn.net/u012436149/article/details/52554176 >Ubuntu 16.04 Cuda7.5 tensorflow0.10.0-gpu
http://phunter.logdown.com/posts/314562 >用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 tensorflow0.10.0-gpu
安装依赖:
sudo apt-get updatesudo apt-get install -y build-essential git libatlas-base-dev libopencv-dev
下载mxnet源码用于编译:
Install git if not already installed.
sudo apt-get updatesudo apt-get -y install git
下载源码:
git clone --recursive https://github.com/dmlc/mxnet
安装nvidia驱动程序
将nouveau加入黑名单
sudo gedit /etc/modprobe.d/blacklist.conf
将下面的代码加到文件最后:
blacklist nouveau
重启电脑
这么做的目的是禁用Ubuntu自带的显卡驱动,为我们下面安装NVIDIA显卡驱动做准备.
安装驱动的时候, 需要关闭XWIN
Ctrl+Alt+F1进入命令行界面;
接着:
sudo service lightdm stop sudo rm /tmp/.X0-lock (删除此文件,如果本来就没有的话,就会报错)
在完成这一步的时候, 我使用了另一台PC, 用ssh远程登录:
ssh elijha@192.168.1.110
然后输入密码即可远程登录.
安装驱动
sudo apt-get remove --purge nvidia-*sudo rm /etc/X11/xorg.cong sudo apt-add-repository ppa:graphics-drivers/ppa -y sudo apt-get update sudo apt-get install nvidia-367 nvidia-settings nvidia-prime(这里需要注意,367代表驱动的版本;其实后面下载的CUDA里面自带了一个显卡驱动,但是未必是最新的. 这里的目的就是手动下载最新的显卡驱动) sudo apt-get install mesa-common-dev sudo apt-get install freeglut3-dev sudo ldconfig -n sudo update-initramfs -u
重启电脑,就可以进入界面了, 如果进不去,进入BIOS启动页面,在Boot(或Security)中找到Security BOOT ,将其disable就可以了.
查看驱动
nvidia-prime query lspci | grep VGA //显示显卡信息
其实上面两步我也不知道是在干嘛, 反正输出的消息八成就没毛病了. 我装的时候没出问题.
安装CUDA
前往 https://developer.nvidia.com/cuda-downloads 选择对应的安装方式。国内读者建议网络安装方式deb(network),这样ubuntu会选择就近的国内的源安装,速度可能比较快。
(注: 实际安装的时候发现用apt-get并不快,因为它还是从developer.nvidia…下载的, 所以和apt源无关)
按照NVIDIA给的命令下载好了之后, 在terminal中找到下载好的.run文件所在的目录, 直接执行:
./cuda_8.0.44_linux.run
改一下环境变量:
~$ sudo gedit .bashrc
文件尾加入:
export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存退出. 然后执行:
source .bashrc
之后可以通过下面命令查看你的显卡使用情况:
nvidia-smi
测试一下cuda有没有装好:
测试1
cd /usr/local/cuda/samples/1_Utilities/deviceQuery sudo make sudo ./deviceQuery //能执行表示正确
测试2:
cd ../../5_Simulations/nbody/ sudo make ./nbody -benchmark -numbodies=256000 -device=0 //能执行表示正确
安装CuDNN
暂时还没做, 复制了http://phunter.logdown.com/posts/314562 >用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 tensorflow0.10.0-gpu以备今后的需要.
可选安装:Mxnet也支持cuDNN,它是nVidia推出的深度学习加速工具包,能高效实现一些卷积等深度学习常用操作,在内存使用和计算速度上面能有所提高。大家可以到这里 https://developer.nvidia.com/cudnn 申请开发者项目,如果批准通过可以下载安装cuDNN工具包,具体请参照nVidia官方教程。
编译支持GPU的MXnet
在~/mxnet/目录里找到mxnet/make/子目录,把该目录下的config.mk复制到mxnet/目录,用文本编辑器打开,找到并修改以下几行:
USE_CUDA = 1USE_CUDA_PATH = /usr/local/cuda
如果用户选择安装atlas或者openblas等其他BLAS的实现,需要额外的修改。如果ubuntu的atlas实现(sudo apt-get install libatlas-base-dev或者sudo apt-get install libopenblas-dev),需要修改为:
USE_BLAS = atlas
或者
USE_BLAS = openblas
(注: 打开config.mk, 发现里面本来就是USE_BLAS = atlas; 而正好前面下载的依赖项中, 本身就是libatlas-base-dev,所以不用改.)
安装Python对mxnet的语言支持(还有R, scala等, 我没用到所以没做)
这里我有点忘了, 当时按mxnet官方教程走完之后好像就可以直接在pycharm里调用mxnet的API了. 但是好像别人的博客里执行的东西和官方不一样, 这里都记录下来了:
Mxnet官方给的方法:
Install MXNet for Python with all required dependencies
cd ~/mxnet/setup-utilsbash install-mxnet-ubuntu-python.sh
We have added MXNet Python package path in your ~/.bashrc.
Run the following command to refresh environment variables.
$ source ~/.bashrc
博客里面见到的方法:
在Mxnet目录中执行:
cd python; python setup.py install
然后说要安装numpy, 我也不知道我是怎么就自己装上了. 安装的命令如下:
sudo apt-get install python-numpy
下面几个不知道干什么用, mxnet官方教程是这么写的, 但是别人的博客里没提到, 可能可以不装:
Next, we install graphviz library that we use for visualizing network graphs you build on MXNet. We will also install Jupyter Notebook used for running MXNet tutorials and examples.
sudo apt-get install -y python-pipsudo pip install graphvizsudo pip install Jupyter
测试一下mxnet能否运行:
测试方法1: 可以按照Mxnet官方的方法, 在命令行中逐行输入下面命令:
pythonimport mxnet as mxa = mx.nd.ones((2, 3), mx.gpu())print ((a * 2).asnumpy())
会显示
[[ 2. 2. 2.][ 2. 2. 2.]]
这里出现了意见很夭寿的事情…这时候在Ubuntu的terminal中逐行执行,以及在pycharm中写成一个.py文件然后执行,都能正确输出结果; 但是从pycharm的terminal中逐行执行, 就始终报错, 让我用”USE_CUDA = 1” 重新编译mxnet来生成新的dmlc-core文件夹里的东西… 玄学…
测试方法2: 在mxnet路径下执行
sudo python example/image-classification/train_mnist.py
这时可能会报错, 提示在import requests时没有这个包. requests包是一个和http什么什么有关的东西, 我估计是首次执行的时候需要自动下载数据集, 而下载的命令写在train_mnist.py中, 调用了requests里的api. 这里手动下载一下就行了:
pip install requests
- Ubuntu下安装MxNet
- ubuntu从零开始安装mxnet--安装mxnet
- Windows10下安装Mxnet
- windows下安装配置Mxnet
- Win10下MxNet安装手记
- Ubuntu14.04下MXNet安装
- mxnet 在windows下安装
- ubuntu从零开始安装mxnet--安装NVIDIA驱动
- ubuntu从零开始安装mxnet--安装cuda8.0
- ubuntu从零开始安装mxnet--安装cudnn5.0
- ubuntu 14.04安装mxnet / CPU实用教程
- 在Ubuntu上安装Python版MXNet
- ubuntu 16.04 x64如何安装mxnet GPU
- Windows10下安装和配置mxnet
- win10,VS2013下MXnet编译和安装
- Windows10下安装GPU版本的MXNet
- Windows下mxnet的编译与安装
- Windows下mxnet的CPU版本安装
- ImageSharp一个专注于NetCore平台图像处理的开源项目
- 最新的.NET Framework聚焦于改进可访问性
- 【杭州】Hack for Cloud Beginner微软黑客松大赛
- Redis面试总结
- 关于高德地图Android开发时地图只显示一次、第二次打开不定位的解决办法
- Ubuntu下安装MxNet
- 登录页面显示在嵌套iframe中
- Android沉浸式状态栏SystemBarTint
- 修改host可以上的一些网站
- windows服务器,关闭增强的IE选项
- 运行Chromium浏览器缺少google api密钥无法登录谷歌账号的解决办法
- 最简单的三极管音频放大电路
- 文章标题
- 近期参加的各大公司面试总结