Will man moderne Rechnerarchitekturen effizient nutzen, erfordert dies einen hohen Aufwand bei der Softwareentwicklung im Bereich der Parallelisierung und Optimierung. Um den Programmierer hierbei zu unterstützen, liefern Leistungsanalyse-Werkzeuge einen detaillierten Überblick über die Ausführung einer Anwendung auf der verwendeten Architektur.
In diesem Vortrag geben wir einen Überblick über häufig auftretende Performance-Engpässe und präsentieren Techniken, wie man diese mit Werkzeugen detektieren und beheben kann. Anhand von einfachen Beispielen zeigen wir, wie diese Techniken dazu führen, dass die eingesetzte Hardware effizienter genutzt wird.
Vorkenntnisse
Grundkenntnisse der allgemeinen parallelen Programmierung. Grundkenntnisse des Aufbaus aktueller Rechnersysteme. Interesse an der Art und Weise, wie parallele Programme auf moderner Hardware ausgeführt werden und wie die Leistung dieser Ausführung analysiert sowie verbessert werden kann.
Lernziele
Wir vermitteln ein grundlegendes Verständnis der Möglichkeiten der Performanceanalyse paralleler Programme auf aktueller Hardware. Wir zeigen, wie typische Performanceprobleme aufgespürt und behoben werden können. Dabei unterhalten wir das Publikum mit echten Fallstudien.
// Dr. Dirk Schmidl
arbeitet als HPC Performance Engineer bei Atos. Seine Interessen umfassen das Benchmarking auf modernen HPC-Systemen mit dem Ziel Leistungsengpässe zu erkennen und zu verstehen. Weiterhin beschäftigt er sich mit der Leistungsanalyse und -optimierung paralleler HPC Anwendungen, um auf diesen Systemen eine möglichst gute Anwendungsperformance zu erreichen.
// Dr.-Ing. Michael Klemm
arbeitet bei der Intel Deutschland GmbH. Seine Interessen liegen im Programmiersprachendesign, der effizienten parallelen Programmierung sowie Performance-Optimierung. Er ist seit April 2016 CEO des OpenMP Architecture Review Board.
// Dr. Christian Terboven
arbeitet am IT Center der RWTH Aachen. Sein Forschungsinteresse gilt der Parallelprogrammierung. Seit 2006 ist er Mitglied des OpenMP Language Committee und leitet dort das Affinity-Subcommittee, das die Themenbereiche Thread-Binding und NUMA-Unterstützung aktiv vorantreibt.