MindSpore1.10.1安装步骤详解(Ubuntu20.04+3080Ti+CUDA11.1+Python3.8)

本文主要是介绍MindSpore1.10.1安装步骤详解(Ubuntu20.04+3080Ti+CUDA11.1+Python3.8),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MindSpore1.10.1安装步骤详解(Ubuntu20.04+3080Ti)

    • 背景说明
    • 安装Ubuntu20.04+3080Ti驱动
    • 安装CUDA所需依赖
    • 下载并安装CUDA11.1(☆☆非常关键☆☆)
    • 下载并安装cuDNN
    • 安装Python3.8
    • 安装GCC
    • 安装MindSpore
    • 验证MindSpore安装成功

背景说明

我是一名高中信息技术教师,带来学生参加了第二届长三角人工智能挑战赛——主赛道算法擂台,很幸运获得了一等奖,比赛中使用到了华为旗下的MindSpore人工智能框架。
在AI全面普及的当下,为提升自己的能力水平,打算深入学习一下MindSpore相关的知识,第一步就是安装MindSpore了。
安装选项
所使用的操作系统为Ubuntu20.04,显卡3080Ti,CUDA11.1,Python3.8,MindSpore1.10.1,手动安装。参照MindSpore官网的安装说明,有会一些坑,经常多次尝试,还是成功安装了,
在此把经验总结一下并分享给大家,供爱好者学习。若有不正之处,望予以指出,谢谢。

安装Ubuntu20.04+3080Ti驱动

Ubuntu20.04的安装这里就不详细说,大家可以参考网上的相关文章。
Ubuntu20.04安装成功

接下去安装3080Ti驱动,建议通过Ubuntu20.04自带的“软件和更新”功能去安装,如下图。
安装3080Ti驱动
我安装的是525的版本,是能够安装的最新版了。安装成功之后,可以在终端窗口中输入“nvidia-smi”来验证驱动的是否成功和CUDA版本,如下图。
驱动安装+CUDA版本
可以看到525的驱动安装后,CUDA的版本是12.0,其实CUDA是可以向下兼容的。官网上说CUDA11.1,准确地说是CUDA的最低版本为11.1。若已安装了高版本的CUDA,则需要安装CUAD11.1中除驱动之外的其他东西(后续会有详细说明)

安装CUDA所需依赖

参照MindSpore官网安装CUDA所需依赖,使用命令如下:
sudo apt-get install linux-headers-$(uname -r) gcc-7
安装截图如下:
成功安装CUDA所需依赖

下载并安装CUDA11.1(☆☆非常关键☆☆)

参照MindSpore官网给出的命令下载CUDA11.1:
wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run
下载成功后,如图:成功下载CUDA11.1
参照MindSpore官网给出的命令安装CUDA11.1:
sudo sh cuda_11.1.1_455.32.00_linux.run,如图:
安装CUDA11.1-01
点击“Continue”继续,如图:
安装CUDA11.1-02
输入“accept”并回车,如图:
安装CUDA11.1-03
去掉驱动的安装,安装其他选项,如图:
安装CUDA11.1-04
CUDA11.1安装成功,如图:
CUDA11.1安装成功
根据MindSpore官网给出的命令,添加环境变量,如图:

echo -e "export PATH=/usr/local/cuda-11.1/bin:\$PATH" >> ~/.bashrc
echo -e "export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc

CUDA11.1.1安装后添加环境变量

下载并安装cuDNN

在cuDNN页面登录并下载对应的cuDNN安装包(需要NVIDIA账号),根据MindSpore官网的说明,下载cuDNN v8.0.x,如图:
下载cuDNN安装包
官网上说下载的是一个tgz的包,但实际下载后是tar.xz的包,如图:
下载的cuDNN安装包文件名
无所谓啦,反正都是压缩包,解压即可。为方便之后命令操作,把解压得到的文件夹重命名为cudnn,如图:
解压重命名cuDNN
在文件夹cudnn里有一个include文件夹,一个lib文件夹,和一个LICENSE文件,如图:
文件夹cuDNN里的内容
根据MindSpore官网的说明,接下去就是复制文件了,具体命令如下:
16MindSpore官网命令
最奇怪的是,文件夹明明是cudnn,怎么变成了cuda,也没有“lib64”文件夹啊,只有lib。因此修改了一下这两条命令,如下:

sudo cp cudnn/include/cudnn.h /usr/local/cuda-11.1/include
sudo cp cudnn/lib/libcudnn* /usr/local/cuda-11.1/lib64

望MindSpore官网能修正一下。
再执行下一条命令

sudo chmod a+r /usr/local/cuda-11.1/include/cudnn.h /usr/local/cuda-11.1/lib64/libcudnn*

安装Python3.8

由于Ubuntu20.04自带Python3.8,因此这里就可以直接跳过。但需要安装一下pip,可以使用以下命令:

sudo apt install python3-pip

安装python3-pip

可以通过如下命令在查看所安装的Python版本。

python3 --version

安装GCC

根据MindSpore官网的说明,使用如下命令安装GCC(其实在最前面已安装了):

sudo apt-get install gcc -y

安装MindSpore

根据MindSpore官网的说明,使用如下命令安装MindSpore1.10.1:

export MS_VERSION=1.10.1
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/${MS_VERSION}/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-${MS_VERSION/-/}-cp38-cp38-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple

安装MindSpore
安装成功后,如图:
MindSpore安装成功
运行MindSpore GPU版本前,请确保nvcc的安装路径已经添加到PATH与LD_LIBRARY_PATH环境变量中,如果没有添加,以安装在默认路径的CUDA11为例,可以执行如下操作:

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

如果安装了其他CUDA版本或者CUDA安装路径不同,只需替换上述命令中的/usr/local/cuda-11.1为当前安装的CUDA路径。

另外,在MindSpore安装中,会有两句Warning,如图。
安装MindSpore两句Warning

其实也是环境变量未添加的原因,只需运行如下命令即可,如图。

export PATH=/home/zzm/.local/bin:$PATH

安装MindSpore警告修正

验证MindSpore安装成功

验证方法一,输入命令

python3 -c "import mindspore;mindspore.run_check()"

输出MindSpore的版本号,如图:
验证MindSpore安装成功方法一
验证方法二,先在文本编辑器内,输入以下内容

import numpy as np
import mindspore as ms
import mindspore.ops as opsms.set_context(device_target="GPU")
x = ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
y = ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
print(ops.add(x, y))

保存为一个py文件(MindSporeTest.py),如图:
测试文件MindSporeTest在终端中,输入如下命令,运行此py文件

python3 MindSporeTest.py

得到如图结果,则说明安装成功:
验证MindSpore安装成功方法二
以上内容经过本人亲测,若有不对,敬请谅解,欢迎批评指正!!

这篇关于MindSpore1.10.1安装步骤详解(Ubuntu20.04+3080Ti+CUDA11.1+Python3.8)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Springboot配置文件相关语法及读取方式详解

《Springboot配置文件相关语法及读取方式详解》本文主要介绍了SpringBoot中的两种配置文件形式,即.properties文件和.yml/.yaml文件,详细讲解了这两种文件的语法和读取方... 目录配置文件的形式语法1、key-value形式2、数组形式读取方式1、通过@value注解2、通过

自定义注解SpringBoot防重复提交AOP方法详解

《自定义注解SpringBoot防重复提交AOP方法详解》该文章描述了一个防止重复提交的流程,通过HttpServletRequest对象获取请求信息,生成唯一标识,使用Redis分布式锁判断请求是否... 目录防重复提交流程引入依赖properties配置自定义注解切面Redis工具类controller

Nginx更新SSL证书的实现步骤

《Nginx更新SSL证书的实现步骤》本文主要介绍了Nginx更新SSL证书的实现步骤,包括下载新证书、备份旧证书、配置新证书、验证配置及遇到问题时的解决方法,感兴趣的了解一下... 目录1 下载最新的SSL证书文件2 备份旧的SSL证书文件3 配置新证书4 验证配置5 遇到的http://www.cppc

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

Python容器转换与共有函数举例详解

《Python容器转换与共有函数举例详解》Python容器是Python编程语言中非常基础且重要的概念,它们提供了数据的存储和组织方式,下面:本文主要介绍Python容器转换与共有函数的相关资料,... 目录python容器转换与共有函数详解一、容器类型概览二、容器类型转换1. 基本容器转换2. 高级转换示

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

windows下安装Nginx全过程

《windows下安装Nginx全过程》文章介绍了HTTP和反向代理服务器的概念,包括正向代理和反向代理的区别,并详细描述了如何安装和配置Nginx作为反向代理服务器... 目录概念代理正向代理反向代理安装基本属性nginx.conf查询结构属性使用运行重启停止总结概念是一个高性能的HTTP和反向代理we

C++ move 的作用详解及陷阱最佳实践

《C++move的作用详解及陷阱最佳实践》文章详细介绍了C++中的`std::move`函数的作用,包括为什么需要它、它的本质、典型使用场景、以及一些常见陷阱和最佳实践,感兴趣的朋友跟随小编一起看... 目录C++ move 的作用详解一、一句话总结二、为什么需要 move?C++98/03 的痛点⚡C++

MySQL中between and的基本用法、范围查询示例详解

《MySQL中betweenand的基本用法、范围查询示例详解》BETWEENAND操作符在MySQL中用于选择在两个值之间的数据,包括边界值,它支持数值和日期类型,示例展示了如何使用BETWEEN... 目录一、between and语法二、使用示例2.1、betwphpeen and数值查询2.2、be