过程和编译CPU版的差不多,但是却花了3天时间填坑,,具体过程本文不再详述,请先编译CPU版。 
与编译CPU版不同之处在于: 
  • win10下必须使用Cuda8RC(我的是965m的GPU),虽然Cuda7.5有win10版本,实测不兼容!!!结果下Cuda8总是不成功,花了一天
  • DLL代码要加到环境变量PATH里,上次说过了,这次居然又栽跟头了。。。


具体流程参加CPU版的,,本文只是对编译GPU版本踩过的坑进行记录 
1、Cuda、cuDNN的安装  
Cuda: https://developer.nvidia.com/cuda-toolkit  
一路狂点即可,注意下载Cuda8RC版,,否则可能有兼容问题 

cuDNN: https://developer.nvidia.com/cudnn  
要用v3版本的(MXNet官网这么说的,不知道现在是否支持v4、v5)。 
记得把cuDNN的DLL所在目录加到PATH里!(和CPU版的openBLAS类似) 


2、OpenCV的编译  
由于换了全新的本本,OpenCV我也重新编译了一下,结果栽了跟头! 
  • 注意把VS的工程里的编译模式debug改为release!!!
  • DLL所在路径添加到PATH,,上次没有这一步,这次就栽了跟头。。。表现为运行时找不到模块,而且不会提示找不到什么模块。。。
  • 编译GPU版时间老长了,,没必要。。。


3、MXNet工程的生成  
上次说到直接用CMake的CMake-gui工具配置,这次出了问题,,没生成x64平台的,只有win32平台。。。还是编译时发现一堆明明存在的lib却找不到时才发现的!!! 
再次安利CMake编译x64平台代码的博文: http://cherishlc.iteye.com/blog/2302987  

即使一切配置正确,,编译还是不通过,提示找不到 opencv_dep_cudart.lib ,当时真是想重新编译一个CPU版的OpenCV!但是,当我将该lib从MXNet工程的输入中剔除后,编译通过了!! 

只是运行时提示找不到库(还没告诉我找不到什么库。。。),后来才想起来OpenCV的DLL路径没添加到PATH 

再遇到这种情况可以使用depends工具查看DLL依赖关系: http://www.dependencywalker.com/  
其中,windows相关的组件找不到貌似没啥关系,,因为我添加了OpenCV路径后依然会说windows相关的组件找不到 

4、安装python版的MXNet  
和CPU版完全相同,,不再赘述 


5、运行示例  
安装好了就可以参照PHunter的博文跑一下 Neural art 了: http://phunter.farbox.com/post/mxnet-tutorial2  
只是需要注意,由于windows无法运行.sh文件,我们需要手动下载模型 

windows下 nvidia-smi 程序在: C:\Program Files\NVIDIA Corporation\NVSMI  下 
官方文档: https://developer.nvidia.com/nvidia-system-management-interface  

拿左图同时作为输入和style image的输出居然和他自己不一样。。。 
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐