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

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

3天内不再提示

开发者如何为其特定嵌入式AI项目选择最佳的AI芯片

454398 来源:ST社区 作者:ST社区 2022-12-23 14:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

来源:ST社区

开发者和系统设计人员在为其嵌入式设计增加某种形式的神经网络深度学习功能时,有多个选择。以前,甚至是现在,设计人员成功地使用GPU和FGPA来满足了深度学习的内存密集型需求。现在,即便是传统的x86 CPU也已经进入了AI应用。

许多开发者发现现有的这些技术并不总是最合适的。因此,在过去几年中,许多初创公司(以及成熟的芯片开发商)开始专注于为AI应用设计和开发芯片。这些芯片是从头开始构建的,可以满足AI算法和运行应用的算力需求。

要知道,对SoC来说,IP模块是提供神经网络功能的另一种选择,但这是另一个话题了。在IP模块方面,主要供应商包括CadenceCevaNXP、Synopsys和VeriSilicon等。

但与所有技术一样,每种解决方案都有其优缺点。总而言之,设计人员需要根据自己特定的应用来选择最佳的技术。AI芯片通常分为三个关键应用领域:云端训练、云端推理和边缘推理。

训练方面的大拿是Nvidia的GPU,它已经成为训练机器学习算法的热门选择。训练过程要分析数万亿个数据样本,GPU的并行计算架构在这方面是一大优势。

云端推理可以构建许多AI应用的机器学习模型,这些任务需要密集的计算而无法部署在边缘设备上。FPGA类的处理器具有低延迟特点,并可执行计算密集型任务,在这些应用方面具有优势。但并非所有AI计算任务都可以在云端完成,无论成熟公司还是初创公司,很多芯片开发商都在开发自己的AI芯片,并为其处理器添加AI功能。

AI Processor Options: benefits and trade-Offs: AI处理器选择:优势和不足

CPUs: CPU

Universal availability in the cloud: 云端通用性好

Flexible across deep learning inference and all other cloud workloads: 深度学习推理与所有其他云端工作负载能连接灵活

Great software tools: 成熟的软件工具

Limitation: Not high enough performance for training: 不足:训练性能不高

GPUs: GPU

Very high performance on both deep learning inference and training: 深度学习训练和推理都表现出色

Wide availability in the cloud: 在云端适用性广

Flexible across deep learning and some other high-performance computing workloads: 深度学习与一些高性能计算负载连接灵活

Great software tools: 成熟的软件工具

Limitation: high power, high cost: 不足:功耗高,成本高

FPGAs: FPGA

High performance on deep learning inference and a few other DSP workloads: 在深度学习推理和一些DSP工作负载中性能优异

Some availability in the cloud: 可用于云端一些应用

Energy efficient: 能效高

Limitation: less mature software, not suited for training: 不足:缺少成熟的软件,不适合训练

AI Chips: AI芯片

Very high performance on deep learning inference and training (depending on chip) : 在深度学习训练和推理方面性能很高(取决于芯片)

Usually very energy efficient and cost effective: 通常能效高,成本低

Limitation: Only very early availability especially in cloud; software usually less mature; often applicable only to deep learning tasks: 不足:还处于早期阶段,特别是在云端;软件不成熟;通常只适用于深度学习任务

那么设计师在将脚踏入AI深水之前首先需要回答哪些问题?我与硅谷创业家兼技术专家Chris Rowen进行了交谈。做为BabbleLabs公司和Cognite Ventures的首席执行官,他列出了以下问题。

问题一:了解你的最终应用需求

对于任何设计,第一个问题应该都是:你的应用需求是什么?接下来是“我有一个需要完成的具体任务吗?”,有时这很清楚。Rowen表示, “如果我是一名系统设计师,要开发一个安全摄像头,我会非常关心芯片对视频流交叉部分的处理,包括对象检测、对象识别、对象跟踪等,清楚知道少数几个与最终应用特别相关的任务。”

下一个问题是,应用是在云端还是在边缘设备中运行。这将决定工程师需要考虑设计的方向和选择什么样的芯片。

“最终应用显然很重要,” Rowen说道。“如果在云端运行,问题将是,‘它是用于训练神经网络,还是在一个已经训练过的网络上仅用于推理?’。如果它在边缘运行,那么想要运行的特定应用集是什么?”

Rowen表示,大多数新的芯片都是为边缘视觉应用而设计的,这些芯片主要针对推理应用,以各种不同的形式进行成像或视频分析。音频,尤其是语音处理是越来越重要且快速增长的一个子类别。

所以,首先要确定是在云端还是边缘。若在云端,是训练还是推理?若在边缘,它是通用的(应用不确定)还是视觉处理,或其他专门的应用(比如语音处理)?

问题二:软件支持

软件工具也有助于区分不同的芯片。“如果它是一个训练芯片,它是否支持各种训练环境,包括TensorFlow、PyTorch和其它框架,因为应用和软件开发团队会使用许多重要的训练环境,”Rowen说道。他认为Nvidia是当今训练芯片的黄金标准和主导供应商。

“在推理方面,你怎么才能更好地将预先训练好的模型与芯片自身的特性一一对应。如果有像神经网络交换格式(NNEF)这样的标准,这个问题就很容易回答了。“NNEF是Khronos Group推广的一个标准,可以更容易地标准化映射工具。

“通常情况下,相对于将应用映射到其他新的处理引擎所涉及到的软件,这些神经网络的复杂性并不算高,”Rowen解释道。 “即使这些工具并不完美,人们通常也可以找到一种方法,使用不太复杂的工具将现有神经网络映射到视觉芯片、音频芯片,或者其它边缘处理芯片。”

无论软件是不是最关键的,设计人员都应该考虑硬件的价格、性能和功耗,这就带来了下一个问题。

问题三:内存要求

任何芯片选择都有一个长期存在的问题,那就是成本和性能。对于神经网络,这个问题就是芯片采用什么片上存储器,以及可以提供多大的存储器带宽?

“有些神经网络非常耗费内存,”Rowen说。 “当然,通常在云端进行的训练过程是内存密集型的,需要大量的片上内存和非常高的内存带宽。”

他补充说,视目标应用不同,推理过程通常占用的内存较少,可能也不需要太高的片外带宽。

这就带来了一个问题。区分一个芯片是通用,还是针对特定应用的一个指标,就是芯片设计人员是否集成了大量片上存储资源和片外存储器带宽。但是,如果设计人员不知道他们的目标应用是什么,可能就会在内存带宽方面过度配置,这就会大幅增加芯片成本。

“过度配置将增加成本,因此通用芯片几乎总是比专用芯片更昂贵,因为他们必须确保可以满足各种需求,”Rowen说。利弊权衡包括成本、功耗和物理尺寸等。

Rowen认为,如果设计人员可以稍微缩小需求范围,以便降低一些成本和功耗,系统级的性能可能会有大幅提升。“通用和专用[芯片]之间的差异可能高达一个数量级。”

问题四:性能------延迟与吞吐量

性能的最终定义是芯片可以多快地运行神经网络应用,这里的两个相关指标是吞吐量和延迟,要明确系统优化是针对增加吞吐量,还是针对减少延迟。

Rowen表示,在云端,重点通常是吞吐量,而延迟往往在实时边缘系统中非常重要。例如,如果你在为自动驾驶应用开发一款芯片,延迟更为重要,而且是一个关键的安全问题,他补充道。

“幸运的是,对于很多神经网络应用来说,所能达到的性能与芯片的乘积运算速度之间存在很强的相关性,”Rowen解释道。 “计算资源的利用率有一些变化,但在最简单的水平上,只要问‘在给定精度下每秒乘积-累加多少次’或‘每瓦多少次乘积-累加’,就可以大致知道该芯片的性能。”

一般来说,现在GPU是云端神经网络训练的主导力量,而普通x86处理器是云端推理的最常见平台,因为它在单个芯片上可以灵活地运行包括深度学习和传统软件在内的完整应用,Rowen表示。

在大多数情况下,边缘没有太多的训练工作要做。它主要针对视频或音频等特定用例进行推理。

Rowen为我们提供了一个粗略的评估,按照应用来划分芯片(来自初创公司和成熟企业)。 “有一种趋势是,针对云端的芯片更具通用性,而针对边缘的芯片更为专用。”

以下是一些AI增强型芯片和平台的简要介绍,展示了目前市场上从移动端到企业级应用的各种神经网络解决方案:

Gyrfalcon Lightspeeur AI芯片:

这是初创企业Gyrfalcon技术公司推出的超低功耗和高性能AI芯片。Lightspeeur 2801S智能矩阵处理器基于APiM架构,使用内存作为其AI处理单元。该公司宣称,“这个基于APiM架构的方案,有28000个并行神经计算核,真正支持片上并行与原位计算,不需要使用外部存储单元,成功克服了由存储器带宽而导致的性能瓶颈,在效率能耗比方面表现卓越,达到 9.3Tops/Watt,无论在训练模式还是推理模式下均可提供高密度计算性能。”

该公司声称其算术逻辑单元(ALU)的使用效率为77%,运行卷积神经网络(CNN)效率会更高。

Gyrfalcon提供交钥匙(Turnkey)参考设计,包括USB加密狗、多芯片线路板和系统开发套件。其目标应用包括移动边缘计算、基于AI的IoT,消费类便携设备、智能监控视频、AR/VR产品、人脸检测/识别、自然语言处理、支持深度学习的设备、AI数据中心服务器,以及自动驾驶等。

华为麒麟970

这是华为消费业务事业部的首个移动AI计算平台,采用专用神经处理单元(NPU),可将云端AI与本机AI处理有机结合。麒麟970包括一个八核CPU和新一代12核GPU。

“与四核Cortex-A73 CPU集群相比,麒麟970新的异构计算架构可实现高达25倍的性能提升,以及50倍的效率提高,”华为表示。这意味着该芯片组以更低的功耗,更快地提供相同的AI计算任务。基准图像识别测试表明,麒麟970每分钟可处理2,000张图像。

除了在自己的手机中使用新的AI芯片组外,华为还将移动AI定位为开放平台,为开发人员和合作伙伴提供技术。

英特尔Nervana神经网络处理器(NPP):

英特尔Nervana NNP专为深度学习而设计,没有标准的缓存层次结构,其片上存储器由软件管理。 “更好的内存管理使该芯片能够实现海量计算的高利用率,”英特尔宣称。 “这可以为深度学习模型提供更快的训练时间。”

除了新的存储器架构外,英特尔还开发了一种新的数字格式Flexpoint,它可以显著提高芯片的并行度,同时降低每次计算的功耗。英特尔表示,由于单个芯片的神经网络计算主要受功耗和内存带宽的限制,因此Flexpoint可为神经网络任务提供更高的吞吐量。英特尔这一新设计的目标是“获得高计算利用率并支持多芯片互连的真实模型并行性”。

英特尔Movidius VPU:

英特尔正在与微软合作,将微软Windows ML与英特尔的Movidius视觉处理单元(VPU)相结合来推动边缘AI推理。英特尔Movidius Myriad X VPU是一款专门用于加速边缘AI应用的芯片,它声称是业界首款具有专用神经计算引擎的系统级芯片解决方案,可用于边缘深度学习推理的硬件加速。 “这款第三代VPU可以高速和低功耗运行深度神经网络,以减轻其它硬件的特定AI处理负担,”英特尔表示。

英特尔还会针对通用机器学习和推理继续优化其Xeon可扩展处理器和数据中心加速器。

联发科技NeuroPilot AI平台:

NeuroPilot平台专为AI边缘计算而设计,可提供一系列的硬件和软件、AI处理单元和NeuroPilot软件开发套件(SDK)。它所支持的主流AI框架包括Google TensorFlow、Caffe、Amazon MXNet和Sony NNabla,并且在操作系统方面支持AndroidLinux

联发科技表示,该平台“使AI更接近芯片组级别,适用于边缘计算设备,即深度学习和智能决策需要更快完成的场景”,开创了一个从边缘到云端的AI计算方案混合体。

Nvidia Tesla V100 GPU:

与上一代产品相比,Nvidia的深度学习计算平台性能提升了10倍。全新的NVIDIA Tesla V100还将内存提升了一倍(到32 GB内存),以处理内存密集型的深度学习和高性能计算任务,此外还添加了一个名为NVIDIA NVSwitch的全新GPU互连结构。该公司表示,这可以使多达16个Tesla V100 GPU同时以每秒2.4太字节(TB)的速度进行通信,Nvidia还更新了软件堆栈。 Tesla V100 32GB GPU适用于整个NVIDIA DGX系统产品家族。

NPX面向边缘处理的机器学习(ML)环境:

为证明利用现有的CPU可以在边缘运行机器学习模型,NXP半导体公司推出了嵌入式AI环境,可让设计人员基于NXP的产品系列部署机器学习,从低成本微控制器到i.MX RT处理器,直到高性能应用处理器。NXP表示,ML环境提供了简便的交钥匙方案,可让设计人员选择正确的执行引擎(Arm Cortex内核或高性能GPU/DSP)和工具,以便在其上部署机器学习模型(包括神经网络)。

此外,NXP还表示,该环境包括一些免费软件,允许用户导入他们自己训练过的TensorFlow或Caffe模型,将它们转换为优化的推理引擎,并将它们部署在NXP从低成本的MCU到i.MX,以及Layerscape处理器解决方案上。

“在嵌入式应用中实施机器学习,一切都要平衡成本和最终用户体验,”恩智浦AI技术负责人Markus Levy在一份声明中表示。 “例如,许多人仍然感到惊讶,即使在低成本MCU上,他们也可以部署具有足够性能的推理引擎。另一方面,我们的高性能混合交叉和应用处理器具有足够的处理资源,可在许多客户应用中运行快速推理和训练。随着AI应用的扩大,我们将继续通过下一代专用机器学习加速器来推动这一领域的增长。”

NXP的EdgeScale套件提供了一套基于云的工具和服务,用于物联网和边缘计算设备的安全制造与注册。该解决方案为开发人员提供了一套安全机制,供他们在应用中利用主流的云计算框架,远程部署和管理无限数量的边缘设备。NXP的合作伙伴生态系统还包括ML工具、推理引擎,解决方案和设计服务等。

审核编辑 黄昊宇

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

    关注

    462

    文章

    53534

    浏览量

    459041
  • AI
    AI
    +关注

    关注

    89

    文章

    38090

    浏览量

    296536
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式和FPGA的区别

    的组成部分。理解它们的核心差异和各自优势,才能为项目选择最适合的技术方案,在性能、成本和开发效率之间找到最佳平衡点。 总结来说:嵌入式系统采用\"软件定义功能\"的方式,适合
    发表于 11-19 06:55

    Sigmstar-ssd2355-助力开发者AI产品

    星宸科技推出ComakePiD1 AIoT开发板,搭载SSD2355芯片,为开发者提供低功耗、高性能的端侧AI解决方案。该开发板配备4核A3
    的头像 发表于 08-20 16:43 788次阅读
    Sigmstar-ssd2355-助力<b class='flag-5'>开发者</b><b class='flag-5'>AI</b>产品

    飞凌嵌入式亮相第九届瑞芯微开发者大会:AIoT模型创新重做产品

    飞凌嵌入式受邀亮相第九届瑞芯微开发者大会核心展区,通过多款嵌入式主控产品与AI动态演示方案,全面展现在AIoT领域的技术沉淀与生态布局。
    的头像 发表于 07-18 10:30 3923次阅读
    飞凌<b class='flag-5'>嵌入式</b>亮相第九届瑞芯微<b class='flag-5'>开发者</b>大会:AIoT模型创新重做产品

    嵌入式AI技术漫谈 如何组建一个AI项目开发小组

    我们来谈一谈如何组建一个AI项目开发小组: 为什么要为嵌入式AI项目 组建一个专门的
    的头像 发表于 06-11 16:34 1052次阅读

    嵌入式开发,如何选择适合的系统?

    嵌入式ARM开发中,面对多种操作系统的选择,如何做出最适合项目的决策?本文将为您梳理常见系统的特性,帮助您快速了解它们的优缺点,以便更好地选择
    的头像 发表于 05-20 11:32 900次阅读
    <b class='flag-5'>嵌入式开发</b>,如何<b class='flag-5'>选择</b>适合的系统?

    首创开源架构,天玑AI开发套件让端侧AI模型接入得心应手

    模型库的限制,联发科还首发了开源弹性架构。区别于过往的开放接口,只能部署特定架构模型,开放弹性架构允许开发者直接调整平台源代码,无需等待芯片厂商的支持,即可完成目标或其他自研大模型轻松部署。让
    发表于 04-13 19:52

    Banana Pi 发布 BPI-AI2N &amp; BPI-AI2N Carrier,助力 AI 计算与嵌入式开发

    RZ/V2N——近期在嵌入式世界2025上新发布,为 AI 计算、嵌入式系统及工自动化提供强大支持。这款全新的计算平台旨在满足开发者和企业用户对高性能、低功耗和灵活扩展的需求。 [](
    发表于 03-19 17:54

    Banana Pi 发布 BPI-AI2N &amp; BPI-AI2N Carrier,助力 AI 计算与嵌入式开发

    ——近期在嵌入式世界2025上新发布,为 AI 计算、嵌入式系统及工自动化提供强大支持。这款全新的计算平台旨在满足开发者和企业用户对高性能、低功耗和灵活扩展的需求。
    的头像 发表于 03-19 17:53 1441次阅读
    Banana Pi 发布 BPI-<b class='flag-5'>AI</b>2N &amp; BPI-<b class='flag-5'>AI</b>2N Carrier,助力 <b class='flag-5'>AI</b> 计算与<b class='flag-5'>嵌入式开发</b>

    Banana Pi 与瑞萨电子携手共同推动开源创新:BPI-AI2N

    的理想选择。瑞萨电子作为全球领先的半导体解决方案提供商,在嵌入式处理器、工业控制和智能系统等领域具有深厚的技术积累。结合 Banana Pi 在开源生态和开发者社区的影响力,以及瑞萨电子在高性能计算
    发表于 03-12 09:43

    AI Agent 应用与项目实战》----- 学习如何开发视频应用

    开发一个视频内容生成Agent。 访问语聚AI平台官网 ,进行注册或登录。 在平台首页,了解语聚AI的功能和应用场景,特别是支持的视频生成相关的
    发表于 03-05 19:52

    AI来袭!嵌入式开发者该如何应对转型?

    AI正在改变世界!从自动驾驶到智能家居,从工业自动化到语音助手,各行各业都在朝着智能化方向迈进。对于嵌入式开发者来说,AI的到来既是一次前所未有的挑战,也是一个充满机遇的时代。过去,我们专注于硬件
    的头像 发表于 03-04 14:41 1375次阅读
    <b class='flag-5'>AI</b>来袭!<b class='flag-5'>嵌入式开发者</b>该如何应对转型?

    云端AI开发者工具的核心功能

    当今,云端AI开发者工具已成为推动科技创新与行业升级的重要力量。那么,云端AI开发者工具有哪些核心功能呢?下面,AI部落小编带您深入探讨。
    的头像 发表于 02-28 11:46 862次阅读

    Arm Cortex-A320 CPU助力嵌入式设备实现高能效AI计算

    ,要确定适合特定 AI 应用的处理器,系统开发者需要通过比较基于 Arm Cortex-A、Arm Cortex-M 和 Arm Ethos-U NPU 的设备及其可能的搭配进行决策。除了成本的考量,
    的头像 发表于 02-27 17:17 1145次阅读
    Arm Cortex-A320 CPU助力<b class='flag-5'>嵌入式</b>设备实现高能效<b class='flag-5'>AI</b>计算

    嵌入式开发新纪元:AI大模型助力乐鑫芯片高效编程

    芯片开发的有效途径。看看它们如何为乐鑫ESP32系列芯片开发赋能,实现从代码生成到调试优化全流程的效率飞跃!
    的头像 发表于 02-17 18:06 2277次阅读
    <b class='flag-5'>嵌入式开发</b>新纪元:<b class='flag-5'>AI</b>大模型助力乐鑫<b class='flag-5'>芯片</b>高效编程

    AI开发平台如何赋能开发者

    当下,AI开发平台通过提供丰富的工具集、优化的开发环境以及高效的部署能力,极大地降低了AI应用的开发门槛,加速了创新步伐。那么,
    的头像 发表于 01-17 14:47 720次阅读