Atlas 200DK系统折腾纪实(9)MindStudio 3.0.1 for Windows初体验
MindStudio简介
众所周知,MindStudio是在做CANN开发时非常好的可视化开发工具。它可以运行在宿主机上,也可以直接运行在开发板上,或者运行在AI1S的云服务器上(参见 https://bbs.huaweicloud.com/blogs/254154 搜索 关键字 安装MindStudio 之后的内容)。
只是前一种运行方式,需要用VMWare等虚拟化工具安装Ubuntu 18.04的X86虚拟机
然后在虚拟机中启动MindStudio:
这样才能启动起来:
此时MindStudio运行代码,实际上是利用在Ubuntu 虚拟机上安装好的X86和ARM的编译环境,在X86上交叉编译好ARM的代码后,将代码拷贝到200DK的ARM环境下执行,并将结果拷贝回宿主机。
而最后一种运行方式,相当于直接在ARM环境下安装开发环境和运行环境,MindStudio也直接在ARM环境下运行。此时需要安装MobaXterm实现MindStudio的XWindows的远程显示。
(上图来自 https://bbs.huaweicloud.com/blogs/254154 )
但是现在已经有了MindStudio for Windows的版本了。在这种情况下,在Windows下无法直接编译出arm的可执行文件,所以其实是需要在MindStudio上设置原本在200DK上安装的Ascend-cann-toolkit的路径(ADK),MindStudio会将头文件或者与架构无关的Python脚本同步到Windows本地,用以在Windows上实现函数跳转功能;而实际的编译、模型转换(Model Converter)等都是将相应的文件拷贝到200DK上执行,执行完毕后,再将结果拷贝回来(这点倒是跟前面提到的在虚拟机上执行MindStudio很像)(具体解释参见 https://bbs.huaweicloud.com/forum/forum.php?mod=redirect&goto=findpost&ptid=130571&pid=1198736&fromuid=70062 )
安装MindStudio 3.0.1
打开 https://www.hiascend.com/software/mindstudio
点击 立即下载:
可以看到,有两个windows版本,一个是安装版,一个是绿色版。
我们就体验安装版吧。点击右边的“软件包下载”:
选择 同意框后,点击立即下载:
耐心等待249M的安装文件下载完毕:
点击exe,执行安装:
点击“运行”后进入安装程序:
一路Next到底:
选择Install:
耐心等待安装完毕:
选择重启,点击Finish。
安装完毕后,桌面会生成一个图标:
检查并安装MindStudio运行所需的环境
在启动MindStudio之前,先根据 https://support.huaweicloud.com/usermanual-mindstudio301/atlasms_02_0423.html 文档的要求,确认JDK11,Python 3.7.5和MinGW是否正常安装:
(1)升级Java
Java目前是1.8,需要升级到11
将在网上下载的 jdk-11.0.9.zip解压到 C:\Java\jdk-11.0.9的目录。
修改Windows的环境变量JAVA_HOME
增加或者修改原有PATH中JDK8的路径:
Java已更新为11版本。
(2)准备Python 3.7.5 for windows环境
Python是3.7.6,但是 可以考虑用Anaconda做一个Python 3.7.5的环境。。
按Y继续:
(3)准备MinGW环境:
确认MinGW是否正常安装:
经咨询昇腾专家,200DK使用MindStudio时,windows上不需要装acllib。开发环境和运行环境都是远程200DK的Ubuntu 18.04 arm系统。
配置MindStudio:
(1)配置到200DK的ssh连接
双击安装好的MindStudio的图标,启动MindStudio3.0.1,会弹出设置页面:
选择 Do not import settings
在弹出的 Remote ADK Setting 页面,点右边的 + ,进入以下画面:
点击+后,进入以下页面:
点击+ ,配置200DK的ssh信息:输入以下信息后,点击Test Connection:
系统显示连接成功。
(2)配置远程ADK
我们使用MobaXterm登陆到开发版看一下Ascend-cann-toolkit安装的目录:
将路径 /home/HwHiAiUser/Ascend/ascend-toolkit/3.3.0.alpha001/ 拷回到 Remote ADK Setting的ADK Location栏位:
点击Finish:
等一会儿,出现了这个窗口:
输入姓名和单位名称,点击Agree:
终于进入了主页面:
(3)安装Python插件
按照 https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=130869&page=1#pid1200993 提到的方式,先安装MindStudio的Python插件:
点击Configure->Plugins:
在Search栏输入python
在左边结果列表中,点击 Python Community Edition 插件名称右边的 Install按钮:
耐心等待插件安装结束。
安装完毕后,可以点击 绿色的RestartIDE按钮,并继续点击蓝色的Restart.
系统会问你这个问题:
既然是刚刚才同步的,那就不需要重新同步了。选择No。
又重新到了MindStudio的欢迎页面:
(4)查看ADK配置:
再重新点击 configure下的settings:
点击Appreaance & Behavior->System Settings->ADK
可以看到ADK已被识别 Installed 和 Activated.
点击 Cross Compiler
会发现 g++交叉编译器也被识别。
验证200DK典型项目——黑白照片上色
使用scp工具把原来在200DK或者在ubuntu虚拟机上的项目目录拷贝到Windows上,然后再打开相关的项目试试吧。
打开 使用xftp从虚拟机传过来的黑白图片上色的目录:colorization
很快进入了IDE页面:
点击Build->Edit Build Configurations:
执行build:点击上面页面中的 build按钮:
MindStudio会将代码传到 200DK的相关目录下(./MindStudio-WorkSpace)
但是好像编译报错了:
我们再看同一个项目(在被拷贝的 ubuntu宿主机的相关目录)
编译是没有问题的。
再仔细看了下 src/CMakeLists.txt文件,发现 这里设置了
set(OPENCV_PATH "/usr/local")
加上后面
# Header path
include_directories(
../inc/
${INC_PATH}/acllib/include/
$ENV{HOME}/ascend_ddk/${ARCH}/include
$ENV{HOME}/ascend_ddk/${ARCH}/include/opencv4
${OPENCV_PATH}/include/opencv4
$ENV{HOME}/include/opencv2
)
以及 inc/util.h文件:
#include "opencv2/opencv.hpp"
#include "opencv2/imgcodecs/legacy/constants_c.h"
#include "opencv2/imgproc/types_c.h"
所以它会到 /usr/local/include/opencv4/opencv2/ 下找 opencv.hpp文件。
在宿主机上有这个目录:
但是在 200DK上却没有这个目录:
查看 https://gitee.com/ascend/samples/blob/master/cplusplus/environment/opencv_install/README_200DK_CN.md 文档当时在200DK上安装opencv的过程,实际上200DK并没有安装到该目录,而是装到了 /home/HwHiAiuser/ascend_ddk/arm/这个目录:
所以,将src/CMakeList.txt文件改为:
set(OPENCV_PATH "/home/HwHiAiUser/ascend_ddk/arm")
再重新Build:
成功完成编译。
然后Run->Edit Configurations:
检查编译后的 E:/MyMindStudioProjects/colorization/out/main 文件是否存在:
那就执行Run吧:
成功执行。但是貌似 output目录下的图片时间不对。
这可能说明MindStudio在原来有windows下有这个文件的情况下,并没有覆盖现有的windows文件。
删除这个文件,重新Run:
最后看下上色的效果图片:
看来,MindStudio在远程执行200DK的编译、运行方面暂时没有什么问题。
MindStudio配置Conda环境:
当然,前面还有一件事情没做完,就是让 MindStudio连接conda的Python 3.7.5的环境:
File->Project Structure:
点击 <No SDK>右边的小箭头:
选择 Add Python SDK,在弹出的菜单中选择 Conda Enviroment->Existing enviroment:
果然有前面装好的conda python环境(名字叫做mindstudio),选择后点击OK即可返回:
再点击OK即可。这个配置方法跟PyCharm配置conda环境的做法非常像。
当然,因为黑白图片这套代码都是基于C++的,没有用到Python,所以好像不配置好像也能成功出推理结果。
(全文完,谢谢阅读)
- 点赞
- 收藏
- 关注作者
评论(0)