zoukankan      html  css  js  c++  java
  • MXNet在64位Win7下的编译安装

        注:本文原创,作者:Noah Zhang  (http://www.cnblogs.com/noahzn/)

        我笔记本配置比较低,想装个轻量级的MXNet试试,装完之后报错,不是有效的应用程序,找不到libinfo.py等等,同样的问题在github上也有很多人问,但是作者说也不知道问题在哪,自己折腾了两天,终于装好可以使用了,分享如下:

        首先报一下我的机器环境:Win7-64bit,已装了WinPython-64bit-3.4.3.2、CUDA5.5、VS2013 update5

       

    一、获取MXNet:

        git clone --recursive https://github.com/dmlc/mxnet

        我的路径是D:mxnet

    二、安装其他依赖:

        需要OpenCV、OpenBLAS、CuDNN、CUDA(强烈推荐,前三个用我上传的打包版

        1. OpenCV3:

            官网下载(http://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.0.0/opencv-3.0.0.exe/download),也可以使用我上传的单独版本。链接: http://pan.baidu.com/s/1c0YkB8 密码: mnu6

        2. OpenBLAS:

            官网下载(https://sourceforge.net/projects/openblas/),目标是生成openblas.lib,自己弄比较麻烦,可以看后面我提供的现成版。

        3. CuDNN:

            官网下载(https://developer.nvidia.com/cudnn),下载需要注册英伟达开发者账号,可以直接看我后面提供的现成版。

        4. CUDA7.5

            官网下载(https://developer.nvidia.com/cuda-downloads)并安装。我上传的单独版本:链接: http://pan.baidu.com/s/1c2Bd4Gg 密码: fpm2

         5. 打包版:

            为了方便大家,不用自己去生成openblas.lib,我打包了OpenCV3、OpenBLAS、CuDNN,大家可以直接下载解压到mxnet目录下(我的目录是:D:mxnetmxnetmxnet_thirdparty)  链接: http://pan.baidu.com/s/1c1VLZAK 密码: ntrj

    三、增强VS2013:

        因为MXNet用到了许多C++ 11的新特性,所以需要增强VS2013使其支持,下载 Visual C++ Compiler Nov 2013 CTP(https://www.microsoft.com/en-us/download/details.aspx?id=41151)并安装,然后把 C:Program Files (x86)Microsoft Visual C++ Compiler Nov 2013 CTP 文件夹内所有拷贝至你的VS2013目录,如:拷贝至 D:Microsoft Visual Studio 12.0VC 目录下覆盖。

        也可从我的百度盘下载:链接: http://pan.baidu.com/s/1bEVi5C 密码: p6s3

    四、修改配置文件(不确定是否必须,我摸索过程中自己改的。。):

        打开 mxnetmakeconfig.mk,更改以下几处:

        第49行:USE_CUDNN = 1

        第69行:USE_BLAS = openblas

        另外搜索mxnet目录下其他config.mk文件,相应的,都把USE_BLAS后的值改成openblas。

    五、CMake编译:

        我下载安装了最新版的Cmake,链接: http://pan.baidu.com/s/1o7JusDs 密码: aicj

        然后按照我下面这样设置,Configure,Generate,没报错就OK了

        

     

    六、生成libmxnet.dll:

        VS2013打开mxnet_build目录下的mxnet.sln,模式切换为Release,编译一下,全部OK之后,在mxnet_buildRelease目录下生成了libmxnet.dll文件。

    七、安装Python的MXNet库:

        把第六步生成的dll文件拷贝至D:mxnetmxnetpythonmxnet目录内,切换至该目录,执行python setup.py build; python setup.py install

    八、解决问题:

        这时候安装完毕后,import mxnet 是会报错的,而且两次import报的错还不同,一次是找不到dll,第二次是找不到libinfo.py,就是这个问题github上很多人问,但是并没有完整的解决方案,我自己摸索的解决方法是:把我上传的打包版压缩包里的8个dll文件复制到python.exe目录下,然后就行啦!

    九、跑个例子试试:

        跑例子也是蛮头疼的,示例代码里相关配置都是Linux下的,dataset也要自己下载。。在D:mxnetmxnetexampleimage-classification目录内新建文件夹:mnist

        下载dataset:链接: http://pan.baidu.com/s/1gfHIXt5 密码: u33x  

        4个文件分别解压到mnist目录下,把文件名中的'.'全改成'-',即让四个文件没有后缀名。(或者你可以直接更改train_mnist.py里的代码)

        官方例子见这里:http://mxnet.readthedocs.io/en/latest/get_started/#python

        

  • 相关阅读:
    标准库类型string
    auto与decltype
    理解复合类型的声明
    复合类型
    标识符and名字的作用域
    tar 命令详解(持续更新)
    Linux中的update和upgrade的作用
    mysql中文乱码
    Linux 安装MySql——apt-get版
    Linux mysql开启远程访问
  • 原文地址:https://www.cnblogs.com/noahzn/p/5506086.html
Copyright © 2011-2022 走看看