目的:理解深度学习主流框架的设计思路,从源码级别进行向上研究
过程:从虚拟机开始,在Windows7+VMWare11+CentOS-6.6-x86_64,升级GCC,安装openblas,opencv,升级python,安装python依赖包,替换libstdc++
测试验证image-classification]# python train_mnist.py
经验:深度学习框架属于C++层面的一个东西,一定要有耐心,不放弃;跟折腾Hadoop不是一个档次的东西。
运气:在2011年折腾Hadoop时,用个也是centos,一个好的os,一个新的开始。加油
第一步:准备VM
在windows下安装好VM ware worksataion 11,通过CentOS-6.6-x86_64-bin-DVD1.iso来进行缺省安装。
该过程属于准备过程,不重点讲述,前提时该种模式下只能够用CPU,不支持GPU.
确保yum能够正常运行
第二步:升级GCC
安装MXNet必须进行保证C++11能够支持,首先需要升级GCC,从4.7升级4.8.4至少才行;我验证的是直接升级到GCC6.3.0
操作步骤如下:
2.1下载相关的gcc-6.3.0.tar.bz2
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-6.3.0/gcc-6.3.0.tar.bz2
tar-jxvf gcc-6.3.0.tar.bz2
2.2 检查依赖包
./contrib/download_prerequisites
缺省检查会要求必须安装mpc,gmp,mpfr,isl
而这些基础库的包的版本都比较低,如果直接下载后,基本安装都会失败
终极解决方式,修改contrib/download_prerequisites
#MPFR=mpfr-2.4.2
MPFR=mpfr-3.1.5
#GMP=gmp-4.3.2
GMP=gmp-6.1.0
#MPC=mpc-0.8.1
MPC=mpc-1.0.3
通过修改缺省的下载地址,指向国内地址
下载地址修改为down_url=https://mirrors.tuna.tsinghua.edu.cn/gnu/
isl选择 0.18版本,下载地址:http://isl.gforge.inria.fr
保证下载完毕后,可以检查下gcc-6.3.0下面的相关的目录gmp,mpc,mpfr,isl的目录情况如下:
gmp -> gmp-6.1.0
isl -> isl-0.18
mpc -> mpc-1.0.3
mpfr -> mpfr-3.1.5
注意:不需要单独对gmp,mpc,mpfr,isl进行编译,在编译gcc时会自动编译相关的依赖包。
2.3准备编译gcc
新建目录mkdir gcc-build-6.3.0