Entwurf, Realisierung und Bewertung eines Grid-Alu-Prozessors
Zusammenfassung der Projektergebnisse
Im Rahmen dieses Projektes wurde die Grid-ALU-Prozessor (GAP) Architektur entwickelt, optimiert und bewertet. Dadurch, dass im GAP sämtlicher auszuführender Code zur Laufzeit auf eine zweidimensionale Struktur aus Funktionseinheiten abgebildet und dort ausgeführt wird, unterscheidet er sich deutlich von allen bisher bekannten Prozessorarchitekturen. Basierend auf dieser grundlegenden Idee wurde im Projekt ein möglichst realistischer Simulator entwickelt. Die dabei entdeckten Herausforderungen wie beispielsweise der hohe Flächenbedarf der Grundarchitektur wurden gemeistert indem die Architektur entsprechend optimiert und verfeinert wurden. Parallel dazu wurde das Werkzeug GAPtimize entwickelt, mit dem Software für die Ausführung auf dem GAP so angepasst werden kann, dass sie von seinen speziellen Eigenschaften profitiert. GAPtimize führt dazu auf einem vollständig übersetzten Programm sog. Post-Link-Optimierungen durch. Hierbei werden durch vier speziell für den GAP entwickelte Optimierungen die Performance und die Nutzung der Hardware-Ressourcen entscheidend verbessert. Die Evaluierung von GAP und GAPtimize erfolgte in mehrere Richtungen. Zuerst wurde die maximal mögliche Leistung von GAP unter der Annahme von beliebigen Ressourcen ermittelt. Dabei wurde gezeigt, dass Programme von GAP teilweise wesentlich schneller ausgeführt werden können als von einer zeitgemäßen Referenzarchitetkur. Im nächsten Schritt erfolgten Leistungsmessungen bei Verwendung von vertretbarem Hardware-Aufwand sowie die Ermittlung von Konfigurationen, mit denen der GAP die verfügbaren Hardware-Ressourcen möglichst gut nutzen kann. Dabei wurde deutlich, dass auch mit reduziertem Hardware-Aufwand gute Ergebnisse mit dem GAP erzielt werden können. Im letzten Schritt wurden Programmoptimierungen durch GAPtimize angewendet und bewertet. Hieraus ließ sich schließen, dass mit GAPtimize sowohl Leistung als auch Hardware-Effizienz des GAP signifikant gesteigert werden können. Der Grid-ALU-Prozessor eignet sich für eine Vielzahl von Anwendungen. Mit seiner derzeitigen Ausgestaltung kann er praktisch als General-Purpose Prozessor betrachtet werden, der seine besondere Leistung aus kurzen, häufig ausgeführten Programmfragmenten gewinnt. Dennoch ist er in der Lage, Standard-Anwendungen ebenfalls effizient auszuführen. Dies ist das Resultat aus seiner internen zweidimensionalen Struktur zusammen mit dem vorgeschalteten Prozessor-Frontend. Als mögliche Anwendungsbereiche kommen daher alle aktuellen Anwendungen von General-Purpose Prozessoren in Frage. Ein Bereich, für den GAP derzeit nicht geeignet ist, sind Echtzeitsysteme. Hier müssen noch Untersuchungen in Bezug auf die Echtzeitfähigkeit des GAP durchgeführt und ggf. Anpassungen vorgenommen werden. Außerdem sollte für eine abschließende absolute Bewertung der Leistungsfähigkeit sowie der Rentabilität der Fertigung der GAP- Architektur eine konkrete Hardwaresynthese durchgeführt werden. Diese erlaubt Aussagen über die Taktfrequenz und den Flächenbedarf bei Verwendung einer aktuellen Chiptechnologie.
Projektbezogene Publikationen (Auswahl)
- The Grid ALU Processor. In: Proceedings of ACACES 2008: Advanced Computer Architecture and Compilation for Embedded Systems. L’Aquila, Italy : Academia Press, Ghent, 2008. – ISBN 978–90–382–1288–3, S. 325–328
Jahr, R.; Shehan, B.; Uhrig, S.; Ungerer, T.
- A Two-Dimensional Superscalar Processor Architecture. In: Future Computing, Service Computation, Cognitive, Adaptive, Content, Patterns, 2009. COMPUTATIONWORLD ’09. Computation World:, 2009. – ISBN 978–0–7695–3862–4, S. 608–611
Uhrig, S.; Shehan, B.; Jahr, R.; Ungerer, T.
- Dynamic Coarse Grained Reconfigurable Architectures. University of Augsburg, Dissertation, 2010
Shehan, B.
- Enhancing the Grid Alu processor for a better exploitation of the functional units. In: Mixed Design of Integrated Circuits and Systems (MIXDES), 2010 Proceedings of the 17th International Conference, 2010, S. 106–111
Shehan, B.; Jahr, R.; Uhrig, S.; Ungerer, T.
- Optimization and evaluation of the reconfigurable Grid Alu Processor. In: Computer Architecture and Digital Systems (CADS), 2010 15th CSI International Symposium on, 2010, S. 11–18
Shehan, B.; Jahr, R.; Uhrig, S.; Ungerer, T.
- Prozessor mit internem Raster von Ausführungseinheiten. (14.10.2010), DE 10 2006 027 181, June 2006
Uhrig, S.
- Reconfigurable Grid Alu Processor: Optimization and Design Space Exploration. In: Digital System Design: Architectures, Methods and Tools (DSD), 2010 13th Euromicro Conference on, 2010, S. 71–79
Shehan, B.; Jahr, R.; Uhrig, S.; Ungerer, T.
- The Two-dimensional Superscalar GAP Processor Architecture. In: International Journal on Advances in Systems and Measurements 3 (2010), September, Nr. 1 and 2, S. 71–81. – ISSN 1942–261x
Uhrig, S.; Shehan, B.; Jahr, R.; Ungerer, T.
- Automatic Multi-Objective Optimization of Parameters for Hardware and Code Optimizations. In: Waleed W. Smari, J. P. M. (Hrsg.): Proceedings of the 2011 International Conference on High Performance Computing & Simulation (HPCS 2011), IEEE, July 2011, S. 308–316. – ISBN 978-1-61284-381-0
Jahr, R.; Ungerer, T.; Calborean, H.; Vintan, L.
- Optimized Replacement in the Configuration Layers of the Grid Alu Processor. In: Proceedings of the Second International Workshop on New Frontiers in High-performance and Hardware-aware Computing (HipHaC’11), KIT Scientific Publishing, 2011. – ISBN 978–3–86644–626–7, S. 9–16
Jahr, R.; Shehan, B.; Uhrig, S.; Ungerer, T.
- Static Speculation as Post-link Optimization for the Grid Alu Processor. In: Guarracino, M. (Hrsg.); Vivien, F. (Hrsg.); Träff, J. (Hrsg.); Cannatoro, M. (Hrsg.); Danelutto, M. (Hrsg.); Hast, A. (Hrsg.); Perla, F. (Hrsg.); Knüpfer, A. (Hrsg.); Di Martino, B. (Hrsg.); Alexander , M. (Hrsg.): Euro-Par 2010 Parallel Processing Workshops Bd. 6586. Springer Berlin / Heidelberg, 2011, S. 145–152
Jahr, R.; Shehan, B.; Uhrig, S.; Ungerer, T.
- Boosting Design Space Explorations with Existing or Automatically Learned Knowledge. In: Schmitt, J. (Hrsg.): Measurement, Modelling, and Evaluation of Computing Systems and Dependability and Fault Tolerance Bd. 7201. Springer Berlin / Heidelberg, 2012. – ISBN 978–3–642– 28539–4, S. 221–235
Jahr, R.; Calborean, H.; Vintan, L.; Ungerer, T.
- Performanceanalyse und plattformspezifische Optimierungen am Beispiel des Grid-ALU-Prozessors. Universität Augsburg, Dissertation, 2012
Jahr, R.