win7 64位下编译convnet
来源:互联网 发布:淘宝的来历,知乎 编辑:程序博客网 时间:2024/05/14 10:49
这篇方法主要参考香港中文大学xiong大的博文[1]。
需要预先安装的软件(64位)
- CUDA 6.0
- Python 2.7 我安装的是Ananconda,整合了很多package。这里多说一句,Anaconda自带的numpy在windows系统里只支持AMD64位,不支持Intel,所以需要下载MKL的numpy重新安装一下就好了。
- Pthreads我下载的版本是pthreads-w32-2-9-1-release,下载后直接解压就可以了。
- Intel C++ Composer 在本站搜parallel_studio_xe_2013_update4可以下到安装文件和许可证。
- Dependency Walker 不建议安装,因为它给出的检测结果往往不准确。
需要的原代码
- Cuda-convnet的原代码,by Alex Krizhevsky
- Convnet的VS工程文件,by Oriol Vinyals,下载解压后放在Alex的源文件夹内。
- 用文本编辑器打开工程文件中的pyconvnet.vcxproj,找到
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
部分,分别将AdditionalIncludeDirectories,AdditionalDependencies,AdditionalLibraryDirectories 和 Include部分改成:(根据自己文件位置不同而改动)<AdditionalIncludeDirectories>D:/Anaconda/Lib/site-packages/numpy/core/include/numpy;D:/Anaconda/include;./include/common;./include/nvmatrix;./include/cudaconv2;./include;./;$(CudaToolkitIncludeDir);D:/pthread/Pre-built.2/include;D:\OpenBlas\OpenBLAS-v0.2.8-x86_64-Win\include;C:\ProgramData\NVIDIA Corporation\CUDA Samples\v6.0\common\inc;C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v6.0/include</AdditionalIncludeDirectories><pre name="code" class="html"><AdditionalDependencies>mkl_intel_lp64_dll.lib;mkl_intel_thread_dll.lib;pthreadVC2.lib;cublas.lib;cudart.lib;curand.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;python27.lib;libopenblas.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>D:\OpenBlas\OpenBLAS-v0.2.8-x86_64-Win\lib;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\lib\x64;$(CudaToolkitLibDir);D:/Anaconda/libs;D:/pthread/Pre-built.2/lib/x64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<Include>./;./include;./include/common;./include/nvmatrix;./include/cudaconv2;C:/Program Files (x86)/Intel/Composer XE 2013/mkl/include;D:/Anaconda/include;D:/Anaconda/Lib/site-packages/numpy/core/include/numpy;D:/pthread/Pre-built.2/include;C:/ProgramData/NVIDIA Corporation/CUDA Samples/v6.0/common/inc</Include>
- 还是这个文件里,把所有CUDA 4.0 改成 CUDA 6.0(或者适合自己的版本)
- 现在可以用VS打开convnet.sln了。把工程设置为 Release x64,然后就可以rebuild了
- Rebuild生成pyconvnet.pyd文件,把它改名成_convnet.pyd
- 刚才下载解压好的Pthread文件夹里:pthread\Pre-built.2\dll\x64里找到pthreadVC2.dll,复制粘贴到convnet源文件夹里
- 把下列地址加入系统path:
- C:\Program Files (x86)\Intel\Composer XE 2013\redist\intel64\mkl;
C:\Program Files (x86)\Intel\Composer XE 2013\redist\ia32\mkl;
C:\Program Files (x86)\Intel\Composer XE 2013\redist\intel64\mpirt;
C:\Program Files (x86)\Intel\Composer XE 2013\redist\intel64\compiler;
C:\Program Files (x86)\Intel\Composer XE 2013\redist\ia32\mpirt;
C:\Program Files (x86)\Intel\Composer XE 2013\redist\ia32\compiler;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\libnvvp;
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common; - D:\pthread\Pre-built.2\lib\x64;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\ia32\compiler;
- C:\Program Files (x86)\Intel\Composer XE 2013\redist\intel64\mkl;
- 下载CIFAR-10数据
- 在cmd里输入
python convnet.py --data-path=F:/workspace/Data/CIFAR10/cifar-10-py-colmajor/ --save-path=./storage/tmp --test-range=6 --train-range=1-5 --layer-def=./example-layers/layers-19pct.cfg --layer-params=./example-layers/layer-params-19pct.cfg --data-provider=cifar --test-freq=13 --epoch=200
就可以运行了
Reference
[1] http://personal.ie.cuhk.edu.hk/~xy012/others/install_cudaconvnet.html
0 0
- win7 64位下编译convnet
- Win7 64位系统,VS2010环境下编译cuda-convnet指南
- Win7 64位系统,VS2010环境下编译cuda-convnet指南
- Win7 64位系统,VS2010环境下编译cuda-convnet指南
- win7下64位 librtmp编译
- win7 64位在vs2010 professional下 编译 chromium
- 64位Win7下用VS2010编译OpenSSL
- win7 64位专业版下的x64编译问题
- 64位Win7下用VS2010编译OpenSSL
- win7系统下64位Qt的编译
- win7在64位系统下编译openssl
- win7 qt5 oracle11g 64位下编译oci驱动
- win7 64位系统下matlab中mex文件编译
- 64位Win7下用VS2010编译OpenSSL
- 【spark】win7-64位下编译spark1.6.0
- win7 64位环境下VS2010编译使用boost_1_62_0
- win7 32/64位系统下编译ardupilot源码
- win7 64位环境下VS2012编译使用boost_1_60_0
- android Sqlite使用
- IOS6.0以后APP对内存警告的处理
- 为ListView每个Item上面的按钮添加事件
- u-boot-2014.10移植第21天----添加nand flash命令支持(三)
- 小白acm-ASCII码排序
- win7 64位下编译convnet
- 逃跑的青蛙
- Android GPS邻近警告
- lenet-5 学习笔记(二) 网络层次详解
- IOS设备信息判断
- 黑马程序员——Java基础知识(集合框架(上))
- shell中的特殊文件:/dev/null与/dev/tty
- myeclipse jetty7 项目修改后未自动redeploy
- HDU 3308 LCIS