第2章 边缘计算的硬件基础
随着云计算、大数据和人工智能技术的发展,未来和应用需要在边缘侧产生、分析、处理和存储海量的数据,这直接导致边缘计算迅速兴起。
边缘计算是在靠近物或数据源头的网络边缘侧,融合网络、计算、存储、应用核心能力的分布式开放平台,就近提供边缘智能服务,满足各个行业在实时业务、数据优化、应用智能、安全与隐私保护等方面的关键需求,因此边缘计算可以大大减轻集中式云计算的负担,将部分云计算中心的任务下沉到边缘端,补充云计算中心的算力需求,使整个网络的效率得到提升。
随着云游戏、VR/AR与自动驾驶等应用的兴起,以及物联网、5G、人工智能的爆炸式增长,应用场景越来越多样化,进而带来数据的多样性(如语音、文本、图片、视频等)及用户对应用体验要求的不断提高,这些都需要一个算力强劲、面向应用优化、弹性可扩展的异构计算平台。例如,计算密集型应用需要计算平台高速执行逻辑复杂的任务,数据密集型应用则需要高效、并发地完成海量数据的处理,而面向人工智能的应用则需要实时处理非结构化数据,这就使计算架构多样化成为迫切需求。除了需要不同能力的CPU来满足不同场景的算力需求,还需要GPU、NPU、FPGA、智能网卡、压缩和加解密等设备和技术来加速特定领域的算法和专用计算。此外,在各类边缘计算场景中,不同的计算任务对硬件资源的需求是不同的,从计算模式、并发处理的数据量、处理的数据类型等多方面考虑,仍然需要多种计算架构和加速设备的硬件支持。
在边缘智能场景中利用人工智能技术为边缘侧赋能是人工智能的一种应用与表现形式。一方面人工智能可以通过边缘节点获得更丰富的数据,并针对不同应用场景实现个性化和泛在化,极大地扩展人工智能的应用领域;另一方面,边缘节点可以借助人工智能技术更好地提供高级数据分析、场景感知、实时决策、自组织与协同等智能化服务。
边缘侧轻量级、低延迟、高效的人工智能计算框架尤为重要,如果人工智能模型的训练与推理全部在云端,则需要将海量数据从边缘节点实时上传至云端,从而带来实时性、可靠性、数据隐私保护及通信成本等方面的挑战。因此可以考虑将人工智能模型完全或部分下沉到边缘节点进行部署,但是如果在边缘节点中配备高端人工智能芯片,运行诸如DNN模型的计算密集型算法,则会耗费较多的资源,而且不是成本最优的边缘智能解决方案。
在综合考虑行业场景的核心需求(如实时分析与处理、节点自活、数据安全、远程部署与自动升级等)后,在带宽有限、计算资源有限的情况下,引入NPU(嵌入式神经网络处理器)加速设备有利于构建成本最优的边缘智能解决方案与服务。例如,把机器学习、深度学习相关的重载训练任务放在云端,而把需要快速响应的推理任务放在边缘处理,由NPU处理,从而达到计算成本和网络带宽成本的最佳平衡。
在CDN场景中,边缘计算需要具备灵活的视频转码、压缩和存储等功能。在视频监控场景中,边缘计算节点需要能够进行图像识别与视频分析,以便支撑边缘视频监控智能化。Cloud VR场景的大通量、低延迟特性对边缘计算节点的渲染计算、转码和缓存加速等的处理能力都有较大的需求。考虑到GPU在视频编解码和并行计算领域被广泛应用,以上需求都可以由GPU予以满足。
在工业现场中,工业系统的检测、控制、执行对实时性的要求很高,部分场景对实时性的要求甚至在10ms以内。在工业制造领域,单点故障在工业级应用场景中是绝对不能被接受的,因此除了云端的统一控制,制造现场的边缘计算节点必须能够及时检测异常情况并进行自主判断,进而解决问题,更好地实现预测性监控,在提升工厂运行效率的同时预防设备故障问题。这就对边缘计算提出了很高的实时性要求。
考虑到FPGA具有独立并行的硬件流水线,能够并行处理很多任务,实现并行度很高的硬件计算功能,在满足数据处理速度需求的同时满足实时性需求。此外FPGA具有灵活可编程、接口多样化等特点,这使得用户可以根据自身的业务需要实现特定的硬件逻辑,将以前需要CPU参与的运算卸载到FPGA上,释放宝贵的CPU算力,如基于FPGA的智能网卡,因此FPGA在边缘计算领域的应用越来越多。
边缘计算将计算从云端迁移到贴近用户的一端,直接对数据进行本地处理,然而,由于边缘设备直接获取的是用户数据,甚至可能包含大量的敏感隐私数据。例如,在电信运营商边缘计算场景下,边缘节点很容易收集甚至窥探到其他用户的位置信息、服务内容和使用频率等隐私数据。在工业边缘计算和物联网边缘计算场景下,相对于传统的云计算数据中心,边缘计算缺少有效的加密脱敏措施,一旦受到黑客攻击,其存储的诸如个人信息等私有数据将被泄露。因此数据加密和压缩成为边缘计算的刚需,同时,为了不占用边缘计算节点宝贵的计算资源,将这些与加密和压缩相关的运算卸载到专用硬件上就成了必然的选择,而QAT设备正好可以满足此类需求。
在车联网和自动驾驶场景中,高清地图数据和传感器接收到的环境信息数据会被导入计算平台,由不同的处理芯片进行运算,最后发出正确的指令,并进行正确的操作。然而,车辆的这一系列的操作都离不开大量的数据运算、海量的数据存储和数据的快速传输,而超高带宽和超大容量的存储系统正是这类场景所必需的。
本章将针对上述各种边缘计算场景所能用到的一些硬件设备及相关技术分别进行介绍。