Zur Seitenansicht
 

Titelaufnahme

Titel
Compiler-driven dynamic reconfiguration of architectural variants / Michael Hußmann
AutorHußmann, Michael In der Gemeinsamen Normdatei der DNB nachschlagen
Erschienen2008
HochschulschriftPaderborn, Univ., Diss., 2008
SpracheEnglisch
DokumenttypDissertation
URNurn:nbn:de:hbz:466-20080429027 Persistent Identifier (URN)
Dateien
Compiler-driven dynamic reconfiguration of architectural variants [4.8 mb]
abstract [48.03 kb]
abstract [46.96 kb]
Links
Nachweis
Klassifikation

Deutsch

Rekonfigurierbare Architekturen können die Funktionalität und Struktur ihrer Bausteine verändern. Die Programmierung erfolgt meist in Maschinensprache oder durch einen proprietären und oft nicht voll automatisierten Übersetzer. Diese Dissertation präsentiert einen Hardware/Software-Ansatz, bei dem eine übersetzergetriebene dynamische Rekonfiguration aus einer festen Menge von dem Übersetzer bekannten Modi auswählt. Diese Modi werden als Architektur-Varianten bezeichnet. Jede Variante basiert auf einer entsprechenden Programmanalyse-Technik und repräsentiert die beste Maschinenkonfiguration für einen bestimmten Anwendungsbereich. Zum Beispiel kann eine Maschine zwischen verschiedenen Parallelitätsparadigmen wie SIMD und MIMD umschalten. Für ein gegebenes Programm bestehend aus regulären und irregulären Strukturen kann der Übersetzer durch eine Analyse der Parallelität den besten Ausführungsmodus bestimmen. Eine Rekonfiguration der Verbindungen zwischen ALUs und Registerbänken erlaubt die Ausnutzung zusätzlicher physikalischer Register bei gleichbleibendem Instruktionsformat. In einem Multiprozessor können zusätzlich Register anderer Prozessoren temporär verwendet werden, um eine Auslagerung zu vermeiden. Weiter kann über solche Register effizient kommuniziert werden. Diese Dissertation konzentriert sich auf die Umschaltung zwischen SIMD/MIMD-Ausführung und die Rekonfiguration der Registerverbindungen. Beide Techniken werden anhand eines bestehenden Multiprozessors bewertet.

English

Reconfigurable computing systems can change the functionality and structure of their components to improve the resource efficiency. Many existing architectures must be programmed in assembly, or a compiler does not provide full automation. Usually, a compiler is customized to a specific reconfigurable system developed for a certain application domain. This thesis presents a unified hardware/software approach, where compiler-driven dynamic reconfiguration selects from a fixed set of modes known to the compiler. Such modes are denoted as reconfigurable architectural variants or briefly variants. Each variant relies on matching program analysis and represents optimal machine configurations for certain application domains. A prominent example is to reconfigure between different parallelization paradigms like SIMD or MIMD. Given a program that exhibits both regular and non-regular structures, the compiler can determine the best execution mode by analyzing the parallelism. Reconfiguring the connections between ALUs and register banks allows to exploit more physical registers than architecturally available. In a multi-core, a processor can use registers of other processors temporarily to avoid spilling or communicate efficiently employing some registers in a shared manner. This thesis concentrates on switching between SIMD and MIMD execution as well as reconfiguring register connections. Both opportunities have been evaluated using a multi-core of four-tightly coupled processors.