关于机器学习:小Mi的MindSpore安装经验之环境依赖常见问题及解决办法

11次阅读

共计 3053 个字符,预计需要花费 8 分钟才能阅读完成。

再长的路,一步步也能走完;再短的路,不迈出第一步也无奈达到,想要体验 MindSpore,肯定是从装置开始。

明天小 Mi 为大家整顿装置过程中常呈现的环境配置和依赖相干问题。

  1. 无论是什么形式和平台装置 MindSpore,请务必确认所有规定的依赖及版本。
  1. Ubuntu 18.0404 自带环境与 MindSpore 要求不同,须要手动调整。
  1. gcc 装置失败 / 如何装置 / 装不起来等问题,可参考以下两位的教训:

张小白教你如何在 Ubuntu 18.04 上源码装置 MindSpore V1.0

mindspore1.3.0 的编译环境之 GCC7.3.0 的装置

  1. 抉择 CUDA 不同版本,对应的 cuDNN 版本也不同。CUDA 10.1 对应 cuDNN 7.6.x,而 CUDA 11.1 配套的 cuDNN 8.0.x。
  1. CUDA 装置请确认是否装置相应的 cuDNN,个别须要本人手动装置。能够参考张小白博客内容:https://bbs.huaweicloud.com/b…
  1. 应用 pip 装置时报错: ERROR: mindspore_{VERSION}.whl is not a supported wheel on this platform。

A:pip 会通过 wheel 安装包的文件名来判断该安装包是否与以后 Python 环境兼容,例如装置 mindspore_ascend-1.2.0-cp37-cp37m-linux_aarch64.whl 时,pip 会查看:

以后 python 环境为 7.x 版本
以后操作系统为 Linux
操作系统架构为 arm64
因而,如果呈现 is not a supported wheel on this platform 问题,请查看以后环境是否满足 MindSpore 装置要求,以及该 MindSpore 安装包版本是否正确。

  1. 应用 pip 装置依赖库时提醒 No matching distribution found for XXX 谬误,应该怎么办?

A: 请执行 pip config list,查看以后软件库索引门路 index-url。某些状况下,软件库索引会呈现更新滞后,可尝试设置其它软件库索引门路。

  1. Ascend 硬件平台,在集体的 Conda 环境中,有时候呈现报错 RuntimeError: json.exception.parse_error.101 parse error at line 1, column 1: syntax error while parsing value – invalid literal; last read:‘T’,该怎么解决?

A: 呈现这种类型的报错,大概率是 run 包更新后集体的 Conda 环境中没有更新 te 或 topi 或 hccl 工具包,能够将以后 Conda 环境中的上述几个工具包卸载,而后应用如下命令再重新安装: pip install /usr/local/Ascend/ascend-toolkit/latest/fwkacllib/lib64/{te/topi/hccl}-{version}-py3-none-any.whl。

  1. 在 ARM 架构的环境上应用 pip 装置 MindSpore 时报错: Could not find a version that satisfies the requirement 应该怎么办?

A: 大概率是因为 pip 版本低于 19.3,无奈辨认 manylinux2014 标签,导致 pip install 阶段下载了谬误版本的 numpy 或 scipy 等 python 软件包,进而引发了无奈找到构建依赖的问题,请执行 pip install –upgrade pip 将环境中的 pip 降级到 19.3 以上,重新安装 MindSpore。

  1. 如何扭转第三方依赖库装置门路?

A: 第三方依赖库的包默认装置在 build/mindspore/.mslib 目录下,能够设置环境变量 MSLIBS_CACHE_PATH 来扭转装置目录,比方 export MSLIBS_CACHE_PATH = ~/.mslib。

  1. 环境上装置了 Python3.7.5,环境变量设置正确,编译 MindSpore 时依然报错 Python3 not found,应该怎么办?

A: 可能是因为以后环境上的 Python 未蕴含动静库。编译 MindSpore 须要动静链接 Python 库,因而须要应用开启动静库编译选项的 Python3.7.5,即在源码编译 Python 时应用./configure –enable-shared 命令。

  1. 一些罕用的环境变量设置,在新启动的终端窗口中须要从新设置,容易遗记应该怎么办?

A: 罕用的环境变量设置写入到~/.bash_profile 或 ~/.bashrc 中,可让环境变量设置在新启动的终端窗口中立刻失效。

  1. 应用 GPU 版本 MindSpore 时,如何设置 DEVICE_ID 环境变量?

A:MindSpore GPU 模式个别无需设置 DEVICE_ID 环境变量,MindSpore 会依据 cuda 环境变量 CUDA_VISIBLE_DEVICES,主动抉择可见的 GPU 设施。设置 CUDA_VISIBLE_DEVICES 环境变量后,则 DEVICE_ID 环境变量代表可见 GPU 设施的下标: 执行 export CUDA_VISIBLE_DEVICES=1,3,5 后,DEVICE_ID 该当被设置为 0,1 或 2,若设置为 3 及以上,MindSpore 会因为设施 ID 不非法而运行失败。

  1. 编译利用时报错 /usr/bin/ld: warning: libxxx.so, needed by libmindspore.so, not found 怎么办?

A: 寻找短少的动静库文件所在目录,增加该门路到环境变量 LD_LIBRARY_PATH 中,环境变量设置参考 Ascend 310 AI 处理器上应用 MindIR 模型进行推理 #编译推理代码。

  1. 运行利用时呈现 ModuleNotFoundError: No module named ‘te’ 怎么办?

首先确认环境装置是否正确,te、topi 等 whl 包是否正确装置。如果用户环境中有多个 Python 版本,如 Conda 虚拟环境中,需 ldd name_of_your_executable_app 确认利用所链接的 libpython3.so 是否与以后 Python 门路统一,如果不统一须要调整环境变量 LD_LIBRARY_PATH 程序,例:export LD_LIBRARY_PATH=python -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))":$LD_LIBRARY_PATH

将以后的 python 命令对应程序的运行库门路退出到 LD_LIBRARY_PATH 的最后面。

优良用户教训分享
[深夜上线]MindSpore 的 CPU 在 win10x64 下装置(超具体,小白可懂)

保姆式教程教你如何一步步在 window10 零碎下装置 mindspore 框架 +pycharm 导入 python 遇到的问题解决

MindSpore GPU 版本装置领导

pip 形式装置 MindSpore Ascend 910 版本

Windows 上体验源码编译装置 MindSpore

解决门路
非注意事项提到的问题能够通过查问论坛 问题求助 - 装置或官网 FAQ- 装置

来查问同类问题的解决形式。

如果您遇到了问题并胜利解决,也能够分享相干教训到论坛 技术干货 - 装置教训

《手把手装置教程》系列视频看这里。

如果上述形式都没有解决您的问题,欢送到论坛问题求助板块发帖求助,咱们的技术撑持将在第一工夫给您回复。

欢送补充本篇脱漏内容~

看到这里,筹备好 say Hello World 了么?

正文完
 0