0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Arm NN成功适配openEuler Embedded,提供高性能神经网络推理能力

openEuler 来源:openEuler 2023-06-01 15:15 次阅读

近期,RISC-V SIG 完成了 Arm NN 在 openEuler Embedded 系统的适配,于 2023 年 1 月合入系统构建工程代码库,经测试验证可用,实现了神经网络加速库在 openEuler Embedded 嵌入式系统上的加速和优化。

系统构建工程下载地址:https://gitee.com/openeuler/yocto-meta-openeuler

支持 Arm NN 的 openEuler Embedded 系统已向社区开放

openEuler Embedded 是基于 openEuler 社区面向嵌入式场景的 Linux 版本,由于嵌入式系统应用受到多个因素的约束,如资源、功耗、多样性等, 所以通过嵌入式处理器内核进行机器学习成为了技术发展需要,ARM 推出 Arm NN 加速库就是解决方法之一,将机器学习运用到嵌入式系统中。提供高性能神经网络推理能力,支持边、端协同工作,提升资源利用率。

61c36dea-fffc-11ed-90ce-dac502259ad0.jpg

目标检测是在嵌入式平台上运行机器学习的工作负载之一

以目标检测为示例,验证 ArmNN 的推理加速效果:

模型:yolov3 tiny(FLOAT32 量化)

训练数据:COCO

测试数据:640*480 H264 视频

通过实验证明,在精度损失可接受范围内,Arm NN 加速可达到百倍的性能提升。如下图所示,其中横轴表示检测图片序号,纵轴表示推理耗时(单位:us):

61e00e3c-fffc-11ed-90ce-dac502259ad0.jpg

注:musl-ref 是指基于 MuslC 的 Openeuler Embedded 且不做任何加速,musl-acc 是指基于的 Openeuler Embedded 且使能 ArmNN 的指令加速和优化。

为了适配 openEuler Embedded 系统, Arm NN 软件需兼容 yocto-meta-openeuler,并在上做了很多准备工作,如 tensorflow 的适配,Compute Library 的适配,flatbuffers 的使用等。openEuler Embedded Arm NN 的构建代码位于 meta-openeuler/recipes-arm 层上,社区开发者可根据需要自行构建 ArmNN 软件。

Arm NN:融合主流神经网络框架,为用户提供高效的 AI 应用平台

Arm NN SDK 是一套开源 Linux 软件和工具,支持在高能效的设备上运行机器学习工作负载。它桥接了现有神经网络框架与高能效的 Arm Cortex CPUs、Arm Mali GPU 或 Arm 机器学习处理器。

61f802a8-fffc-11ed-90ce-dac502259ad0.jpg

Arm NN 填补了现有 NN 框架和底层 IP 之间的空白。它可以帮助 TensorFlow 和 Caffe 等现有神经网络框架实现高效转换,并在 Arm Cortex CPU 和 Arm Mali GPU 上高效运行,无需修改。

主要优势

更轻松地在嵌入式系统上运行 TensorFlow 和 Caffe;

Compute Library 内部的一流优化函数,让用户充分发挥底层平台的强大性能;

无论面向何种内核类型,编程模式都是相同的;

现有软件能够自动利用新硬件特性;

作为开源软件,能够相对简单地进行扩展,从而适应 Arm 合作伙伴的其他内核类型。

Arm NN 为 openEuler Embedded 系统带来人工智能的新活力

Arm NN 为 openEuler Embedded 提供全系统的神经网络优化方案,支持在高能效的设备上运行机器 学习工作负载。为了充分利用不同平台的软硬件特性,在 Linux 系统上提供 ARM CPU 上的神经网络加速能力,使用硬件指令加速库接口,使其面向目标硬件。目前,Arm NN 软件库在 openEuler Embedded 系统上的适配工作基本完成, RISC-V SIG 也将持续研发更多新功能,并移植最新的 openEuler Embedded 系统镜像。为了加快 openEuler Embedded 系统人工智能应用场景落地,我们诚邀感兴趣的朋友和测试志愿者加入并下载开发版镜像,共同探索并解决可能存在的问题,推动 openEuler 人工智能开发生态的繁荣发展!

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3563

    浏览量

    129204
  • 神经网络
    +关注

    关注

    42

    文章

    4762

    浏览量

    100518
  • openEuler
    +关注

    关注

    2

    文章

    308

    浏览量

    5827

原文标题:Arm NN 成功适配 openEuler Embedded,提供高性能神经网络推理能力

文章出处:【微信号:openEulercommunity,微信公众号:openEuler】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    CMSIS-NN神经网络内核助力微控制器效率提升

    自然会想到Arm Cortex-M系列处理器内核,那么如果您想要强化它的性能并且减少内存消耗,CMSIS-NN就是您最好的选择。基于CMSIS-NN内核的
    发表于 07-23 08:08

    针对Arm嵌入式设备优化的神经网络推理引擎

    专门针对Arm嵌入式设备优化的神经网络推理引擎Tengine + HCL,不同人群的量身定制
    发表于 01-15 08:00

    如何构建神经网络

    原文链接:http://tecdat.cn/?p=5725 神经网络是一种基于现有数据创建预测的计算系统。如何构建神经网络神经网络包括:输入层:根据现有数据获取输入的层隐藏层:使用反向传播优化输入变量权重的层,以提高模型的预测
    发表于 07-12 08:02

    可分离卷积神经网络在 Cortex-M 处理器上实现关键词识别

    更胜一筹。关键词识别神经网络管道由于要保持“永远在线”,KWS 应用的功耗预算受到很大限制。虽然 KWS 应用也可在专用 DSP 或高性能 CPU 上运行,但更适合在 Arm Cortex-M 微控制器
    发表于 07-26 09:46

    图像预处理和改进神经网络推理的简要介绍

    为提升识别准确率,采用改进神经网络,通过Mnist数据集进行训练。整体处理过程分为两步:图像预处理和改进神经网络推理。图像预处理主要根据图像的特征,将数据处理成规范的格式,而改进神经网络
    发表于 12-23 08:07

    充分利用Arm NN进行GPU推理

    的是要知道它提供的选项来提高推理性能。作为开发人员,您会寻找可以压缩的每一毫秒,尤其是在需要实现实时推理时。让我们看一下Arm NN中可用的
    发表于 04-11 17:33

    使用Streamline分析在Linux上运行的Arm NN机器学习应用程序

    讨论的示例是在 Arm 上运行 ML 推理的 Linux 应用程序。我们之前已经在 MNIST 数据集上训练了一个神经网络 来识别手写数字。使用 Arm
    发表于 08-11 15:46

    ARM Cortex-M系列芯片神经网络推理库CMSIS-NN详解

    1、ARM Cortex-M系列芯片神经网络推理库CMSIS-NN详解CMSIS-NN是用于ARM
    发表于 08-19 16:06

    在Linux上使用Arm NN分析和优化运行推理的机器学习应用程序的步骤

    的示例是在 Arm 上运行 ML 推理的 Linux 应用程序。我们之前已经在MNIST 数据集上训练了一个神经网络 来识别手写数字。使用Arm N
    发表于 09-27 14:24

    如何用PyArmNN加速树莓派上的ML推理

    本指南向您展示如何训练可以识别图像中的火焰的神经网络。的能力识别火灾意味着神经网络可以使火灾探测系统更加可靠和有效。本指南将向您展示如何使用Python应用程序编程接口(api)进行以下操作
    发表于 08-02 15:40

    用CMSIS-NN版本转换Arm Cortex-M的神经网络:r0p0指南

    2. 概览 本指南向您展示了如何将神经网络从任何框架转换成一个基于 Arm Cortex-M-M 装置的实施工具, 使用 Arm CMSIS- NN 库。 此教程用于不再支持的 CMS
    发表于 08-11 07:06

    构建ARM NN自定义后端插件21.08版教程

    Arm NNN是CPU、GPUs和NPUs的推论中继器。 Arm NNN能够弥合现有NN框架与基本IP之间的缺口。 Arm NN能够高效翻译
    发表于 08-22 07:27

    测量神经网络的抽象推理能力

    神经网络是否可以学习抽象推理,还是仅仅浅显地学习统计数据学习,是最近学术界辩论的主题。
    的头像 发表于 07-13 09:37 5146次阅读
    测量<b class='flag-5'>神经网络</b>的抽象<b class='flag-5'>推理</b><b class='flag-5'>能力</b>

    人工神经网络和bp神经网络的区别

    人工神经网络和bp神经网络的区别  人工神经网络(Artificial Neural Network, ANN)是一种模仿人脑神经元网络结构和功能的计算模型,也被称为
    的头像 发表于 08-22 16:45 4267次阅读

    具有小浮点的高性能神经网络

    电子发烧友网站提供《具有小浮点的高性能神经网络.pdf》资料免费下载
    发表于 09-13 17:07 0次下载
    具有小浮点的<b class='flag-5'>高性能</b><b class='flag-5'>神经网络</b>