Projektseminar:

Programmierung von Manycore-Prozessoren

Inhalt
Die hohe Rechenleistung aktueller Server- und Hochleistungsrechnersysteme beruht primär auf der Nutzung von Prozessoren mit sehr vielen Rechenkernen (Multi- und Many-Core-CPUs). Bis vor kurzem haben die großen Prozessorhersteller Intel, AMD und Cavium/ARM überwiegend skalare Rechenkerne mit SIMD-Einheiten eingesetzt, aber seit diesem Jahr (2018) bietet die japanische Firma NEC auch wieder Prozessoren mit echten Vektor-Rechenkernen an. Am Zuse-Institut Berlin existiert ein aktuelles NEC-System "SX-Aurora TSUBASA A300-8" mit acht Vektor-Einheiten, dessen effizienter Programmierung wir uns in diesem Projektseminar besonders widmen wollen - insbesondere im Vergleich zu den Intel Manycore-Prozessoren (Intel Xeon Phi).

In diesem Projektseminar werden wissenschaftliche Anwendungen für Systeme mit Mehrkern-Prozessoren entwickelt, programmiert und auf Testsystemen evaluiert. An Fallbeispielen erlernen die Studierenden Methoden zur Entwicklung effizienter Software für Systeme mit Mehrkern-Prozessoren: Parallelisierung, Vektorisierung, Cache-Nutzung, Offloading, Nachrichtenaustausch. Dabei kommen verschiedene Programmiersprachen mit parallelen Kommunikationsbibliotheken zum Einsatz (z. B. OpenMP, MPI, OpenCL). Die Arbeit erfolgt in Kleingruppen.

Ort/Zeit
Mittwochs, 13-15 und 15-17 Uhr
Raum 1'305 im CMS-Gebäude

Veranstaltungsmaterial (Passwort geschützt)

17.10.2018   Organisatorisches (.pdf) <- aktualisiert am 23.01.19  
17.10.2018   OpemMP (.pdf)  
24.10.2018   SIMD Programmierung (.pdf)  
    Übungsblatt 1 (.pdf)  
    Übungsblatt 1 Material (.zip)  
31.10.2018   Speicherarchitekturen (.pdf)  
    Übungsblatt 2 (.pdf)  
07.11.2018   Leistungsmodellierung (.pdf)  
14.11.2018   Übungsblatt 3 (.pdf)  
28.11.2018   Übungsblatt 3.1 (.pdf)  
12.12.2018   Übungsblatt 4 (.pdf)  
    R Beispiel (.zip)  
    Code (.zip)  
    VTune/Advisor Anleitung (.pdf)  
09.01.2019   NEC Aurora (.pdf)  
    Übungsblatt 5 (.pdf)  
    NEC Quickstart (.pdf)  
23.01.2019   Übungsblatt 6 (.pdf)  
30.01.2019   entfällt (Zeit zum Verfassen des Abschlussberichts)  
06.02.2019 13 Uhr c.t.   Präsentation der Abschlussarbeiten (HU)  
13.02.2019 14 Uhr c.t.   Vorlesung zu HPC mit anschließender Rechnerführung (ZIB)  
    (siehe Organisatorisches)