Using the Abstract Computer Architecture Description Language to Model AI Hardware Accelerators

Mika Markus Müller,Alexander Richard Manfred Borst,Konstantin Lübeck,Alexander Louis-Ferdinand Jung,Oliver Bringmann
2024-01-31
Abstract:Artificial Intelligence (AI) has witnessed remarkable growth, particularly through the proliferation of Deep Neural Networks (DNNs). These powerful models drive technological advancements across various domains. However, to harness their potential in real-world applications, specialized hardware accelerators are essential. This demand has sparked a market for parameterizable AI hardware accelerators offered by different vendors.
Hardware Architecture,Artificial Intelligence
What problem does this paper attempt to address?
### Problems the paper attempts to solve This paper aims to address the complexity and challenges in selecting and evaluating AI hardware accelerators. With the rapid development of artificial intelligence technology, especially deep neural networks (DNN), the demand for high - performance and low - power - consumption hardware accelerators is increasing day by day. However, existing methods such as data sheets, spreadsheet calculations or black - box simulators can only provide rough performance indicators and cannot meet the needs of accurately evaluating and comparing different accelerator designs. Specifically, the paper proposes to use **Abstract Computer Architecture Description Language (ACADL)** to model AI hardware accelerators and map DNNs onto these accelerators through ACADL descriptions to infer performance characteristics. This method can accelerate the accelerator selection and design process and support hardware - aware neural architecture search (NAS) and DNN/hardware co - design. ### Main contributions 1. **Introducing ACADL**: The paper introduces the basic concepts and syntax of ACADL, which is a language for formalizing computer architecture block diagrams and can provide accurate performance inferences. 2. **Modeling examples**: It provides practical examples of how to use ACADL to model AI hardware accelerators, including from simple single - MAC accelerators to parameterized systolic arrays. 3. **DNN mapping**: It details how to map DNN operations onto AI hardware accelerators described by ACADL. 4. **Timing simulation semantics**: It explains the timing simulation semantics for inferring performance indicators from DNN mappings. ### Background and motivation - **The importance of AI hardware accelerators**: AI hardware accelerators far exceed traditional CPUs and general - purpose GPUs in terms of performance and energy efficiency and are crucial for DNN inference in practical applications. - **Limitations of existing methods**: Existing evaluation methods such as data sheets, spreadsheet calculations or black - box simulators can only provide rough performance indicators and cannot meet the needs of accurately evaluating and comparing different accelerator designs. - **Advantages of ACADL**: ACADL provides a formal method that can accurately model and evaluate the performance of AI hardware accelerators, support modeling at different abstraction levels, and is not dependent on proprietary software and complex tool flows. ### Related work - **ScaleSim**: Conducts DNN accelerator simulations based on rough accelerator templates. - **Timeloop**: Focuses on the memory hierarchy and supported data flows and provides a domain - specific language. - **DNN - Chip Predictor**: Proposes a domain - specific language for expressing how hardware accelerators calculate DNN layers. - **SimPyler**: Provides a Python - based method for combining hardware templates and embedding analysis models. - **HDPython**: A Python - based hardware description language that does not support analysis above the register - transfer level. - **IP - XACT**: Provides a standard for IP integration and verification in SoC design. ### ACADL overview ACADL is a behavioral architecture description language that ignores register - transfer and gate - level details and focuses on the operation timing semantics at the scalar, tensor, and fused tensor abstraction levels. ACADL consists of one virtual base class, 12 classes and two interfaces and supports an object - oriented modeling approach. ### Modeling examples 1. **Single - MAC Accelerator (OMA)**: This is a simple example showing how to model AI hardware accelerators at the scalar operation level. 2. **Parameterized Systolic Array**: It shows how to use ACADL to model more complex, parameter - dependent systolic array architectures. 3. **General - purpose Scalable Neural Network Accelerator (GONNA)**: Models AI hardware accelerators at the fused tensor operation level. ### Conclusion By using ACADL, researchers and engineers can more accurately describe and analyze AI hardware accelerators, thus making more informed design and selection decisions. This method not only improves the efficiency of evaluating and comparing different accelerator designs but also supports hardware - aware neural architecture search and DNN/hardware co - design.