如何构建和部署边缘计算SoC?边缘计算中的 AI 如何驱动 5G 和 IoT ?
2020-11-25
来源:EETOP
边缘计算是指对位于应用附近的服务器中的数据进行处理和分析。这一概念日益普及,并为成熟的电信提供商、半导体初创公司和新的软件生态系统打开了新的市场。在过去的几十年里,物联网产生了海量的数据。以大数据为起点,通过边缘计算的科技融合,使得物联网这一领域得以全新开启,从咖啡杯到药丸分配器、从炼油厂到造纸厂、从智能护目镜到手表,为消费者带来了无限的全新价值。
然而许多人认为,物联网在市场中并未发生预期的曲棍球棒效应。除了特定的利基市场,IoT 的连通性并没有带来足够的消费者价值。但在过去 5 年里,人工智能 (AI) 的技术进步已开始彻底改变各行各业,并改变连接能为消费者带来多少价值的潜能。这是一个非常令人振奋的时期,因为市场可以看到大数据、IoT 和 AI 的组合带来无限的潜力。不过我们才刚刚踏上这段漫长的旅程,有助于利用这种结合的一项最初进展,是边缘计算的概念及其对未来技术路线图的影响。
边缘计算的概念可能不是革命性的,但其实现将是革命性的。这些实现将解决许多日益严重的问题,包括降低大型数据中心的能耗,提高专用数据的安全性,实现故障安全解决方案,降低信息存储量和通信成本,以及通过降低延迟能力来开创新应用。
然而什么是边缘计算?如何使用边缘计算,以及它能为网络带来什么好处?要了解边缘计算,我们需要了解推动其发展的因素,它的应用类型,以及如何构建和部署边缘计算 SoC。
1 边缘计算,边缘云,雾计算,企业版
边缘计算有很多术语,如“边缘云计算”、“雾计算”等,它通常被描述为,在本地服务器上运行的应用,旨在将云进程移近终端设备。
传统的“企业计算”使用方式与边缘计算类似,但更倾向于准确地描述网络功能,而不一定描述计算的位置。Cisco 创造的雾计算与边缘计算基本相同,尽管有许多人将雾计算定义为位于边缘计算空间之上或之下的计算,甚至作为边缘计算的一个子集来描述雾计算。不过作为参考,端点设备和端点通常被称为“边缘设备”,以免与边缘计算相混淆,并且这种划分对于我们的讨论很重要。边缘计算可以采用多种形式,包括小型聚合器、本地服务器或微型数据中心。 微型数据中心可以按区域分布在永久性甚或可移动的存储容器中,这些存储容器可以捆绑安装在 18 轮卡车上。
2 边缘计算的价值
传统方式中,物联网系统从传感器、摄像头、麦克风,以及一系列不同的 IoT 终端和移动设备上收集数据,并将数据发送到集中式数据中心或云。
据预测,到 2020 年,全世界会有超过 500 亿台智能设备实现连接。这些设备每年将产生以泽字节 (ZB) 计算的数据,到 2025 年将增长到 150 ZB 以上。互联网的骨干网旨在可靠地将设备彼此连接并与云连接,从而有助于确保数据包到达目的地。但是,将所有这些数据发送到云端会带来一些重大问题。
首先,150ZB 的数据会造成容量问题。其次,就能源、带宽和计算能力而言,将大量数据从其原始位置传输到集中式数据中心代价高昂。据估计,目前只有 12% 的数据获得其持有公司执行分析,而且只有 3% 的数据有助于产生有意义的结果(对于我们“环境数学家”来说,有 97% 的数据在收集和传输之后,就被浪费了)。这些数据清楚地概括了需要处理的业务效率问题。第三,存储、传输和分析数据能耗巨大,显然需要找到一种有效的方法来降低成本和浪费。
引入边缘计算,可以在本地存储数据,从而降低传输成本。不过消除数据浪费需要有效率的技术,目前最主要的方法都寄希望于 AI 功能。因此,所有应用中的大多数本地服务器都增加了 AI 功能,现在正在安装的主要基础设施是新型的低功耗边缘计算服务器 CPU,它们以 GPU 和 ASIC 或一系列芯片的形式连接到 AI 加速 SoC。
除了解决容量、能源和成本问题外,边缘计算还可以提高网络可靠性,因为应用可以在发生普遍的网络中断期间继续运行。通过清除某些威胁配置文件(例如全局数据中心拒绝服务 (DoS) 攻击),可以提高安全性。
最后,边缘计算还有一个很重要的功能,即能够为实时用例(例如虚拟现实商场和移动设备视频缓存)提供低延迟的能力。缩减延迟将产生新的服务,使设备能够在自动驾驶汽车、游戏平台或具有挑战性的快节奏制造环境中提供许多创新应用。
Michael Clegg | IoT 和嵌入式设备副总裁兼总经理 Supermicro 表示:
“在边缘处理传入的数据后,就会减少需要发送到云再返回的数据量。这也大大减少了处理延迟。一个很好的类比就是一家大众披萨餐厅,它通常会在其他地区开设小型分支机构,因为在主要营业地点烤制的披萨在送往远方客户的路上会变冷。”
3 推动拓展应用的边缘计算
5G 基础架构是边缘计算最具说服力的驱动力之一。5G 电信提供商发现了在其基础架构之上提供服务的机会。除了传统的数据和语音连接之外,5G 电信提供商还在构建生态系统,以托管独特的本地应用。通过将服务器置于所有基站旁边,蜂窝流量提供商可以向第三方主机应用开放其网络,从而改善带宽和延迟。
Netflix 等流媒体服务通过其 Netflix Open Connect 计划,已经与本地 ISP 合作多年,以将高流量内容托管在距离用户更近的地方。借助 5G 的多接取边缘计算 (MEC) 计划,电信提供商发现了为流内容、游戏和未来的新应用提供类似服务的机会。电信提供商认为,他们可以以付费服务的方式,向所有人开放此功能,让需要较低延迟的任何人都可以为在边缘而非在云中定位应用支付额外的费用。
Credence Research 认为,到 2026 年,整个边缘计算市场的价值将为 96 亿美元左右。相比之下,Research and Markets 分析认为,移动边缘计算市场将从今天的几亿美元增长到 2026 年的超过 27.7 亿美元。尽管电信行业是最具声望且可能是发展最快的增长动力,但是据估计,它们仅会占据边缘计算市场总量的三分之一。这是因为 web scale、工业和企业集团也将为其传统市场提供边缘计算硬件、软件和服务,期望边缘计算也将开创新的应用机遇。
大众快餐店正朝着更加自动化的厨房发展,以确保食品质量,减少员工培训,提高运营效率并确保客户体验达到预期。Chick-fil-A 是一家连锁快餐企业,它成功地使用了本地服务器,将数百个传感器和控制器与相对便宜的本地设备聚合在一起。这些本地设备在本地运行,以防止任何网络中断。2018 年, Chick-Fil-A 在博客上对此作了概括,宣称:“通过提高厨房设备智能化,我们能够收集更多数据。通过在我们的餐厅应用数据,可以构建更多智能系统。通过构建更多智能系统,我们能够进一步拓展业务。” 这篇博客进一步概述,在边缘计算的帮助下,许多餐厅现在可以处理的业务量相当于最初计划的三倍。
总体而言,成功的边缘计算基础架构需要结合本地服务器计算功能、AI 计算功能以及与移动/汽车/IoT 计算系统的连接(图 1)。
图 1:边缘计算通过使用微数据中心来分析和处理数据,从而使云计算过程更靠近终端设备。
CompTIA 首席技术推广人James Stanger 博士认为:
“随着物联网 (IoT) 连接越来越多的设备,网络正在从主要在高速公路和中央位置之间往返输送,过渡到类似于互连、中间存储和处理设备组成的蜘蛛网状态。边缘计算是一种在生成数据的客户端附近而不是在集中式数据处理仓库中捕获、存储、处理和分析数据的做法。因此,数据存储在网络”边缘“的中间点,而不是始终存储在中央服务器或数据中心。”
4 边缘计算用例——Microsoft HoloLens
为了解使用边缘计算带来的延迟改善优势,罗格斯大学和 Inria 使用 Microsoft HoloLens 分析了边缘计算(或称“边缘云”)的可扩展性和性能。
在用例中,HoloLens 读取条形码扫描仪,然后使用建筑物中的场景分割功能将用户导航到指定房间,并在 Hololens 上显示箭头。该过程同时使用了映射坐标的小数据包和连续视频的较大数据包,以验证边缘计算相比传统云计算带来的延迟改善。HoloLens 最初读取二维码,然后将映射坐标数据发送到边缘服务器。该服务器使用了 4 个字节加上标头,花费了 1.2 毫秒 (ms)。服务器找到坐标,并通知用户该位置,总共耗时 16.22 ms。如果将同样的数据包发送到云,则大约需要 80 ms(图 2)。
图 2:比较边缘设备到云服务器与边缘设备到边缘云服务器的延迟。
同样,他们测试了在使用 OpenCV 进行场景分割以将 Hololens 的用户导航到适当位置时的延迟。HoloLens 以 30 fps 的速度流传输视频,并在边缘计算服务器中以 3.33 GHz 的频率在配备 15GB RAM 的 Intel i7 CPU 上处理图像。将数据流传输到边缘计算服务器需要 4.9 ms,处理 OpenCV 图像额外花费了 37 ms,总计 47.7 ms。云服务器上的相同过程花费了将近 115 ms,清楚显示了边缘计算降低延迟的明显优势。
虽然该案例研究显示了边缘计算在降低延迟方面的显著优势,但是有太多新技术可以在将来更好地实现低延迟。5G 概述了当今延迟少于 1ms 的用例(图 3),而 6G 已经在讨论将其降低到 10 微秒 (?s) 的问题。5G 和 Wi-Fi 6 会增加连接带宽。5G 打算将带宽提高到 10Gbps,而 Wi-Fi 6 已经支持 2Gbps 带宽。AI 加速器声称场景分割的时间少于 20?s,这与上述示例技术论文中引用的 Intel i7 CPU 在大约 20ms 内处理每个帧的速度相比,有了显著进步。
图 3:与图 2 中 10s 和 100s 的 Msps 相比,从 Hololens 到路由器以及从路由器到边缘服务器的带宽改善高达 10Gbps,另有 AI 处理的改进(从 20ms 改善到 20us),往返延迟 < 1ms。
显然,如果边缘计算表现出比云计算更具优势,那么将计算全都转移到边缘设备中不是最好的解决方案吗?然而事实是,目前并不是所有的应用程序都是如此(图 4)。在 HoloLens 案例研究中,数据使用的 SQL 数据库太大,无法存储在耳机中。今天的边缘设备,特别是发生物理磨损的设备,没有足够的计算能力来处理大型数据集。除了计算能力之外,云或边缘服务器上的软件比边缘设备上的软件开发成本更低,因为云/边缘软件不需要压缩到更小的内存资源和计算资源中。
图 4:比较云计算和边缘计算与端点设备。
由于某些应用程序可以根据我们基础架构不同位置的计算能力、存储能力、存储器可用性和延迟能力来合理地运行,因此无论是在云中、在边缘服务器还是在边缘设备中,都有一种趋势来支持未来的混合计算能力(图 5)。边缘计算是全球混合计算基础架构的初步建立。
图 5:安装在 Hololens、边缘服务器和云中的 AI,使混合计算架构能够根据应用需求优化计算、存储器和存储资源。
5 了解边缘计算各部分
边缘计算是指位置比云更靠近应用的运算。但是,这是 300 英里,3 英里还是 300 英尺?在计算领域,云在理论上具有无限的内存和无限的计算能力。在设备上,理论上只需有足够的计算和内存资源可以捕获数据并将其发送到云即可。两种理论均与事实稍有不符,但我们可以将其用作描述边缘计算不同水平的方法。理论上,云计算资源越来越靠近端点设备或应用,因而存储、内存和计算资源就会越来越少。这些资源消耗的功率也随之降低了。靠近的好处不仅是可以降低功耗,而且可以降低延迟并提高效率。
在该空间中开始出现三种基本的边缘计算架构(图 6)。首先,最接近传统数据中心的是区域数据中心,这些数据中心是战略性放置的云计算服务器群的微型版本,旨在减少延迟,同时却维护所需的计算、存储和内存。许多企业和初创公司都在解决这个问题,但是专门为解决区域数据中心而设计的 SoC,与当今着重解决高性能计算 (HPC) 的传统云计算解决方案几乎没有什么区别。
本地服务器和内部服务器(第二个边缘计算部分),是许多 SoC 解决方案用于解决边缘计算的功耗和连接性需求的地方。如今,软件也有大规模的商业化开发,尤其是采用了更灵活的平台,能够支持 Dockers 和 Kubernetes 之类的容器。前文描述的 Chick-Fil-A 示例就使用了 Kubernetes。对于半导体厂商而言,内部服务器部分中最有趣的部分是在服务器 SoC 附近引入一种芯片组来处理所需的 AI 加速。显然,传统的 AI 加速器位于云计算场中,而略有不同的一类用于边缘服务器 的AI 加速器已经被构建出来,因为这是市场有望增长的地方,并且有机会在这一有前途的领域立足。
边缘计算的第三部分包括旨在执行有限功能的聚合器和网关,它们可能仅以最小的延迟和最低的功耗运行一个或几个应用。
这三个部分中的每一个都已定义为支持实际应用。例如,麦肯锡在边缘计算分析中已经确定了 107 个用例。ETSI 通过其分组规范 MES 002 v.2.1.1 ,为 5G MEC 定义了超过 35 个用例,包括游戏、服务级别协议、视频缓存、虚拟现实、流量重复数据删除等。这些应用中的每一个都有一些预定义的延迟要求,具体取决于边缘服务器在基础架构中可能存在的位置。OpenStack Foundation 是另一个将边缘计算纳入其工作的组织,期望改善端局重构为数据中心 (Central Office ReArchitected as a Data Center, CORD) 延迟,分布在整个网络中的传统电信端局现在负责托管边缘云服务器。
5G 市场期望实现从边缘设备到边缘服务器再回到边缘设备,往返时间延迟低至 1ms 的用例。实现这一目标的唯一方法是通过本地网关或聚合器,因为到达云全程通常需要 100 ms。2019 年秋天推出的 6G 计划宣布了 10s ?S 延迟的目标。
每个边缘计算系统都支持类似的 SoC 架构,其中包括一个网络 SoC、一些存储、一个服务器 SoC,以及现在的一个 AI 加速器或 AI 加速器阵列。每种类型的系统都有自己的延迟、功耗和性能水平。这些系统的一般准则在图6 中进行了描述。市场在变化,这些数字可能会随着技术的进步而迅速变化。
图 6:比较边缘计算的三种主要 SoC 架构:区域数据中心/边缘云;内部服务器/本地服务器;和聚合器/网关/接入口。
6 边缘计算对服务器系统 SoC 有何影响?
许多边缘计算应用的主要目标是围绕与较低延迟相关的新服务。为了支持较低的延迟,许多新系统都采用了一些最新的行业接口标准,包括 PCIe 5.0、LPDDR5、DDR5、HBM2e、USB 3.2、CXL、以及基于 PCIe 的 NVMe 和其它基于新一代标准的技术。与上一代产品相比,这些技术中的每一种都通过带宽改进来降低延迟。
比减少延迟的驱动因素更为突出的是为所有这些边缘计算系统增加了 AI 加速。某些服务器芯片通过 x86 扩展AVX-512 向量神经网络指令 (AVX512 VNNI) 等新指令提供 AI 加速。很多时候,这种额外的指令集不足以提供预期任务所需的低延迟和低功耗实现,所以大多数新系统中还添加了自定义 AI 加速器。这些芯片所需的连接性通常采用带宽最高的主机来实现加速器连接。例如,由于这些带宽要求直接影响延迟,因此 PCIe 5.0 的使用正在迅速扩展,最常见的情况是在具有多个 AI 加速器的某种交换配置中。
CXL 是另一种为降低延迟并提供缓存一致性而专门开发的接口。由于 AI 算法具有异构计算需求和广泛的内存需求,因此务必要确保缓存一致性。
除了本地网关和聚合服务器系统之外,单个 AI 加速器通常无法提供足够的性能,所以需要借助带宽非常高的芯片到芯片 SerDes PHY 扩展这些加速器。最新发布的 PHY 支持 56G 和 112G 连接。支持 AI 扩展的芯片到芯片要求已经完成多种实现。在基于标准的实现中,以太网可能是一种可扩展的选项,现在已经有一些基于这种理念的解决方案。但是,当今许多实现都是通过专有控制器来利用最高带宽的 SerDes。不同的体系结构可能会改变服务器系统的未来 SoC 体系结构,从而将网络、服务器、AI 和存储组件合并到集成度更高的 SoC 中,而不是目前正在实现的 4 种不同的 SoC 中。
图 7:常见服务器 SoC 位于边缘,根据任务数量、功率、延迟和其他需求,具有不同的处理器数量、以太网吞吐量和存储能力。
AI 算法正在突破内存带宽要求的极限。例如,最新的 BERT 和 GPT-2 型号分别需要 345M 和 1.5B 参数。显然,不仅需要高容量的内存能力来支持这些需求,还需把许多复杂的应用放在边缘云中执行。为了支持实现这种能力,设计人员正在新的芯片组中采用 DDR5。除了容量挑战之外,还需要存取 AI 算法的系数,以进行非线性序列中并行执行的大量多次累加计算。因此,HBM2e 成为迅速获得采用的一种最新技术,有些芯片实现了单芯片中的数次 HBM2e 实例化。
图 8:通用 AI SoC 具有高速、高带宽、内存、主机到加速器,以及高速芯片到芯片接口,用于扩展多个 AI 加速器。
7 不断变化的目标与边缘计算的划分
如果我们仔细研究边缘计算的不同类型需求,就会发现区域数据中心、本地服务器和聚合网关具有不同的计算、延迟和功率需求。未来的需求显然集中在降低往返响应的延迟,降低特定边缘应用的功率,以及确保有足够的处理能力来处理特定任务上。
服务器 SoC 消耗的功率因等待时间和处理要求而异。新一代解决方案不仅将具有更低的延迟和更低的功耗,而且还将纳入 AI 功能,也就是 AI 加速器。这些 AI 加速器的性能也会根据这些需求的扩展而变化。
但是很明显,AI 和边缘计算的需求正在迅速变化,我们今天看到的许多解决方案在过去两年中已多次取得了进步,并将继续加以改进。现在的性能可以分类,但数量会不断变化,从而提高性能、降低功耗并降低总体延迟。
图 9:新一代服务器 SoC 再加上 AI 加速器,将加快边缘计算速度。
8 结语
边缘计算是实现更快连接性的一项非常重要的技术。它将使云服务更靠近边缘设备,并将有效降低延迟,为消费者提供新的应用和服务。此外,它还将衍生更多 AI 功能,将其扩展到云以外。边缘计算是未来混合计算的基础技术。在混合计算中,可以根据延迟需求、功率需求以及总体存储和性能需求,在本地、云中或设备上实时做出决策。