Ariel-ML:面向异构多核微控制器的嵌入式Rust神经网络计算并行化
Ariel-ML: Computing Parallelization with Embedded Rust for Neural Networks on Heterogeneous Multi-core Microcontrollers
AI总结:
针对多核MCU上TinyML推理的并行化需求,提出基于嵌入式Rust的Ariel-ML工具包,通过通用TinyML流水线和多核支持,在多种32位MCU上实现低延迟推理,并保持与C/C++相当的内存占用。
摘要:
低功耗微控制器(MCU)硬件正从单核架构向多核架构演进。同时,新的嵌入式软件构建块越来越多地用Rust编写,而C/C++在该领域的主导地位逐渐减弱。另一方面,各种小型人工神经网络(ANN)越来越多地部署在边缘AI用例中,直接在低功耗MCU上执行。在此背景下,增量改进和新颖创新服务需要不断通过已在现场部署的传感/执行系统上的嵌入式软件执行ANN来改造。然而,目前尚无能够自动并行化多核MCU上任意TinyML模型推理计算的Rust嵌入式软件平台。本文通过引入Ariel-ML填补了这一空白,这是一个新颖的工具包,结合了通用TinyML流水线和嵌入式Rust软件平台,能够充分利用各种32位微控制器系列(Arm Cortex-M、RISC-V、ESP-32)的多核能力。我们发布了其实现的完整开源代码,并使用多种TinyML模型对其性能进行了基准测试。结果表明,Ariel-ML在推理延迟方面优于现有技术,并且与使用嵌入式C/C++的现有工具包相比,实现了相当的内存占用。因此,Ariel-ML为TinyML从业者和资源受限的嵌入式Rust开发者提供了有用的基础。
英文摘要:
Low-power microcontroller (MCU) hardware is currently evolving from single-core architectures to predominantly multi-core architectures. In parallel, new embedded software building blocks are more and more written in Rust, while C/C++ dominance fades in this domain. On the other hand, small artificial neural networks (ANN) of various kinds are increasingly deployed in edge AI use cases, thus deployed and executed directly on low-power MCUs. In this context, both incremental improvements and novel innovative services will have to be continuously retrofitted using ANNs execution in software embedded on sensing/actuating systems already deployed in the field. However, there was so far no Rust embedded software platform automating parallelization for inference computation on multi-core MCUs executing arbitrary TinyML models. This paper thus fills this gap by introducing Ariel-ML, a novel toolkit we designed combining a generic TinyML pipeline and an embedded Rust software platform which can take full advantage of multi-core capabilities of various 32bit microcontroller families (Arm Cortex-M, RISC-V, ESP-32). We published the full open source code of its implementation, which we used to benchmark its capabilities using a zoo of various TinyML models. We show that Ariel-ML outperforms prior art in terms of inference latency as expected, and we show that, compared to pre-existing toolkits using embedded C/C++, Ariel-ML achieves comparable memory footprints. Ariel-ML thus provides a useful basis for TinyML practitioners and resource-constrained embedded Rust developers.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。