Freigeben über


Inhalt

1.Einführung

1.1 -Bereich

1.2 -Definition von Ausdrücken

1.3 -Ausführungs-Modell

Kompatibilität 1.4 -

1.5 -mitgeltende Unterlagen

1.6 -Organisation

2.Direktiven

Richtungweisendes Format 2.1

Bedingte Kompilierung 2.2

paralleles Konstrukt 2.3

2.4 -Arbeitsteilungs-Konstrukte

2.4.1 für Konstrukt

2.4.2 Konstrukt Abschnitte

2.4.3 Konstrukt einzelnes

2.5 kombinierte parallele Arbeitsteilungs-Konstrukte

2.5.1 Konstrukt für Ähnlichkeit

2.5.2 paralleles Konstrukt Abschnitte

2.6 -Master-und -Synchronisierungs-Direktive

2.6.1 konstrukt Vorlagen

2.6.2 Konstrukt Kritisch

2.6.3 Grenze Direktive

2.6.4 Konstrukt unteilbares

bündige Direktive 2.6.5

geordnetes Konstrukt 2.6.6

2.7 -Datenumgebung

threadprivate Direktive 2.7.1

2.7.2 -Datenfreigabe-Attribut-Klauseln

2.7.2.1 privat

2.7.2.2-firstprivate

2.7.2.3-lastprivate

2.7.2.4 freigegeben wurde

2.7.2.5- Standardwert

2.7.2.6- Verringerung

2.7.2.7-copyin

2.7.2.8-copyprivate

2.8 -Direktiven-Bindung

Richtungweisende Schachtelung 2.9

3.Laufzeitbibliotheks-Funktionen

3.1 -Ausführungsumgebungs-Funktionen

3.1.1 omp_set_num_threads Funktion

3.1.2 omp_get_num_threads Funktion

3.1.3 omp_get_max_threads Funktion

3.1.4 Funktion omp_get_thread_num

3.1.5 omp_get_num_procs Funktion

3.1.6 omp_in_parallel Funktion

omp_set_dynamic Funktion 3.1.7

omp_get_dynamic Funktion 3.1.8

3.1.9 omp_set_nested Funktion

3.1.10 omp_get_nested Funktion

3.2 -Sperren-Funktionen

3.2.1 omp_init_lock und omp_init_nest_lock Funktionen

3.2.2 omp_destroy_lock und omp_destroy_nest_lock Funktionen

3.2.3 omp_set_lock und omp_set_nest_lock Funktionen

3.2.4 omp_unset_lock und omp_unset_nest_lock Funktionen

3.2.5 omp_test_lock und omp_test_nest_lock Funktionen

3.3 , das Timeout einer Routinen Uhrzeit

3.3.1 omp_get_wtime Funktion

3.3.2 omp_get_wtick Funktion

4.Umgebungsvariablen

4.1 OMP_SCHEDULE

4.2 OMP_NUM_THREADS

4.3 OMP_DYNAMIC

4.4 OMP_NESTED

A.Beispiele

A.1, die parallel eine einfache Schleife ausgeführt wird

A.2, die bedingte Kompilierung angibt

A.3 Using Side-by-side Bereiche

A.4 mithilfe der nowait FROM-Klausel

A.5 mithilfe der wichtigen Direktive

A.6 lastprivate mithilfe der FROM-Klausel

A.7 mithilfe der Reduktionsklausel

A.8, das parallele Bereiche angibt

A.9 wobei die einzelnen Direktiven

A.10, die sequenzielle Reihenfolge angibt

A.11, das eine feste Anzahl von Threads angibt

A.12 mithilfe der atomare Direktive

A.13 mithilfe der bündigen - Direktive mit einer Liste

A.14 mithilfe der bündigen Direktive ohne eine Liste

A.15, die die Anzahl von Threads verwendet wird

A.16 mithilfe von Sperren

A.17 mithilfe der schachtelbaren Sperren

Direktiven für geschachtelte A.18

Beispiele A.19, die falsche Schachtelung von Arbeitsteilungs-Direktiven anzeigen

Bindung A.20 der Barriere - Direktive

A.21, das Variablen mit dem privaten - Klausel beschränkt

A.22 mithilfe der standardmäßigen (Keine) - Klausel

Beispiele A.23 der sortierten Direktive

Beispiel A.24 dem privaten FROM-Klausel

Beispiele A.25 der copyprivate Bezugspunkt-Attribut-Klausel

A.26 mithilfe der threadprivate Direktive

Verwendung A.27 von Arrays mit variabler Länge C99

Verwendung von num_threads - Klausel A.28

Verwendung A.29 von Arbeitsteilungs-Konstrukten in einem wichtigen Konstrukts

Verwenden von A.30 Reprivatization

Threadsichere Funktionen der Sperren-A.31

B.Stubs für Laufzeitbibliotheks-Funktionen

C.OpenMP C und C++-Grammatik

Notation C.1

Regeln C.2

D.Verwenden der Zeitplan FROM-Klausel

Ost-Implementierung-Definiertes Verhalten in C/C++ OpenMP

F.Neue Features und Erläuterungen in Version 2.0

Siehe auch

Konzepte

OpenMP C und C++-Anwendungsprogrammierschnittstelle