【华为云开发者沙龙-杭州站】轻松玩转Atlas 200 DK(上)

举报
发表于 2019/12/18 23:03:03 2019/12/18
【摘要】 一直以来开发者们大多数都会无故困于部署调优和测试这样一个死循环中,其中还相伴了一些开发效率低下、成本激增以及创新力下降这样的问题。面对这样一些痛楚,华为Atlas人工智能平台可以做到从计算入手,到业务流程编排整个闭环,每个关键点都可以拿下,本文主要讲述了这样的一个技术如何帮助企业和开发者们快速进入AI领域的开发。

主讲人:华为智能计算AI生态发展经理 黄磊

image.png

Atlas 200 DK简介

华为Atlas人工智能计算平台

Atlas 200 DK是华为面向开发者推出的一个开发模板,在这个计算平台上我们实现了两大突破,一个是边际的突破,另外一个是算力的突破。边际的突破就是在生成系列的芯的时候,采用了统一可拓展的达芬奇架构,它是全球第一个来覆盖全产品的人工智能芯片,它不论是在边缘场景,还有在大算力的数据中心,都可以全覆盖,我们会包含Atlas 200 DK的一个嵌入式的模块,有一个火柴盒那么大,它可以被用在比如机器人、摄像头、无人机这种嵌入式场景,还有像Atlas 500的智能小站,是可以用在边缘上的场景,还有就是Atlas 300是一个AI加速卡,它是一个PCIE的一个标卡,是可以用在人工智能训练场景,这三款主要是做推理用的,除了这三款以外,我们还有训、推一体的Atlas 800深度学习系统,这是一个试用的高流服务器,除此之外,还有之前提到的Atlas 200 DK。对于算力的不同主要就是在芯片这一块,芯片的话是基于我们去年AC大会上发布的联网芯片,一个是昇腾310,一个是昇腾910,昇腾310主要适用于AI推理场景,它是面向边缘计算的一个强算力的AI的SOA,它单芯片算力能达到16T,昇腾910是用于训练场景,它是单芯片计算密度最大的,它的单芯片的算力可以达到256T。

image.png

华为Atlas人工智能计算平台

Ascend AI芯片,为计算注入强劲的智能因子

下图所示就是昇腾310的一个芯片,用的是Atlas 200上面用的一个芯片,这个芯片的核心是有两个AI Core,以及一个8核的ARM A55的处理器,其中AI负责的是AI里面的矩阵运算和向量密集的运算,AI Core能很好的解决脏量运算的问题,还有这个8核A55的CPU,主要负责一些不太适合跑在AI Core上的一些算子的运行,这两个就是整个昇腾310的核心。除了这以外,我们还加入了一些项目瀑布的接口以及很大的内存,我们的芯片支持8GB或16GB的内存规格,这样可以满足一些计算密度比较高的场景,高速接口我们除了支持标准的PCle,也能支持USB、RGMII、SPI、l2C各种接口。

image.png

Ascend AI芯片,为计算注入强劲的智能因子

Atlas 200 DK概述

Atlas 200 DK是一个大概比手机稍微大点的开发者板,它的长度大概只有不到14厘米,宽度大概只有9厘米左右,高度大概是3厘米,黑色的机身,红色的线条,使用的核心是Ascend 310芯片,它是把Ascend 310芯片的核心功能通过这个板的接口引出来。

image.png

Atlas 200 DK概述

Atlas 200 DK系统结构图

下图中左边就是一个Atlas 200的逻辑架构图,从这个图里面我们可以看到Atlas 200的一个AI架构模块,在这个模块里面的核心就是昇腾310芯片,在旁边有一个Camera模块,我们使用的是Hi3559,它主要是负责多媒体处理,可以接外置的摄像头,它可以接两个,许多摄像头是可以直接接过来的,还有就是它留出了两个麦克风的接口,Mic 1是在开发者板上已经集成了的,还有一个就是我们留出来的音频接口,是可以外置去接一些音频的输入。在200 DK的右边是我们留出的一些接口,其中最核心的是有一个40PIN的接口,它能支持像UART、LPC、GPIO等各种接口,如果是做电子的,应该会很了解这些,这些接口是可以应用在例如机器人,可以把后面的信号引出来,可以控制机器人、智能小车等等。还有就是下面会有一个Micro SD卡的插槽,这个卡主要就是刷入200 DK后面的一个系统,我们用200 DK的话,它上面有一个ARM架构的CPU,所以它会要放一个像Ubuntu的ARM卡的一个系统,会要刷入到这个卡里面,插入统一的卡去启动,再往下是一个USB的接口,它是有Type-C的,但是要注意的是这个只能是做客户端使用的。然后再往下就会有一个网口,这两个USB接口和网口是可以通过USB和网口来跟PC进行通讯,主要跟开发环境来进行通讯,可以进行一些我们用来推理的数据比如说图片、视频、语音的输入,它的推理的结果也可以通过USB接口和以太网口来输出。

image.png

Atlas 200 DK系统结构图

Atlas 200 DK工具软件—MindSpore Studio

有了开发团以外,我们在做开发的时候,还需要有一个简单易用的开发环境,也就是IDE,我们这个软件叫MindSpore Studio,这个MindSpore Studio是基于华为自研NPU,也就是我们的昇腾芯片来做的一个全栈的开发平台,它上面是用的图形拖拽式的方式,比如说如果要做一个AI的产业构线的话,直接把推理过程中所需要的一些模块拖上来,连上线,一线编译成形就可以了,它是可以做到零编码的,极大地降低了我们AI开发的门槛,再通过我们这个平台,不仅可以实现AI应用的开发,也能实现一些基于算子、网络层,还有一些引擎的开发。我们这个IDE环境跟我们的DK大概是一个什么关系呢?我们的MindSpore Studio就是要运行在一个获权的电脑上面,比如我们的笔记本,它是放在这个笔记本上面的,然后再通过一根网线来跟DK连接,DK上面会运行一个Engine程序,通过这个Engine来跟MindSpore Studio进行交互,我们可以在MindSpore Studio上面去做好我们的一些应用的开发,开发以后我们在运行的时候,可以通过这个Engine把应用下发到200 DK上面,来验证这个应用有没有问题。

image.png

Atlas 200 DK工具软件—MindSpore Studio

典型AI应用场景

我们开发一些应用的时候可以用到哪些场景呢?这里列举了一些,比如闸机,现在可以在进入一些园区的时候,可以进行刷脸,无人机就可以用我们Atlas 200这个模块在无人机上面加上AI推理功能,这样我们就能用在一些例如高压电线的巡检、基站的巡检,还有森林的防火、树木的安全上,可以应用在很多场景,这也是应用在平安城市里面,平安城市的应用还可以做一些人车识别,对一些人和车辆的轨道跟踪,还有就是对可疑分子的识别,另外还有像智能机器人、自动驾驶等等,因为AI是一个通用技术,它是可以涉及到我们的各行各业的,所以它的场景也会非常多。

image.png

典型AI应用场景

Atlas 200 DK部署

Atlas 200 DK部署流程

有了我们的200 DK以后,我们要怎么去通过200 DK来构建出一个开发环境呢?200 DK的安装部署流程大概会分为四大步骤,第一步是准备环境,第二步就是安装我们的IDE环境,也就是MindSpore Studio,第三个就是制作SD卡,这个SD卡就是用来给200 DK上面去刷入集装系统的,最后一步就是配置Atlas 200 DK的环境,这个环境配置主要是用来我们Atlas 200和MindSpore Studio之间怎么来互通,主要是配置一些网络等等。下面就根据这四步来详细介绍一下。

image.png

Atlas 200 DK部署流程

Atlas 200 DK环境准备

环境准备我们会分为三个模块,一个是硬件准备,硬件准备就是要有一台200 DK就可以了,如果还要再细说的话,还要一根网线或者是数据线,再加一台电脑就行了。软件准备就是要准备一个Mini developer kit,这个就是用来给200 DK里面去刷入系统的,还有一个MindSpore Studio,另外还有一个就是arm64的工具包,这个arm64的工具包就是给200 DK做集装系统的。在部署环境,我们需要有一个安装的是ubuntu的操作系统,来部署MindSpore Studio,这个ubuntu现在我们支持的是16.04.3的版本,再高的一个版本的系统现在还不行,像ubuntu18现在还不行,对于客户端,我们需要用Chrome浏览器。

image.png

Atlas 200 DK环境准备

MindSpore Studio安装

然后再到第二步,我们安装MindSpore Studio,这里分了三大步骤,第一个就是上传安装包,将软件包上传至Linux操作系统任一目录并解压,第二步就是执行安装脚本,根据引导完成配置安装,全部回车则使用默认配置,第三步就是访问MindSpore Studio,通过Chrome浏览器进行访问,访问要注意的是我们是用https://的方式,端口号默认的是8888。

image.png

MindSpore Studio安装

系统SD卡制作与UI Host交叉编译环境配置

安装好环境以后,下一步就是该用200 DK进行制卡,刷入系统,这里就需要有一个读卡器,然后把读卡器插上SD卡,这个SD卡容量至少是16GB就可以了,然后把读卡器插在电脑上面,再下载一个脚本,这个脚本我们已经在Github上开源出来,已经可以通过Github来下载得到,下载以后就可以通过执行脚本在200 DK上面把系统直接刷到SD卡里面,要注意的是刷卡的时候,我们一定要用Root账号来运行,然后把卡刷好以后,我们再放到开发者板里面,就可以投入运行了。

image.png

系统SD卡制作与UI Host交叉编译环境配置

连接Atlas 200 DK与UI Host

200 DK也部署完以后,最后一步就是把200 DK跟UI Host进行连接,连接会分两种,一种是通过USB的方式,一种是通过网线的连接方式。通过USB接口的方式,也只能用Type-C的线,因为通向SD口的通向地址是不一样的,在200 DK上承认的默认地址是192.168.1.2,掩码是24位,所以要把主机的虚拟网卡配置成同一网段的地址,配置好以后重启网络服务。另外一种方式就是通过网线的方式,网线方式200 DK的默认网口的地址是192.168.0.2,掩码也是24位,通过这种方式只用把网线跟你PC的网卡连接起来,PC网卡配上同一网段的地址,通过网络方式除了时间以外,空间也是可以跨分层网络的,比如可以跨一个交换机,跨路由器。

image.png

连接Atlas 200 DK与UI Host

配置Atlas 200 DK信息

这个网络配置好以后,最后一步就是在MindSpore Studio上面添加Atlas 200 DK,主要就是输入200 DK的地址还有登陆的账号,然后在MindSpore Studio上面会检测一下200 DK是否是ready状态,,可以看到包括连接状态、驱动状态以及Camera的信息,Camera就是你外接的摄像头,可以接两个,如果状态ok,点确定,就完成了,这样我们的开发环境就搭建好了。

image.png

配置Atlas 200 DK信息

 

视频链接:https://mp.weixin.qq.com/s/bdTZDy5Oo3Oj0cdkPvBz6w

 

以上文字内容由【内容众创小组-栀】整理


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。