Namespaces
Variants

Extensions for parallelism

From cppreference.net

Die C++-Erweiterungen für Parallelität, ISO/IEC TS 19570:2015 definiert die folgenden neuen Komponenten für die C++-Standardbibliothek:

Inhaltsverzeichnis

Ausführungsrichtlinien

Der Parallelismus TS beschreibt drei Ausführungsrichtlinien: sequentiell , parallel , und parallel+vector , und stellt entsprechende Ausführungsrichtlinien-Typen und -Objekte bereit. Benutzer können eine Ausführungsrichtlinie statisch auswählen, indem sie einen parallelen Algorithmus mit einem Ausführungsrichtlinien-Objekt des entsprechenden Typs aufrufen, oder dynamisch durch Verwendung der typgelöschten execution_policy -Klasse.

Implementierungen können zusätzliche Ausführungsrichtlinien als Erweiterung definieren. Die Semantik von parallelen Algorithmen, die mit einem Ausführungsrichtlinienobjekt eines implementierungsdefinierten Typs aufgerufen werden, ist implementierungsdefiniert.

Ausführungsrichtlinien-Typen
(Klasse)
Globale Ausführungsrichtlinien-Objekte
(Konstante)
Dynamische Ausführungsrichtlinie
(Klasse)
Prüft, ob eine Klasse eine Ausführungsrichtlinie repräsentiert
(Klassentemplate)

Ausnahmelisten

Ausnahmen, die während paralleler Ausführungen ausgelöst wurden
(Klasse)

Parallelisierte Versionen bestehender Algorithmen

Der TS stellt parallelisierte Versionen der folgenden 69 Algorithmen aus <algorithm>, <numeric> und <memory> bereit:

Standardbibliothek-Algorithmen, für die parallelisierte Versionen bereitgestellt werden

Neue Algorithmen

Definiert im Header <experimental/algorithm>
ähnlich wie std::for_each , gibt jedoch void zurück
(Funktions-Template)
wendet ein Funktionsobjekt auf die ersten n Elemente einer Sequenz an
(Funktions-Template)
Definiert im Header <experimental/numeric>
(parallelism TS)
ähnlich wie std::accumulate , jedoch außerhalb der Reihenfolge
(Funktions-Template)
ähnlich wie std::partial_sum , schließt das i te Eingabeelement von der i ten Summe aus
(Funktions-Template)
ähnlich wie std::partial_sum , schließt das i te Eingabeelement in der i ten Summe ein
(Funktions-Template)
(parallelism TS)
wendet einen Funktor an und reduziert dann außerhalb der Reihenfolge
(Funktions-Template)
wendet einen Funktor an und berechnet dann exklusiven Scan
(Funktions-Template)
wendet einen Funktor an und berechnet dann inklusiven Scan
(Funktions-Template)