2021年嵌入式处理器报告指出:随着晶体管缩放的每瓦性能改变逐渐接近尾声,下一代处理器将如何为负载提供更具效率的计算能力?答案是通过异构SoC上的并行处理得出。
“我们一直致力于7纳米技术,在那段时间里,我们不仅看到了摩尔定律的终结,而且还看到了Amdahl定律和Dennard定律的终结。”赛灵思硅市场营销总监Manuel Uhm说:“这就是说,如果我们要做的仅仅是将FPGA从之前的节点16 nm缩小到7 nm,那么许多客户可能会尝试采用完全相同的设计,并且最终的设计可能不会提高性能,而且实际上还会增加功耗。”
“显然这是完全错误的方法。”
需要明确的是,将硅晶体管缩小到7 nm以下并不是没有可能。 5 nm器件已经在生产中。这是因为底层的运行速度没有加快,而且漏电流也在增加。
同时,从另一个方向来看,传统的多核设备已经达到了自己的扩展极限。当然,这些并行处理器在历史上一直是同类的,“事实是,没有一个处理器架构可以最佳地完成每个任务。” Uhm表示:“不是FPGA,不是CPU,也不是GPU。”
[图1.“没有任何一个处理器架构可以最佳地完成每个任务。不是FPGA,不是CPU,也不是GPU。”]
这并不是说并行处理在解决现代应用程序所呈现的复杂处理任务方面没有优势。实际上,除了摩尔定律和Dennard缩放比例之外,并行计算可能是我们在高性能计算(HPC)和其他苛刻用例中的最佳选择。
是的,我们仍然需要并行处理。但是种类繁多。
异构处理:不仅用于数据中心
如前所述,异构并行处理技术的前沿是对高端应用中性能壁垒的回应。但是这些架构在嵌入式计算环境中也变得越来越普遍。
VDC Research的高级分析师Dan Mandell指出:“的确,许多异构处理架构确实专注于高端应用,尤其是数据中心和HPC。FPGA SoC和其他异构加速芯片的小型化是重中之重。 Microsemi和Xilinx等公司希望将更多此类设备带入边缘/工业服务器和IoT网关等智能边缘基础架构中。”
Mandell认为,嵌入式市场中通用异构计算平台的主要驱动力“是OEM和当今其他人对致力于硬件体系结构的犹豫。这种犹豫是专业加速芯片快速发展的结果,以及未来几年边缘软件和AI生态系统将产生的框架和工作负载的不确定性。
他预计所有这些情况“将对未来的半导体采购产生重大影响”,以及芯片供应商如何制定处理器路线图。
Mandell认为:“当今大多数FPGA SoC的价格和功率范围将迫使供应商最初将重点放在相对高端,高资源的嵌入式和边缘应用上。但是,人们正在积极努力使FPGA SoC尺寸减少,以最终支持电池供电的连接设备。”
[图2 | Xilinx Versal VC1902是一款7 nm器件,包含Arm Cortex-A72和Cortex-R5F CPU内核,400个AI引擎,DSP块以及重要的可编程逻辑,所有这些都使用片上可编程网络集成在一起。
因此,随着异构并行处理变得越来越普遍,嵌入式工程师是否应该为系统设计的范式转变做好准备? Nvidia嵌入式与边缘计算副总裁兼总经理Deepu Talla并不这么认为。
“如果您考虑一下,嵌入式处理器一直都在使用加速器。”Talla说。“即使在20年前,也有一个Arm CPU,一个DSP,然后在特定的硬件上完成了视频编码/解码,对吗?从某种意义上说,它们是固定功能,但是它们都是并行处理的。”
他继续说:“您需要这样做的原因是成本,功率,尺寸。并行处理器的效率比CPU高出几个数量级。”
Nvidia的Xavier SoC(其Jetson Xavier嵌入式平台的核心设备)以及该公司的下一代Orin架构(将于2021年或2022年末推出)均配备GPU,Arm CPU,深度学习加速器,视觉加速器,编码器/解码器和其他专用处理模块(图3)。
[图3 | Nvidia Xavier SoC配备了基于Arm的Carmel CPU,Volta GPU,深度学习和视觉加速器以及其他可以并行处理工作负载的固定功能计算块。]
然而,随着高级异构SoC越来越普及,嵌入式开发人员可以期待的一个变化就是片上网络(NoC)互连的使用,该互连在过去十年中已经从传统的片上总线(如AMBA接口)发展而来。Talla说:“这提供了连接CPU,GPU,视频编码器,深度学习加速器,显示处理器,摄像头处理器,安全处理器以及所有这些东西的方式。”
NoC帮助加速和优化整个SoC之间的数据流,从而有助于最有效地执行工作负载。例如,恩智浦在其多功能i.MX SoC系列产品中同时利用了NoC和传统总线体系结构。最近,该公司宣布了i.MX9(图4)。
[图4 |恩智浦i.MX9系列将结合实时和应用处理器,专用EdgeLock加密处理器以及神经处理单元(NPU),以及其他计算模块。]
“异构计算是我们实际上已经实施了很多年的东西。我相信,现在正是我们真正开始使用它的时刻。” 恩智浦半导体公司边缘处理业务和技术战略主管Gowrishankar Chindalore博士表示,“在机器学习中也是如此,因为我们今天使用的是CPU,GPU,DSP和神经处理单元(NPU)。
“但这只是优化的一部分,不仅是计算元素,除了异构计算之外,我们着重提高效率的地方,还着眼于芯片划分流水线,避免视频流水线和图形流水线中的整个流程的浪费。”
他补充说:“因为我们能做到的越多,我们获得的性能就越高,显然,用于执行相同功能的精力也越少。”
走向异构世界
Mandell引用VDC Research的2020年IoT,嵌入式和移动处理器技术报告,预计嵌入式SoC的全球市场将“继续超越MPU,MCU,GPU等单一芯片的商业市场。在OEM寻求合并计算资源和多芯片实现的过程中,我们将在接下来的几年中实现这一目标。从长远来看,对工作负载加速和处理器优化的需求只会进一步推动这种趋势。”
同时,我们衡量性能和功耗的方式也必须改变。正如Linley Group的高级分析师Mike Demler在《深度学习处理器指南》中所说,即使是以AI为中心的新基准(例如TOPS / W)也“具有误导性,因为真正的AI工作负载永远无法达到100%的利用率。”
他说,我们将不得不通过“实际工作量,例如Bert NLP模型,而不是基于理论的,基于体系结构的规范”来衡量电源效率。
但是,不再单独测量处理器复杂度是否有意义?真的有关系吗?与往常一样,重点将放在系统上下文中所提供的内容上。
“在每个流程节点之前,就像‘噢,太棒了。我获得的性能是功耗的一半,那些日子已经一去不复返了。在7纳米时,晶体管漏电流开始急剧增加。您还会遇到其他类型的问题,我们认为这是无法克服的。”
“因此,意识到这一点后,我们现在正在研究系统级问题。我们将所有这些东西放在一起,并了解所有这些权衡取舍,并确保我们能够涵盖所有这些问题。尽可能多地进行处理,以使性能和功耗预算得到满足。这些不再是一件容易的事。我们意识到,我们将能够提供更高的性能或更低的功耗,不一定会同时两者兼得。”
“再次,没有处理器适合所有情况。您无法始终提高性能并降低功耗。” Uhm继续说道。 “但是专注于这种新的架构,即异构处理器,本质上可以使他们做到这一点。