MindInsight安装可视化集群调优

网友投稿 808 2022-05-30

一、安装MindSpore1.15

因为MindSpore目前只支持Python3.7.5(3.7.5小版本在.5以上好像也可以)和Python3.9,所以建议使用Anaconda进行安装。

Anaconda主页:https://www.anaconda.com/

进入到命令行界面(Windows在安装后有对应的Anaconda命令行,linux的话就直接终端运行)创建环境

conda create -n msinsight python=3.7

MindSpore1.5安装参考MindSpore安装文档https://mindspore.cn/install

直接根据环境选择对应的MindSpore安装包,然后复制下载安装命令,我这里选用的是MindSpore GPU版本,CPU的话就选择CPU然后复制对应的命令即可

pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-1.5.0-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成后,使用如下命令检查一下是否安装成功

MindInsight安装及可视化集群调优

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

出现如下说明安装成功

MindSpore version: 1.5.0 The result of multiplication calculation is correct, MindSpore has been installed successfully!

二、MindInsight安装

安装MindSpore可以使用后接下去我们安装MindInsight

MindInsight安装命令:

pip install mindinsight

检验是否安装成功

mindinsight start

出现如下字样说明安装完成:

Workspace: /home/jeffding/mindinsight Summary base dir: /home/jeffding Web address: http://127.0.0.1:8080 service start state: success

三、修改MindInsight代码使得可以远程访问

默认安装的MindInsight是能实现本地浏览器使用127.0.0.1:8080地址进行访问。但是如果我们使用ECS需要进行远程访问的就会出现访问不了。不过也不是不能访问,只需要修改一个文件即可

使用vim工具修改对应的代码,代码路径:[anaconda3安装路径]/envs/msinsight/lib/python3.7/site-packages/mindinsight/conf/constants.py

将代码中的

#################################### # Web default settings. #################################### HOST = '127.0.0.1'

修改成

#################################### # Web default settings. #################################### HOST = '0.0.0.0'

然后保存后,重启一下mindinsight

mindinsight stop mindinsight start

出现如下字符:

Workspace: /home/jeffding/mindinsight Summary base dir: /home/jeffding Web address: http://0.0.0.0:8080 service start state: success

现在我们在使用浏览器访问看看

现在我们可以看到可以正常访问MindInsight

四、可视化集群调优

接下去我们找一个性能数据进行性能瓶颈的分析。看一下性能瓶颈在哪里

可以看到这里显示有一个性能数据,点击【性能分析】就可以查看到一些性能数据

可以看到界面上有一些性能的信息,例如:迭代轨迹、算子耗时排名等等。在页面的左面还有调优的建议可供参考。

我们点击【算子耗时排名】看一下算子的耗时信息

在这个界面我们可以清晰的看见AI CORE、AICPU、HOST CPU的一些算子耗时信息。我们可以在界面中看到0号卡上耗时比较多的算子是FusionOp_Conv2D_BNTrainingReduce。左上角的逻辑卡号我们还可以选择不同的卡,查看其他卡上的资源

以上的数据都是单机的一些数据,我们回到主界面点击【集群】就可以看到集群的一些性能数据

在这个界面可以看到有迭代轨迹、集群通信等等信息。点击迭代轨迹的详情

在出来的界面中就可以看到迭代轨迹的详细信息。接下去我们点右上角的大叉,我们看看集群通信的数据。

在这个界面中集群通信的一些数据就出来了,我们点算子详情,就可以看到有哪些算子的耗时比较长,

在出来的窗口中我们可以清晰的看到集群中AllReduce耗时比较久。

至此,整个可视化集群性能调优的操作就体验完成了。

MindSpore

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python中的函数参数
下一篇:OpenCV使用之-----BruteForceMatcher报错“无法识别的标识符”
相关文章