报名 | 源码剖析:华为MindSpore端到端代码调用流程

2020 年 4 月 28 日 机器之心
4 月 26 日,机器之心联合华为昇腾学院开设的线上公开课 《轻松上手开源框架 MindSpore》 第二课完成,GraphEngine 高级工程师王俊为大家带来了主题分享《MindSpore 中 GraphEngine 浅析》,第二课回顾视频如下:


第二课精选问答与 PPT 详见文末。

公开课第3讲


课程主题 :MindSpore 代码流程分析

课程时间: 4 月 28 日(周二)20:00

课程讲师: 王辉

讲师简介 :华为云与计算 BG 计算开源生态部工程师,专注于新领域探索(AI、计算、云等)和开源技术研究。目前在负责 MindSpore 社区的生态推广工作,同时也曾参与 OPNFV、OpenSDS 和 Open Service Broker API 等开源社区进行贡献。

课程摘要 :本次课程将带领大家从源码的角度来剖析 MindSpore 端到端的调用流程,同时以 CPU 算子开发为例向大家展示 MindSpore 的算子开发流程。

课后作业 :为了帮助大家熟悉 MindSpore 中 CPU 算子的端到端调用流程,进一步加深对 MindSpore 架构的理解,我们将在本次直播后设置一次课后作业:
  • 作业题目:MindSpore CPU 算子开发调试

  • 作业内容:

    • 普通档:从当前CPU算子支持列表中任选三个算子执行,并反馈算子执行结果

    • 挑战档:开发新的CPU算子,完成该算子的调试操作,并反馈算子执行结果(可选)

  • 作业奖励:作业完成优秀的同学将获得赠书《深度学习与MindSpore实践》。

  • 更多作业详情与实践项目加入下方学习交流群即可获取。




如何加入

《轻松上手开源框架 MindSpore》系列课程全程免费,识别下方二维码,即可加入学习交流群,一起看直播学理论、做作业动手实践。


注:若群人数达到限制,无法直接扫码加入,请识别上方海报二维码添加机器之心小助手(syncedai6),备注「开源」,小助手将邀请进群。



第二课精选问答

在第二课的 QA 环节中,有一些问题被大家广泛提到,王俊讲师再次做了精选与编辑,供大家参考。

Q1:循环下沉是什么?


循环下沉是在 on-device 执行的基础上更进一步的一个技巧,意图进一步建校 host 侧和 device 侧之间的交互次数。一般情况下,我们习惯于每个 step 都返回一个结果,循环下沉是控制每隔多少个 step 返回一次结果,缺省的配置是一个 epoch 返回一次结果,这样每个 epoch 里,host 侧和 device 侧只需要进行一次数据交互即可。


Q2:FusionOP是定义在device上么?


FusionOP 对应的具体算子是有其算子实现的,存储在算子信息库中,融合出 fusionOP 的过程是在 host 侧的 CPU 上完成,运行此 FusionOP 是在 device 上。


Q3:profiling只能在昇腾上用吗?


只能在昇腾上使用。


Q4:profiling有op的开始时间吗?


profiling 是记录下 op 开始和结束的时间,以此计算算子耗时。


Q5:数据dump是能dump出来什么数据?


通过配置可以 dump 出任何存在在网络中的数据,每一个算子的输入输出,每一个 parameter 的值和梯度都可以被 dump 下来。


Q6:910 支持推理吗?支持多少op呢?


910 支持训练及推理,310 只支持推理。目前我们的算子信息库已经相对完善,常用的 op 基本都已支持,如果有自定义算子的需求,我们提供了 TBE 工具来支持用户自定义算子的开发。


Q7:算子在不同的加速器上的调度策略什么?


在图准备阶段会根据代价函数进行算子引擎分配,在流分配阶段也会充分考虑不同算子之间的并行计算可能,具体指定每个算子的执行引擎。


Q8:GE是mindspore中和硬件交互的?


是的,GE 专门负责和 Ascend 芯片交互。


Q9:310不能做训练么?


310 只能做推理,MindSpore 训练好后的模型,将其固化为 pb 格式后,可以部署到 310 芯片上进行推理。


Q10:如何自定义腾芯片支持的op呢?


提供了 Tensor Boost Engine 这个工具来支持自定义 op。Ascend 芯片的算子需要用一种 cce 格式的代码编写,需要显式指定内存搬运操作,极为复杂,使用 tbe 工具,只需调用其 python 接口完成算子逻辑定义,即可生成可运行在 Ascend 上的自定义算子。


大家后续如有更多问题,欢迎关注 MindSpore 的gitee和github,随时提 issue,官方人员将及时为大家解答:
  • Gitee: https://gitee.com/mindspore
  • GitHub:https://github.com/mindspore-ai


PPT下载方式:关注公众号「MindSpore」,回复关键词「GE」,即可下载。

登录查看更多
0

相关内容

MindSpore:新一代AI开源计算框架。 创新编程范式,AI科学家和工程师更易使用,便于开放式创新;该计算框架可满足终端、边缘计算、云全场景需求,能更好保护数据隐私;可开源,形成广阔应用生态。 2020年3月28日,华为在开发者大会2020上宣布,全场景AI计算框架MindSpore在码云正式开源。 MindSpore着重提升易用性并降低AI开发者的开发门槛,MindSpore原生适应每个场景包括端、边缘和云,并能够在按需协同的基础上,通过实现AI算法即代码,使开发态变得更加友好,显著减少模型开发时间,降低模型开发门槛。通过MindSpore自身的技术创新及MindSpore与华为昇腾AI处理器的协同优化,实现了运行态的高效,大大提高了计算性能;MindSpore也支持GPU、CPU等其它处理器。
华为发布《自动驾驶网络解决方案白皮书》
专知会员服务
125+阅读 · 2020年5月22日
【人大】图实现算法综述与评测分析
专知会员服务
37+阅读 · 2020年4月28日
《深度学习》圣经花书的数学推导、原理与Python代码实现
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
163+阅读 · 2019年10月28日
【泡泡读者来稿】DSO代码解读
泡泡机器人SLAM
13+阅读 · 2019年10月21日
【泡泡点云时空-PCL源码解读】PCL中的点云配准方法
泡泡机器人SLAM
69+阅读 · 2019年6月16日
最全Python算法实现资源汇总!
AI100
3+阅读 · 2019年5月13日
今日面试题分享:L1和L2的区别
七月在线实验室
7+阅读 · 2019年3月14日
Deeplearning4j 快速入门
人工智能头条
14+阅读 · 2018年12月24日
Deeplearning4j的介绍与实例分享 | 公开课
AI研习社
14+阅读 · 2017年11月27日
10个深度学习软件的安装指南(附代码)
数据派THU
17+阅读 · 2017年11月18日
手把手教TensorFlow(附代码)
深度学习世界
15+阅读 · 2017年10月17日
手把手教你安装深度学习软件环境(附代码)
数据派THU
4+阅读 · 2017年10月4日
报名 | 让机器读懂你的意图——人体姿态估计入门
人工智能头条
10+阅读 · 2017年9月19日
Image Captioning based on Deep Reinforcement Learning
Arxiv
5+阅读 · 2018年6月12日
VIP会员
相关VIP内容
华为发布《自动驾驶网络解决方案白皮书》
专知会员服务
125+阅读 · 2020年5月22日
【人大】图实现算法综述与评测分析
专知会员服务
37+阅读 · 2020年4月28日
《深度学习》圣经花书的数学推导、原理与Python代码实现
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
163+阅读 · 2019年10月28日
相关资讯
【泡泡读者来稿】DSO代码解读
泡泡机器人SLAM
13+阅读 · 2019年10月21日
【泡泡点云时空-PCL源码解读】PCL中的点云配准方法
泡泡机器人SLAM
69+阅读 · 2019年6月16日
最全Python算法实现资源汇总!
AI100
3+阅读 · 2019年5月13日
今日面试题分享:L1和L2的区别
七月在线实验室
7+阅读 · 2019年3月14日
Deeplearning4j 快速入门
人工智能头条
14+阅读 · 2018年12月24日
Deeplearning4j的介绍与实例分享 | 公开课
AI研习社
14+阅读 · 2017年11月27日
10个深度学习软件的安装指南(附代码)
数据派THU
17+阅读 · 2017年11月18日
手把手教TensorFlow(附代码)
深度学习世界
15+阅读 · 2017年10月17日
手把手教你安装深度学习软件环境(附代码)
数据派THU
4+阅读 · 2017年10月4日
报名 | 让机器读懂你的意图——人体姿态估计入门
人工智能头条
10+阅读 · 2017年9月19日
Top
微信扫码咨询专知VIP会员