MatConvNet在Matlab中的配置;Win7+Matlab R2015b+CUDA7.5+vs2013

2024-06-20 10:18

本文主要是介绍MatConvNet在Matlab中的配置;Win7+Matlab R2015b+CUDA7.5+vs2013,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

中文介绍:MatConvNet是一个MATLAB工具箱,提供了计算机视觉的卷积神经网络(CNN)。简单,高效,是一个先进的可以运行和学习的CNN。许多预测训练的CNN网络可以用于图像分类,分割,面部识别和文本检测。

下载官网:http://www.vlfeat.org/matconvnet/


下载后无需安装,只需解压,然后在Matlab中进行配置即可。

实验平台:win7 64位;Matlab R2015bVS2013matconvnet-1.0-beta20

(注意较新的版本如matconvnet-1.0-beta25,不支持vs2013)

配置GPU时,用的CUDA v7.5cuDNNv5.0(开始装的CUDAv8.0,出现错误,卸载装7.5成功)


下载完成后解压到文件夹:

下面步入正题:

一、  CPU配置

1、打开MATLAB,进入解压的文件夹路径;

2、在命令窗口输入:mex –setup(注意中间有空格,不是下划线):

mex –setup


3、点击mex-setup C++


4、在matconvnet-1.0-beta20文件夹下新建Compile.m文件,并运行:

addpath matlab
vl_compilenn

5、结果如下,则表示成功:


二、  GPU配置

可以先在MATLAB中运行命令gpuDevice,查看电脑显卡属性;

gpuDevice

若弹出如下窗口,则可能显卡驱动版本不对,可以卸载驱动,然后用驱动精灵安装其推荐的版本,重启即可。

1、 需要先下载安装CUDA,下载地址:https://developer.nvidia.com/cuda-downloads

注意下载的CUDA版本要支持电脑上的GPU型号。安装最好安装在默认路径下。

 

【下面这一步可以跳过,但最好检查一下(检查是否安装CUDA成功):】

1. 在默认安装路径下,C:\ProgramData\NVIDIACorporation\CUDA Samples\v7.5中,打开Samples_vs2013.sln(即本机vs对应版本即可),在release下生成解决方案:

可能会遇到错误(这个错误在安装CUDAv8.0遇到,安装DXSDK_Jun10.exe后还是有错误,后来卸载8.0安装7.5直接成功

找不到”d3dx9.h”、”d3dx10.h”、”d3dx11.h”头文件,网上的方法是百度下载DXSDK_Jun10.exe并安装(在第一次安装CUDA8.0时这样尝试没有用,后面卸载CUDA8.0装7.5直接没有问题了,不知道和安装了这个有没有关系)。

下载网址http://www.microsoft.com/en-us/download/details.aspx?id=6812

之后再重新编译。

2. 编译完成后,在文件夹C:\ProgramData\NVIDIACorporation\CUDA Samples\v7.5\bin\win64\Release下,利用cmd打开分别bandwidthTest.exe,以及deviceQuery.exe【直接将exe文件拖至cmd窗口回车即可】,判断是否安装成功,Result=PASS 即成功。



2、下载cuDNN。下载地址:https://developer.nvidia.com/cudnn

注意下载的cuDNN版本要与安装的CUDA版本对应:

3、将下载好的cuDNN解压,在你的matconvnet的路径下面新建文件夹local,将解压后的cuDNN文件夹放在local中。然后将cuDD里面的bin文件夹下面的cudnn64_5.dll文件复制至matconvnetmatlab里面的mex文件夹里面。


4、输入命令 mex –setup,等等(同CPU中2、3步骤);


5、为cuDNN搭建配置:

在matconvnet的路径下面创建一个名字为:compileGPU 的.m文件(CODE如下):

addpath matlab; vl_compilenn('enableGpu', true, ... 'cudaRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5', ...  %填写CUDA安装路径'cudaMethod', 'nvcc', 'enableCudnn', 'true', ... 'cudnnRoot', 'E:\matconvnet-1.0-beta20\local\cuda');  % cuDNN路径


6、 运行该compileGPU.m文件,若无错误,则GPU配置完成。

本人遇到错误如下:

Error: matlab/src/bits/impl/pooling_gpu.cu(163)

原因:这个的原因是CUDA6.0 后定义了atomicAdd 所以会出现重复定义的错误。 一共有两个文件里存在这个重复定义的问题,分别在

pooling_gpu.cu,line 163

(定义了atomicadd)

bilinearsampler_gpu.cu,line 25

(定义了atomicadd)

 

Solution: 这个的解决方式是在这两个文件里定义如下的宏:

#if!defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 600

#else

<... placehere your own pre-pascal atomicAdd definition ...>

#endif

 

将如上的定义复制到如上文件里的头部, 将文件里定义的atomicadd function 剪切放在<... place here your ownpre-pascal atomicAdd definition ...> 中。


可能遇到的问题:

本人后面用GPU跑程序时,运行CompileGPU.m文件会蓝屏,重启后先运行CPU的Compile.m文件,再运行CompileGPU.m不会蓝屏了,具体原因不清楚。



这篇关于MatConvNet在Matlab中的配置;Win7+Matlab R2015b+CUDA7.5+vs2013的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1077848

相关文章

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

Nginx 重写与重定向配置方法

《Nginx重写与重定向配置方法》Nginx重写与重定向区别:重写修改路径(客户端无感知),重定向跳转新URL(客户端感知),try_files检查文件/目录存在性,return301直接返回永久重... 目录一.try_files指令二.return指令三.rewrite指令区分重写与重定向重写: 请求

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

Redis Cluster模式配置

《RedisCluster模式配置》:本文主要介绍RedisCluster模式配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录分片 一、分片的本质与核心价值二、分片实现方案对比 ‌三、分片算法详解1. ‌范围分片(顺序分片)‌2. ‌哈希分片3. ‌虚

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示