0
点赞
收藏
分享

微信扫一扫

Ubuntu安装配置MatConvNet环境详细教程(附cuda以及driver的安装方法)

穆熙沐 2022-01-23 阅读 75

文章目录


一、前言

最近在写某个项目时,需要利用 MATLAB 导入预先训练好的某个模型,这就需要用到 MatConvNet,但是笔者自己之前没有接触过这方面,电脑上连 cuda 也没有安装,一路安装采坑走过来确实不容易😢😢😢。

  • 系统:Ubuntu21.10
  • MATLAB版本:R2019b
  • MatConvNet版本:matconvnet-1.0-beta24

二、安装配置NVIDIA driver

MatConvNet 需要用到 cudaNVIDIA driver 来编译 GPU 支持,所以这里我们先安装配置 NVIDIA driver。

1. 添加PPA源

添加 PPA 源:

sudo add-apt-repository ppa:graphics-drivers/ppa

为系统安装依赖项以构建内核模块:

sudo apt-get install dkms build-essential

2. 查看显卡硬件型号

打开终端,输入如下命令

ubuntu-drivers devices

输出界面如下,可以看到这里我的硬件显卡型号为 GP108M [GeForce MX250],推荐安装的驱动版本号为:driver : nvidia-driver-470 - distro non-free recommended

在这里插入图片描述

3. 安装NVIDIA驱动

这里我们下载自己电脑推荐的驱动版本即可:

sudo ubuntu-drivers autoinstall

系统会自动安装推荐版本驱动,接着重启系统。


二、安装cuda

这里我用的 cuda 版本为 11.1,采用 .run 文件安装,最新的 11.6 版本试了有点问题,所以我换成了 11.1 版本。

1. 下载相关依赖

命令如下:

sudo apt-get install freeglut3 freeglut3-dev libxi-dev libxmu-dev

2. 下载安装文件

直接使用 wget 下载即可,这里我提供的是 11.1 版本的下载链接:

cd ~/Downloads
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run

大概有 3 个多 G,注意网络连接。

3. 安装cuda-toolkit

这里我们只使用安装文件来安装 cuda-toolkit,driver 的安装我们在上述操作中已经完成,所以命令如下:

sudo sh ./cuda_11.1.0*.run --toolkit --silent --override

4. 配置环境变量

修改 ~/.bashrc 文件:

vim ~/.bashrc

添加如下内容:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

使修改立即生效:

source ~/.bashrc

5. 检验安装

命令如下:

nvcc --version

在这里插入图片描述


三、安装低版本gcc、g++

这一步其实也可以跳过,若后续你的编译没报错的话,但是我在之前的搭建过程中是配置了 gcc6.3.0g++6.3.0 环境的,配置可参考此博客:Ubuntu安装低版本gcc详细教程(安装gcc6.3.0为例)

过程可能会需要一段时间,确定自己有一两个小时的空闲时间配置。


四、安装配置MatConvNet

1. 下载安装tar包

这里我建议下载 beta24 版本,官网下载链如下:https://www.vlfeat.org/matconvnet/download/,下载完成后,解压相关压缩包:

cd ~/Downloads
tar -zxf matconvnet-1.0-beta24.tar.gz

2. 修改Makefile并编译

进入解压后的文件目录:

cd matconvnet-1.0-beta24

参考此博客修改 Makefile 的内容:MatConvNet下载后make报错解决办法

vim Makefile

修改好 Makefile 后,使用 make 命令进行第一步编译:

make

编译成功是会在 matconvnet-1.0-beta24/matlab 目录下生成一个 mex 文件夹的。

3. 安装编译MatConvNet库

注意这里就要关掉终端了,打开你电脑上的 MATLAB,以下的所有命令都是在 MATLAB 终端中输入的!!!

(1)准备工作

设置 MATLAB 当前工作目录为你解压后的 MatConvNet 文件目录,这里我的 MatConvNet 解压目录在主目录下:

cd ~/matconvnet-1.0-beta24
addpath ./matlab

MatConvNet 添加到 MATLAB 的搜索路径中:

vl_setupnn

(2)为 mex 设置编译参数

mex -setup
mex -setup C++

(3)编译 MatConvNet

命令如下:

vl_compilenn

接着编译 GPU 支持:

vl_compilenn('enableGpu', true, 'cudaRoot', '/usr/local/cuda-11.1')

这里的 cudaRoot 值是你的 cuda 安装路径,过程中会有挺多报错的,我都在此专栏中解决了,应该都能找到:MatConvNet环境搭建

(4)测试 MatConvNet

GPU 测试:

vl_testnn('gpu', 'true')

过程中有步下载速度实在是。。。。。我也不知道当初怎么测试成功的,编译时没有 error 只有 warning 的话就直接用吧。


五、总结

举报

相关推荐

0 条评论