BenchIT
Die sich immer weiter verkürzenden Entwicklungszyklen für Hard- und Software, die wachsende Komponentenvielfalt in den unterschiedlichen Rechnersystemen sowie der zunehmende Skalierungsgrad im Server- und HPC-Bereich führen zu einem Variantenreichtum verfügbarer Systeme. Die Wahl, welches Systemkonzept für welche Anwendung besonders geeignet ist, fällt immer schwerer. Verbreitete Benchmarks geben dabei eine nützliche Hilfestellung, die häufig in einem Satz von wenigen Kennwerten mündet. Multi-Experiment-Ansätze, häufig als Bestandteil aufwändiger komplexer Analyse- und Tuningwerkzeuge, erweitern diese Sicht erheblich. Parameter-Studien eröffnen die Möglichkeit, Systemcharakteristika zu separieren.
Zusammenfassung
Das BenchIT-Projekt verfolgt den Ansatz, mit einer erweiterbaren Sammlung handinstrumentierter Messprogramme (Kernels) ein zu analysierendes System möglichst in kurzer Zeit aussagekräftig zu testen. Dabei können sowohl Zeitmessungen als auch Performance-Counter-Daten ausgewertet werden. Es ist möglich, mehrere Kenngrößen während eines Messlaufes in Abhängigkeit eines variablen Parameters zu korrelieren.
Ein wesentliches Designziel von BenchIT ist ein hoher Portabilitätsgrad für unterschiedliche UNIX-Derivate. Shellscriptgesteuert erfolgt die weitestgehend automatisierte Erkundung des zu vermessenden Systems (z.B. Erkennung installierter Compiler und Bibliotheken), die Aufforderung des Nutzers zur Eingabe weiterer Daten (z.B. Architekturinformationen, spezielle Pfade), die Compilation, das Linken sowie die Ausführung. Für den Einsatz von Crosscompilern kann diese Reihenfolge entsprechend nach dem Linken unterbrochen werden, um die Binaries für das Target-System zur Verfügung zu stellen. Die Ausführung der einzelnen Kernels erfolgt unter Steuerung eines Hauptprogramms, welches ein entsprechendes Interface für die Kernels bereitstellt. Es besteht die Option, einzelne Kernel oder den kompletten Satz an Messprogrammen auszuführen. Die Einflussnahme hinsichtlich der Laufzeit-Limitierung der Kernels, der Wiederholungsanzahl und der Filterung der Messergebnisse ist möglich.
BenchIT ist darauf ausgerichtet, dass externe Nutzer die verfügbaren Kernels anwenden und durch weitere ergänzen.
ZIH-Kontakt
Weiterführende Links
Ausgewählte Publikationen
-
Markus Velten,Robert Schöne,Thomas Ilsche,Daniel Hackenberg, "Memory Performance of AMD EPYC Rome and Intel Cascade Lake SP Server Processors" In:
International Conference on Performance Engineering (ICPE), 2022. DOI: 10.1145/3489525.3511689 -
Daniel Molka, Robert Schöne, Daniel Hackenberg, Wolfgang E. Nagel. "Detecting Memory-Boundedness with Hardware Performance Counters", In: International Conference on Performance Engineering (ICPE), 2017. DOI: 10.1145/3030207.3030223
- Daniel Molka, Daniel Hackenberg, Robert Schöne, Wolfgang E. Nagel “Cache Coherence Protocol and Memory Performance of the Intel Haswell-EP Architecture”, Proceedings of the 44th International Conference on Parallel Processing (ICPP'15), IEEE, 2015
- Daniel Molka, Daniel Hackenberg, Robert Schöne, “Main Memory and Cache Performance of Intel Sandy Bridge and AMD Bulldozer”, In Proceedings of the 2014 ACM SIGPLAN workshop on Memory Systems Performance and Correctness (MSPC'14), ACM, 2014
- Michael Kluge, Stephen Simms, Thomas William, Robert Henschel, Andy Georgi, Christian Meyer, Matthias S. Mueller, Craig A. Stewart, Wolfgang Wünsch, Wolfgang E. Nagel, Performance and quality of service of data and video movement over a 100 Gbps testbed, Future Generation Computer Systems, Volume 29, Issue 1, January 2013, Pages 230-240, ISSN 0167-739X, http://dx.doi.org/10.1016/j.future.2012.05.028.
- R. Schöne, D. Hackenberg, D. Molka, “Memory performance at reduced CPU clock speeds: an analysis of current x86_64 processors”, In Proceedings of the 2012 USENIX conference on Power-Aware Computing and Systems (HotPower'12), October 7, 2012, Hollywood, USA
- R. Schöne, D. Hackenberg, D. Molka, “Simultaneous Multithreading on x86_64 Systems: An Energy Efficiency Evaluation”, In Procedings of the 4th Workshop on Power-Aware Computing and Systems (HotPower'11), October 23-26, 2011, Cascais, Portugal
- Andy Georgi , Thomas William and Wolfgang E. Nagel, Synthetische Lasttests auf dem 100-Gigabit-Testbed zwischen der TU Dresden und der TU Bergakademie Freiberg, Gesellschaft für Informatik, Bonn, ISBN 978-3-88579-281-9
- D. Molka, R. Schöne, D. Hackenberg, M. S. Müller, “Memory Performance and SPEC OpenMP Scalability on Quad-Socket x86 64 Systems”, In Procedings of the 11th International Conference on Algorithms and Architectures for Parallel Processing (ICA3PP'11), October 24-26 2011, Melbourne, Australia
- D. Molka, D. Hackenberg, R. Schöne and M. S. Müller, “Characterizing the Energy Consumption of Data Transfers and Arithmetic Operations on x86-64 Processors”, In Proceedings of the 1st International Green Computing Conference (IGCC'10), pages 123-133, IEEE, 2010
- D. Hackenberg, D. Molka and W. E. Nagel, “Comparing Cache Architectures and Coherency Protocols on x86-64 Multicore SMP Systems”, In Proceedings of the 42nd International Symposium on Microarchitecture (MICRO'09), pages 413-422, ACM, 2009
- D. Molka, D. Hackenberg, R. Schöne and M. S. Müller, “Memory Performance and Cache Coherency Effects on an Intel Nehalem Multiprocessor System”, In Proceedings of the 18th International Conference on Parallel Architectures and Compilation Techniques (PACT'09), pages 261-270, IEEE, 2009
- Robert Schöne, Wolfgang E. Nagel and Stefan Pflüger, Analyzing Cache Bandwidth on the Intel Core 2 Architecture, In proceeding of: Parallel Computing: Architectures, Algorithms and Applications, ParCo 2007, Forschungszentrum Jülich and RWTH Aachen University, Germany, 4-7 September 2007, ISBN 158603796X, 978-1-58603-796-3
- Daniel Hackenberg, Robert Schöne, Wolfgang E Nagel, Stefan Pflüger, Optimizing OpenMP parallelized DGEMM calls on SGI Altix 3700, Lecture Notes in Computer Science for Euro-Par 2006 Parallel Processing, pages 145-154, Januar 01 2006, http://dx.doi.org/10.1007/11823285_15
- Robert Schöne, Guido Juckeland, Wolfgang E. Nagel, Stefan Pflüger and Robert Wloch, Performance Comparison and Optimization: Case Studies using BenchIT, In proceeding of: Parallel Computing: Architectures, Algorithms and Applications, ParCo 2006, pages 877-884, 2006
- Guido Juckeland, Michael Kluge, Wolfgang E. Nagel and Stefan Pflüger, Performance analysis with BenchIT: portable, flexible, easy to use, in: 1st International Conference on Quantitative Evaluation of Systems (QEST 2004), Proceedings, pages 320--321, IEEE Computer Society, 2004
- Guido Juckeland, S. Borner, Michael Kluge, S. Kolling, Wolfgang E. Nagel, Stefan Pflüger and H. Roding, BenchIT - Performance Measurements and Comparison for Scientific Applications, In proceeding of: Parallel Computing: Architectures, Algorithms and Applications, ParCo 2003, pages 501-508, 2003