End-to-End Synthesis of Dynamically Controlled Machine Learning Accelerators
Open Access
- 3 October 2022
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. PP (00189340) , 1-14
Abstract
Edge systems are required to autonomously make real-time decisions based on large quantities of input data under strict power, performance, area, and other constraints. Meeting these constraints is only possible by specializing systems through hardware accelerators purposefully built for machine learning and data analysis algorithms. However, data science evolves at a quick pace, and manual design of custom accelerators has high non-recurrent engineering costs: general solutions are needed to automatically and rapidly transition from the formulation of a new algorithm to the deployment of a dedicated hardware implementation. Our solution is the SOftware Defined Architectures (SODA) Synthesizer, an end-to-end, multi-level, modular, extensible compiler toolchain providing a direct path from machine learning tools to hardware. The SODA Synthesizer frontend is based on the multilevel intermediate representation (MLIR) framework; it ingests pre-trained machine learning models, identifies kernels suited for acceleration, performs high-level optimizations, and prepares them for hardware synthesis. In the backend, SODA leverages state-of-the-art high-level synthesis techniques to generate highly efficient accelerators, targeting both field programmable devices (FPGAs) and application-specific circuits (ASICs). In this paper, we describe how the SODA Synthesizer can also assemble the generated accelerators (based on the finite state machine with datapath model) in a custom system driven by a distributed controller, building a coarse-grained dataflow architecture that does not require a host processor to orchestrate parallel execution of multiple accelerators. We show the effectiveness of our approach by automatically generating ASIC accelerators for layers of popular deep neural networks (DNNs). Our high-level optimizations result in up to 74x speedup on isolated accelerators for individual DNN layers, and our dynamically scheduled architecture yields an additional 3x performance improvement when combining accelerators to handle streaming inputs.Keywords
This publication has 38 references indexed in Scilit:
- In-Datacenter Performance Analysis of a Tensor Processing Unit2017
- Plasticine2017
- TABLA: A unified template-based framework for accelerating statistical machine learning2016
- 14.5 Eyeriss: An energy-efficient reconfigurable accelerator for deep convolutional neural networks2016
- Function Proxies for Improved Resource Sharing in High Level Synthesis2015
- PuDianNao2015
- Abstract: Speeding-Up Memory Intensive Applications through Adaptive Hardware Accelerators2012
- Bluespec: A General-Purpose Approach to High-Level Synthesis Based on Parallel Atomic Transactions2008
- Hierarchical finite state machines with multiple concurrency modelsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 1999
- Automated Synthesis of Data Paths in Digital SystemsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 1986