Title :
A Compiler Back-End for Reconfigurable, Mixed-ISA Processors with Clustered Register Files
Author :
Stripf, Timo ; Koenig, Ralf ; Rieder, Patrick ; Becker, Juergen
Author_Institution :
Karlsruhe Inst. of Technol., Karlsruhe, Germany
Abstract :
Reconfigurable tile-based architectures can dynamically interconnect several tiles in order to establish processor instances with varying resource, performance, and energy characteristics at run time. These flexible processor instances offer a new degree of freedom for adapting to changing applications´ requirements while optimizing resource and energy consumption. Our solution for dynamic interconnection of tiles requires a flexible Run-Time Scalable Issue-Width (RSIW) Instruction Set Architecture (ISA) that changes dependent on the configuration. In order to enable high-level programmability of our architecture in C/C++ a novel compiler back-end is needed. In this paper we address this necessity by presenting a novel LLVM compiler back-end targeting the reconfigurable RSIW ISA and supporting mixed-ISA software development. RSIW is comparable to clustered-VLIW ISAs since it expresses parallel operations within the ISA and explicitly uses clustered register files. Therefore, we extended our architecture description language based RISC LLVM back-end by representations of parallel operations as well as compilation passes for clustering and scheduling of parallel operations as well as mixed-ISA code generation. Based on the novel back-end we compare the performance characteristics of several applications compiled for and simulated on different configurations. Additionally, we demonstrate resource-aware reconfiguration by a mixed-ISA application scenario.
Keywords :
C++ language; instruction sets; parallel processing; pattern clustering; program compilers; reconfigurable architectures; software engineering; specification languages; C-C++; LLVM compiler back-end; RSIW; architecture description language; clustered register files; clustered-VLIW ISA; mixed-ISA code generation; mixed-ISA software development; parallel operations; reconfigurable mixed-ISA processors; reconfigurable tile-based architectures; resource-aware reconfiguration; run-time scalable issue-width instruction set architecture; tile dynamic interconnection; Clustering algorithms; Computer architecture; Hazards; Reduced instruction set computing; Registers; Resource management; Mixed-ISA Compiler; clustered VLIW; dynamic reconfigurable architecture; low level virtual machine;
Conference_Titel :
Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International
Conference_Location :
Shanghai
Print_ISBN :
978-1-4673-0974-5
DOI :
10.1109/IPDPSW.2012.60