Softwarekonferenz für Parallel Programming,
Concurrency und Multicore-Systeme
Heidelberg, Print Media Academy, 6.-8. April 2016

parallel 2016 » Programm »

// Parallele Zähler oder eine Lektion über Hardware-Parallelität und Performance

Wenn mehrere CPU-Kerne gleichzeitig an einer Aufgabe arbeiten, kommt das Ergebnis nicht automatisch schneller. Die Synchronisierung zwischen verschiedenen Threads kostet nicht nur softwareseitig Rechenzyklen, sondern selbst ein atomic-int> kann viele Wartezyklen zur Folge haben durch die hardwareseitige Synchronisation.

Anhand eines einfachen Zählers wird aufgezeigt, welche Auswirkungen die verschiedenen Synchronisationsmechanismen auf die Performanz und Skalierbarkeit auf paralleler Hardware haben.

Obwohl ein Beispiel in C++ gezeigt wird, ist dieser Vortrag nicht C++-spezifisch. Es geht darum, an einem konkreten Beispiel (mit ganz realen Benchmarkergebnissen) zu zeigen, dass Shared-Memory erhebliche Bremswirkung auf parallelisierte Programme haben kann.

Skills
kein konkretes Vorwissen erforderlich

Lernziele
Verständnis der Auswirkung der Hardwarearchitektur auf die Performance paralleler Systeme.

// Referent

// Detlef Vollmann Detlef Vollmann

ist ein aktives Mitglied des C++-Standardisierungskommitees (hauptsächlich in der Unterkommission zur Concurrency). Er ist einer der (vielen) Autoren des C++ Performance Report und führte die "Futures" in C++11 ein. Er liefert Support und Schulungen zu Embedded-Systemen und Concurrency in C++.