Detailseite
Architektur und Compiler des High-Performance Reconfigurable Processor (HiPReP)
Antragsteller
Professor Dr.-Ing. Markus Weinhardt
Fachliche Zuordnung
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Elektronische Halbleiter, Bauelemente und Schaltungen, Integrierte Systeme, Sensorik, Theoretische Elektrotechnik
Elektronische Halbleiter, Bauelemente und Schaltungen, Integrierte Systeme, Sensorik, Theoretische Elektrotechnik
Förderung
Förderung von 2016 bis 2021
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 283321772
Im Bereich des High-Performance-Computing (HPC) wurden in den letzten Jahren verstärkt parallele Prozessorarchitekturen (Multi- und Many-Core-Prozessoren sowie Grafik-Prozessoren - GPUs) eingesetzt, da keine Leistungssteigerungen durch höhere Taktfrequenzen mehr erzielt werden konnten. Diese auf vielen einzelnen Prozessor-Kernen beruhenden Lösungen sind aber mit einer großen Chipfläche und hohen Leistungsaufnahme verbunden.Andererseits wird auch Programmierbare Hardware in Form von FPGAs (Field-Programmable Gate Arrays) für HPC-Anwendungen verwendet, da FPGAs massive Parallelverarbeitung ohne den mit vollständigen Prozessorkernen verbundenen Aufwand ermöglichen. Jedoch ist die Verarbeitung von Fließkomma-Daten, die in den meisten HPC-Anwendungen benötigt wird, auf FPGAs problematisch. Auf ihnen kann nur eine begrenzte Anzahl von Fließkomma-Recheneinheiten (FPUs) durch das Zusammenschalten einfacherer Komponenten realisiert werden. Dieselbe Einschränkung betrifft auch grobgranulare, rekonfigurierbare Architekturen (Coarse-Grained Reconfigurable Arrays - CGRAs), die im Gegensatz zu FPGAs auf Recheneinheiten auf Wortbreite (z. B. 32 Bit) basieren und deshalb prinzipiell besser zur Ausführung numerischer Algorithmen geeignet sind. Fast alle bisher entwickelten CGRAs enthalten aber nur Recheneinheiten zur Verarbeitung von ganzzahligen Werten. Um FPUs erweiterte CGRAs stellen eine vielversprechende Option für rechenintensive Algorithmen, etwa aus den Bereichen wissenschaftliches Rechnen oder 3D-Graphik, dar. Diese Erweiterung soll in dem dreijährigen beantragten Projekt erforscht und evaluiert werden.Zunächst werden passende Programm-Kerne aus HPC-Benchmarks, für die das neue CGRA optimiert wird, ausgewählt und analysiert.Im zweiten Arbeitspaket wird die parametrisierbare HiPReP-Architektur, also der Aufbau der Hardware, festgelegt und ein Simulations-Modell in der Sprache SystemC implementiert, um die Architektur evaluieren zu können. Zur effizienten Nutzung der Erweiterung durch FPUs müssen auch neuartige Kommunikations- und Synchronisationsmechanismen gefunden sowie die Einbindung in die Speicherhierarchie eines Gesamtsystems untersucht werden. Diese beiden Arbeitspakete werden vor allem von einem Doktoranden/einer Doktroandin bearbeitet.Eine weitere Doktorandenstelle ist für die prototypische Implementierung eines Hochsprachen-Compilers für HPC-Anwendungen auf HiPReP vorgesehen. Denn der praktische Nutzen eines Prozessors kann nur mit einem zugehörigen Compiler evaluiert werden. Dazu werden passende Übersetzungs-, Scheduling- und Platzierungs-Algorithmen entwickelt.Schließlich soll in einer Evaluationsphase eine Entwurfsraum-Exploration durchgeführt werden. Dazu wird die Ausführung der Benchmarks auf dem HiPReP-Prozessor simuliert und ein optimaler Punkt im Entwurfsraum ermittelt. Für diesen Entwurf werden Fläche, Frequenz und Leistungsaufnahme einer Chip-Implementierung abgeschätzt.
DFG-Verfahren
Sachbeihilfen