Compiler-Driven Simulation of Reconfigurable Hardware Accelerators

被引:1
作者
Li, Zhijing [1 ]
Ye, Yuwei [1 ]
Neuendorffer, Stephen [2 ]
Sampson, Adrian [1 ]
机构
[1] Cornell Univ, Ithaca, NY 14853 USA
[2] Xilinx Inc, San Jose, CA USA
来源
2022 IEEE INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE (HPCA 2022) | 2022年
关键词
Programming Language; MLIR; Multi-level Abstractions; Simulation; Accelerators; Reconfigurable Hardware;
D O I
10.1109/HPCA53966.2022.00052
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
As customized accelerator design has become increasingly popular to keep up with the demand for high performance computing, it poses challenges for modern simulator design to adapt to such a large variety of accelerators. Existing simulators tend to two extremes: low-level and general approaches, such as RTL simulation, that can model any hardware but require substantial effort and long execution times; and higher-level application-specific models that can be much faster and easier to use but require one-off engineering effort. This work proposes a compiler-driven simulation workflow that can model configurable hardware accelerator. The key idea is to separate structure representation from simulation by developing an intermediate language that can flexibly represent a wide variety of hardware constructs. We design the Event Queue (EQueue) dialect of MLIR, a dialect that can model arbitrary hardware accelerators with explicit data movement and distributed event-based control; we also implement a generic simulation engine to model EQueue programs with hybrid MLIR dialects representing different abstraction levels. We demonstrate two case studies of EQueue-implemented accelerators: the systolic array of convolution and SIMD processors in a modern FPGA. In the former we show EQueue simulation is as accurate as a state-of-the-art simulator, while offering higher extensibility and lower iteration cost via compiler passes. In the latter we demonstrate our simulation flow can guide designer efficiently improve their design using visualizable simulation outputs.
引用
收藏
页码:619 / 632
页数:14
相关论文
共 43 条
  • [1] [Anonymous], TRAC EV PROF TOOL
  • [2] Lime: a Java']Java-Compatible and Synthesizable Language for Heterogeneous Architectures
    Auerbach, Joshua
    Bacon, David F.
    Cheng, Perry
    Rabbah, Rodric
    [J]. ACM SIGPLAN NOTICES, 2010, 45 (10) : 89 - 108
  • [3] Binkert Nathan, 2011, Computer Architecture News, V39, P1, DOI 10.1145/2024716.2024718
  • [4] Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks
    Chen, Yu-Hsin
    Krishna, Tushar
    Emer, Joel S.
    Sze, Vivienne
    [J]. IEEE JOURNAL OF SOLID-STATE CIRCUITS, 2017, 52 (01) : 127 - 138
  • [5] Choi J. W., 2010, PRINCIPLES PRACTICE
  • [6] Choi SB, 2019, INT SOC DESIGN CONF, P283, DOI [10.1109/ISOCC47750.2019.9027697, 10.1109/isocc47750.2019.9027697]
  • [7] Optimization and Performance Modeling of Stencil Computations on Modern Microprocessors
    Datta, Kaushik
    Kamil, Shoaib
    Williams, Samuel
    Oliker, Leonid
    Shalf, John
    Yelick, Katherine
    [J]. SIAM REVIEW, 2009, 51 (01) : 129 - 159
  • [8] Eldridge Schuyler, WORKSHOP OPENSOURCE
  • [9] Xilinx Adaptive Compute Acceleration Platform: Versal™ Architecture
    Gaide, Brian
    Gaitonde, Dinesh
    Ravishankar, Chirag
    Bauer, Trevor
    [J]. PROCEEDINGS OF THE 2019 ACM/SIGDA INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE GATE ARRAYS (FPGA'19), 2019, : 84 - 93
  • [10] Google, TRAC EV FORM