win10上配置mxnet、keras、tensorflow、cudn安装步骤

必要条件

  • NIVDIA GeForce GTX 950M或以上的显卡
  • Visual Studio 2015社区版。Windows Kit 10.0.10240.0
    用其C / C ++编译器(而不是其IDE)和SDK
  • python(64位)。Python 3.6.3(Anaconda3-5.0.1)
    Python发行版,给我们提供NumPy,SciPy和其他科学方法库
  • CUDA 9.0(64位)
    GPU数学库,卡驱动程序和CUDA编译器
  • MinGW-w64(5.4.0)
    类Unix编译器,并为Windows提供构建工具(g ++ / gcc,make ...)
  • Theano 0.9.0
    用来求多维数组上的数学表达式得结果
  • Mnxet-cu90 1.1.0
  • Tensorflow
  • Keras 2.1.3
    以theano、mxnet、tensorflow为后台的深度学习框架
  • OpenBLAS 0.2.14(可选)
    CPU优化的许多线性代数运算的实现
  • CUDNN v7.0.5 CUDA 9.0(有条件)
    为了运行极快的卷积神经网络

安装步骤

  • 安装vs2015
  • https://github.com/philferriere/dlwin/blob/master/img/vs2015-install-part4b-2016-10.png
  • 安装Anaconda3 5.0.1(对应Python3.6)
  • 环境变量
  • 加到path中C:\Users\PC\Anaconda3;C:\Users\PC\Anaconda3\Scripts;C:\Users\PC\Anaconda3\Library\bin;
  • pip install keras -U --pre
  • conda install mingw libpython (也可以自行下载mingw64放到anaconda3目录下)
  • 环境变量
  • 如果.theanorc.txt中配置了目录,则可以不用加到环境变量中
  • conda install pygpu
  • pip3 install --upgrade tensorflow (cpu)
  • pip3 install --upgrade tensorflow-gpu
  • 安装cuda 9.0
    • 环境变量
    • CUDA_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
    • CUDA_PATH_V9_0 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
    • 加到path中%CUDA_PATH%\bin;%CUDA_PATH%\libnvvp
    • 命令行输入 nvcc --V 检测是否成功安装
  • 下载cudnn(7.0.5),最起码要和cuda兼容,下载完成把库文件放在cuda相应目录下,覆盖cuda的3个文件
  • 安装mxnet:pip install mxnet-cu90

测试theano

import theano.tensor as T

import numpy

import time

vlen = 10 * 30 * 768  # 10 x #cores x # threads per core

iters = 1000

rng = numpy.random.RandomState(22)

x = shared(numpy.asarray(rng.rand(vlen), config.floatX))

f = function([], T.exp(x))

print (f.maker.fgraph.toposort())

t0 = time.time()

for i in range(iters):

    r = f()

t1 = time.time()

print ('Looping %d times took' % iters, t1 - t0, 'seconds')

print ('Result is', r)

if numpy.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]):

    print ('Used the cpu')

else:

    print ('Used the gpu')

测试BLAS

  • 看看numpy是不是已经默认BLAS加速了,在python里输入:
import numpy
id(numpy.dot) == id(numpy.core.multiarray.dot)

结果为False表示已经成功依赖了BLAS加速,如果是Ture则表示用的是python自己的实现,并没有加速。

附上.theanorc.txt内容

[global]

openmp = False
#这样theano无法使用gpu加速,要改成gpu,虽然会出现警告,但是theano可以用gpu加速
device = cuda

floatX = float32 
#init_gpu_device = gpu #用device = cuda就不能用

optimizer_including = cudnn #不用cudnn的话就不要这句  

optimizer = fast_compile 

allow_input_downcast = True

exception_verbosity = high

[blas]

ldflags = 

[dnn]
include_path = C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include
library_path = C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64

[lib]
# 不能超过1
cnmem = 0.8

[gcc]
# mingw目录,mingw安装完记得放到anaconda中
cxxflags =  -IC:\Users\PC\Anaconda2\envs\Anaconda3\MinGW
#好像没什么用
#cxxflags = -D_hypot=hypot -IC:\Users\PC\Anaconda2\envs\Anaconda3\Lib\site-packages\pygpu -LC:\Users\PC\Anaconda2\envs\Anaconda3\Lib\site-packages\pygpu

[nvcc] 
# anaconda3 有两个flags会报错,anaconda2 要有两个 anaconda目录下的libs
flags = -LC:\Users\PC\Anaconda2\env\Anaconda3\libs  

compiler_bindir = C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin

fastmath = True 

#flags =-arch=sm_30 


你可能感兴趣的:(win10上配置mxnet、keras、tensorflow、cudn安装步骤)