Udostępnij za pośrednictwem


Zawartość

1.Wprowadzenie

1.1 Zakres

1.2 Definicje terminów

1.3 Wykonywanie modelu

1.4 Zgodności

1.5 Odniesienia normatywne

1.6 Organizacji

2.Dyrektyw

2.1 Format dyrektywy

2.2 Kompilacja warunkowa

Konstruowanie 2.3 równoległe

2.4 Konstrukcje podziału pracy

2.4.1 dla konstrukcji

2.4.2 ppkt konstrukcja

2.4.3 pojedynczy konstrukcja

2.5 Połączone konstrukcje równoległych podziału pracy

2.5.1 równolegle do konstrukcji

2.5.2 sekcje równoległych konstrukcja

2.6 Wzorca i dyrektyw synchronizacji

2.6.1 konstrukcja wzorca

2.6.2 konstrukcja krytyczne

2.6.3 bariery dyrektywy

2.6.4 Atomowej konstrukcja

2.6.5 flush dyrektywy

2.6.6 uporządkowane konstrukcja

2.7 Danych środowiska

2.7.1 threadprivate dyrektywy

2.7.2 Udostępnianie danych klauzul atrybutów

2.7.2.1 prywatne

2.7.2.2 firstprivate

2.7.2.3 lastprivate

2.7.2.4 udostępnione

2.7.2.5 domyślne

2.7.2.6 zmniejszenie

2.7.2.7 copyin

2.7.2.8 copyprivate

2.8 Dyrektywa powiązania

2.9 Dyrektywa zagnieżdżania

3.Run-time Library funkcje

3.1 Funkcje środowiska wykonywania

3.1.1 omp_set_num_threads funkcji

3.1.2 omp_get_num_threads funkcji

3.1.3 omp_get_max_threads funkcji

3.1.4 omp_get_thread_num, funkcja

3.1.5 omp_get_num_procs funkcji

3.1.6 omp_in_parallel funkcji

3.1.7 omp_set_dynamic funkcji

3.1.8 omp_get_dynamic funkcji

3.1.9 omp_set_nested funkcji

3.1.10 omp_get_nested funkcji

3.2 Funkcji blokady

3.2.1 funkcje omp_init_nest_lock i omp_init_lock

3.2.2 funkcje omp_destroy_nest_lock i omp_destroy_lock

3.2.3 funkcje omp_set_nest_lock i omp_set_lock

3.2.4 funkcje omp_unset_nest_lock i omp_unset_lock

3.2.5 funkcje omp_test_nest_lock i omp_test_lock

3.3 Terminy procedur

3.3.1 omp_get_wtime funkcji

3.3.2 omp_get_wtick funkcji

4.Zmienne środowiskowe

4.1 OMP_SCHEDULE

4.2 OMP_NUM_THREADS

4.3 OMP_DYNAMIC

4.4 OMP_NESTED

A.Przykłady

Wykonywanie prostych pętli równolegle A.1

A.2, określając kompilacji warunkowej

A.3 za pomocą równoległych regionów

Za pomocą nowait klauzuli A.4

A.5, za pomocą dyrektywy krytyczne

A.6 przy użyciu lastprivate klauzuli

Za pomocą obniżenie klauzuli A.7

Określanie sekcji równoległych A.8

A.9 używając pojedynczego dyrektyw

Określanie sekwencyjnych kolejności A.10

A.11 określające stała liczba wątków

A.12 za pomocą Atomowej dyrektywy

A.13 za pomocą dyrektywy kolor z listy

A.14 za pomocą dyrektywy opróżniania bez listy

Określanie liczby wątków używanych A.15

A.16 za pomocą blokad

Blokuje A.17 przy użyciu Nestable

Zagnieżdżone dyrektyw A.18

Przykłady A.19 pokazujące niepoprawne zagnieżdżanie dyrektyw podziału pracy

Wiązanie A.20 bariery dyrektyw

A.21 zakresu zmiennych z klauzuli prywatne

A.22 przy użyciu default(none) klauzuli

Przykłady A.23 dyrektywy zamówione

A.24 przykład klauzuli prywatne

Przykłady A.25 copyprivate danych atrybutu klauzuli

A.26 przy użyciu threadprivate dyrektywy

A.27 użycie C99 zmiennej długości tablic

Użycie klauzuli num_threads A.28

A.29 udostępnianie wykorzystanie pracy konstrukcje wewnątrz konstrukcji krytyczne

Wykorzystanie A.30 Reprywatyzacja

Funkcji blokady wielowątkowość A.31

B.Procedur wejścia dla funkcji biblioteki uruchomieniowej

C.OpenMP c i C++ gramatyki

Notacja C.1

Zasady C.2

ZM.Za pomocą harmonogramu klauzuli

E.Zdefiniowane w implementacji zachowania OpenMP C/C++

F.Nowe funkcje i wyjaśnienia w wersji 2.0

Zobacz też

Koncepcje

OpenMP c i C++ Application Program Interface