Parallelprogrammierung: OpenMP 4.0 und SPEC OMP2012

SIMD, Thread-Affinitäten, spezifizierbare Datentypen für Reduktion und Direktiven für Beschleunigerkarten, das sind einige der neuen Aspekte von OpenMP 4.0

In Pocket speichern vorlesen Druckansicht 5 Kommentare lesen
Lesezeit: 1 Min.
Von
  • Andreas Stiller

Auf einer kleinen 15-Jahresfeier stellte das OpenMP ARB (Architecture Reviewer Board) den ersten Release-Kandidaten der Programmierschnittstelle OpenMP 4.0 vor. Zu den zahlreichen Verbesserungen gehören insbesondere die Unterstützung von SIMD-Konstrukten, von Thread-Affinitäten und endlich auch die Möglichkeit, eigene Datentypen für die Reduktion zu spezifizieren. Weiterhin hat das Konsortium einen Technischen Report über Direktiven für angeschlossene Beschleuniger veröffentlicht, die in die finale Version im nächsten Jahr einbezogen werden sollen.

Konsortiums-Mitglied Intel betrachtet OpenMP 4.0 als Ablösung des "Nvidia/OpenACC"-Seitenweges, bei dem ebenfalls durch einfache Pragmas auf abstrakter Ebene die Parallelisierung für Beschleuniger oder Coprozessoren gesteuert wird. Der Rest des Konsortiums sieht OpenMP 4.0 aber eher als einen Schritt zur Konvergenz beider Ansätze. Compiler-Firma PGI bastelt auch schon an der Einbindung von Intel Xeon Phi in OpenACC.

Vorgestellt wurde ferner der neue OpenMP-Benchmark SPEC OMP2012 der Standard Performance Evaluation Corporation SPEC, der Mitte Oktober auf Basis von OpenMP 3.1 herausgekommen ist. Bei dem Benchmark muss man sich wieder auf recht lange Laufzeiten einstellen: 72 Stunden auf einem aktuellen Achtkern-System. (as)