A General Pattern-Based Dynamic Compilation Framework for Coarse-Grained Reconfigurable Architectures

Compilation has become a major challenge to the usability of coarse-grained reconfigurable architectures as increasing programmable resources must be orchestrated. Static compilation is insufficient for prohibitive time cost while dynamic compilation still performs poorly in both generality and efficiency. This paper proposes a general pattern-based dynamic compilation framework, which utilizes statically-generated patterns to straightforwardly determine runtime re-placement and routing so that runtime configuration creation algorithm has low complexity. Domain-specific communication characteristics are harnessed to help improve the efficiency of patterns. The experimental results show that compiled general applications can be transformed onto arbitrary resources at runtime, reserving $97 \%(39 \% \sim 163 \%)$ of the original performance/resource on average, $7 \%(0 \sim 17 \%)$ better than the state-of-the-art non-general methods.CCS CONCEPTS• Computer systems organization $\rightarrow$ Reconfigurable computing; • Hardware $\rightarrow$ Hardware description languages and compilation.

[1]  Rudy Lauwereins,et al.  DRESC: a retargetable compiler for coarse-grained reconfigurable architectures , 2002, 2002 IEEE International Conference on Field-Programmable Technology, 2002. (FPT). Proceedings..

[2]  Aviral Shrivastava,et al.  REGIMap: Register-aware application mapping on Coarse-Grained Reconfigurable Architectures (CGRAs) , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[3]  Reiner W. Hartenstein,et al.  Mapping Applications onto Reconfigurable Kress Arrays , 1999, FPL.

[4]  Feng Liu,et al.  DynaSpAM: Dynamic spatial architecture mapping using Out of Order instruction schedules , 2015, 2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA).

[5]  Scott A. Mahlke,et al.  Polymorphic Pipeline Array: A flexible multicore accelerator with virtualized execution for mobile multimedia applications , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[6]  Rudy Lauwereins,et al.  ADRES: An Architecture with Tightly Coupled VLIW Processor and Coarse-Grained Reconfigurable Matrix , 2003, FPL.

[7]  Antonia Zhai,et al.  Triggered instructions: a control paradigm for spatially-programmed architectures , 2013, ISCA.

[8]  Natalie Parde,et al.  Data-Driven Mapping Using Local Patterns , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Fadi J. Kurdahi,et al.  MorphoSys: An Integrated Reconfigurable System for Data-Parallel and Computation-Intensive Applications , 2000, IEEE Trans. Computers.

[10]  Aviral Shrivastava,et al.  EPIMap: Using Epimorphism to map applications on CGRAs , 2012, DAC Design Automation Conference 2012.

[11]  Mario Konijnenburg,et al.  ULP-SRP: Ultra low power Samsung Reconfigurable Processor for biomedical applications , 2012, 2012 International Conference on Field-Programmable Technology.

[12]  Aviral Shrivastava,et al.  A Software Scheme for Multithreading on CGRAs , 2015, ACM Trans. Embed. Comput. Syst..

[13]  Tony Nowatzki,et al.  Software transparent dynamic binary translation for coarse-grain reconfigurable architectures , 2016, 2016 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[14]  Chen Yang,et al.  HReA: An Energy-Efficient Embedded Dynamically Reconfigurable Fabric for 13-Dwarfs Processing , 2018, IEEE Transactions on Circuits and Systems II: Express Briefs.