Windows10+Visual Studio2013+caffe GPU+CPU环境详细配置

来源:互联网 发布:线程优化 编辑:程序博客网 时间:2024/05/18 18:46

仅做此记录,备查

)、软件包准备:

1.微软修改的caffe包,下载地址:https://github.com/Microsoft/caffe

2.Anaconda2,官网下载

----------------------------以下可选,CPU配置可以不管----------------------------------------------------

3.cuda8.0,https://developer.nvidia.com/cuda-downloads


cuda历史各个版本下载链接

https://developer.nvidia.com/cuda-toolkit-archive


4.cuDNN v4,https://developer.nvidia.com/cudnn


二安装

1.安装Visual Studio2013,默认位置,可汉化

2.Anaconda2,

3.可选,CUDA和cuDNN

4.解压caffe-master包

三具体配置

1.复制caffe Windows下CommonSettings.props.example,后缀改为CommonSettings.props

用VS2013打开CommonSettings.props,修改CpuOnlyBuild为true,UseCuDNN改为false。因为要配置Python接口,所以PythonSupport改为true,并将下面的PythonDir修改为自己的Python安装路径,注意Anconda2后面那个斜线不能少。

2.配置Anaconda2环境变量

环境变量中新建名为PythonPath,值为  D:\caffe-master\Build\x64\Release\pycaffe


在cmd中输入import caffe出现:

ImportError: No module named google.protobuf.internal 

说明需要安装一些东西,那就输入下面三者之一,其中会有一个是适合你的。

conda install protobuf 
pip install protobuf 
esay_install protobuf


四、环境变量配置: 
cuda8安装完成之后在系统环境变量中自动配置了两个系统变量 
CUDA_PATH:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8
CUDA_PATH_V7_5:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8
但是为了之后的vs2013的配置做准备我们需要在配置五个系统变量 
CUDA_BIN_PATH:%CUDA_PATH%\bin 
CUDA_LIB_PATH:%CUDA_PATH%\lib\Win32 
CUDA_SDK_BIN:%CUDA_SDK_PATH%\bin\Win64 
CUDA_SDK_LIB:%CUDA_SDK_PATH%\common\lib\x64 
CUDA_SDK_PATH:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8
在系统环境变量path后添加如下内容 
;%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%; 
测试是否成功 

进入cmd,输入nvcc -V命令

在进入sdk实例安装目录C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8(默认文件夹隐藏,需要显示出来) 
点击Samples_vs2013.sln文件打开vs2013执行 

这时候在来运行Samples_vs2013.sln文件就会出现图片,表明测试成功,


用户变量
PATH  
D:\caffe-cpu\Build\x64\Release
PYTHONPATH
D:\caffe-cpu\Build\x64\Release\pycaffe


系统变量
CUDA_BIN_PATH
%CUDA_PATH%\bin
CUDA_LIB_PATH
%CUDA_PATH%\lib\x64
CUDA_PATH
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
CUDA_SDK_BIN_PATH
%CUDA_SDK_PATH%\bin\x64 
CUDA_SDK_LIB_PATH
%CUDA_SDK_PATH%\common\lib\x64
CUDA_SDK_PATH
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
CUDNN_ROOT
D:\caffe-gpu\cuda
CuDnnPath
D:\caffe-gpu\cuda


Path
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE;
D:\caffe-cpu;
D:\Anaconda2;
D:\Anaconda2\Scripts;
D:\Anaconda2\include;
D:\Anaconda2\Lib;
D:\caffe-cpu\Build\x64\Release\pycaffe\caffe;
D:\Anaconda3;
D:\Anaconda3\include;
D:\Anaconda3\Lib;
%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;


PythonPath
D:\caffe-cpu\Build\x64\Release\pycaffe

五、caffe.sln的编译
双击Windows下的caffe.sln,在VS2013中生成解决方案,先启用Nuget还原
libcaffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】中加入python的include路径
caffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】加入python的include路径。同时,在链接器中的【附加库目录】中加入python的libs路径。如果显卡安装不是默认路径也相应把C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include和libs加入到里面
pycaffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】加入python的include路径和numpy的include路径,我这里分别是D:\Python27\include和D:\Python27\Lib\site-packages\numpy\core\include,同时,在链接器中的【附加库目录】中加入python的libs路径和numpy的libs路径,我这里分别是D:\Python27\libs和D:\Python27\Lib\site-packages\numpy\core\lib

注:如果这个编译时出现:

error LNK2001: 无法解析的外部符号 __imp_PyString_FromString
error LNK2001: 无法解析的外部符号 __imp_PyCallable_Check

说明python和visual studio项目版本不兼容,注意X86和X64的统一


注:

在anaconda prompt窗口敲入以下命令:

conda upgrade –all

解释:可以将anaconda当前环境下的软件包都进行一个更新,保证后续安装都是最新的可用包。

conda install numpy scipy pandas

解释:conda一次可以安装多个软件包。上面这个指令就可以一次安装好numpy, scipy, pandas

conda create -n py3 python=3 或 conda create -n py2 python=2

解释:上面是分别建立python 3.5和python 2.7虚拟环境的指令。py3(py2)是自己起的环境名;python=3 (python=2)是指定python版本

activate py3

解释:这样就进入python 3.5的环境了

conda list

解释:查看当前环境下都已经安装了哪些包。如果需要安装新包,敲入指令 conda install <package name>就可以了

deactivate py3

解释:退出python3.5的环境






http://python.jobbole.com/86236/


原创粉丝点击