OpenCL-based Virtual Prototyping and Simulation of Many-Accelerator Architectures

Heterogeneous architectures featuring multiple hardware accelerators have been proposed as a promising solution for meeting the ever-increasing performance and power requirements of embedded systems. However, the existence of numerous design parameters may result in different architectural schemes and thus in extra design effort. To address this issue, OpenCL-based frameworks have been recently utilized for FPGA programming, to enable the portability of a source code to multiple architectures. However, such OpenCL frameworks focus on RTL design, thus not enabling rapid prototyping and abstracted modeling of complex systems. Virtual Prototyping aims to overcome this problem by enabling the system modeling in higher abstraction levels. This article combines the benefits of OpenCL and Virtual Prototyping, by proposing an OpenCL-based prototyping framework for data-parallel many-accelerator systems, which (a) creates a SystemC Virtual Platform from OpenCL, (b) provides a co-simulation environment for the host and the Virtual Platform, (c) offers memory and interconnection models for parallel data processing, and (d) enables the system evaluation with alternative real number representations (e.g., fixed-point or 16-bit floating-point).

[1]  Jason Cong,et al.  CHARM: a composable heterogeneous accelerator-rich microprocessor , 2012, ISLPED '12.

[2]  Kostas Siozios,et al.  A virtual platform for exploring hierarchical interconnection for many-accelerator systems , 2015, 2015 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS).

[3]  Tomofumi Yuki,et al.  Toward scalable source level accuracy analysis for floating-point to fixed-point conversion , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[4]  Bijan Alizadeh,et al.  OptiFEX: A Framework for Exploring Area-Efficient Floating Point Expressions on FPGAs With Optimized Exponent/Mantissa Widths , 2017, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[5]  Vassilios A. Chouliaras,et al.  An OpenCL software compilation framework targeting an SoC-FPGA VLIW chip multiprocessor , 2016, J. Syst. Archit..

[6]  Dimitrios Soudris,et al.  Effective Platform-Level Exploration for Heterogeneous Multicores Exploiting Simulation-Induced Slacks , 2014, PARMA-DITAM '14.

[7]  Jason Cong,et al.  Architecture support for accelerator-rich CMPs , 2012, DAC Design Automation Conference 2012.

[8]  Dimitrios Soudris,et al.  An Integrated Exploration and Virtual Platform Framework for Many-Accelerator Heterogeneous Systems , 2016, TECS.

[9]  SioziosKostas,et al.  OpenCL-based Virtual Prototyping and Simulation of Many-Accelerator Architectures , 2018 .

[10]  Kevin Skadron,et al.  Rodinia: A benchmark suite for heterogeneous computing , 2009, 2009 IEEE International Symposium on Workload Characterization (IISWC).

[11]  Jürgen Becker,et al.  An OpenCL-based framework for rapid virtual prototyping of heterogeneous architectures , 2016, 2016 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation (SAMOS).

[12]  Alfonso Niño,et al.  A Survey of Parallel Programming Models and Tools in the Multi and Many-core Era , 2022 .

[13]  Jason Cong,et al.  Composable accelerator-rich microprocessor enhanced for adaptivity and longevity , 2013, International Symposium on Low Power Electronics and Design (ISLPED).

[14]  Jason Cong,et al.  On-chip interconnection network for accelerator-rich architectures , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).