Condividi tramite


Indice

1.Introduzione

ambito di 1.1

Definizione di 1.2 dei termini

modello di esecuzione di 1.3

conformità di 1.4

riferimenti normativi di 1.5

organizzazione di 1.6

2.Direttive

Formato della direttiva di 2.1

compilazione condizionale di 2.2

costrutto parallelo 2,3

Costrutti di suddivisione del lavoro di 2.4

2.4.1 per il costrutto

2.4.2 sezioni del costrutto

singolo costrutto 2.4.3

2.5 È combinato i costrutti paralleli di suddivisione del lavoro

parallelo 2.5.1 per il costrutto

un costrutto parallelo di 2.5.2 sezioni

Direttive del master e di sincronizzazione di 2.6

costrutto master 2.6.1

costrutto critico 2.6.2

una direttiva di 2.6.3 barriere

costrutto atomico 2.6.4

direttiva a livello 2.6.5

costrutto ordinato 2.6.6

ambiente di dati di 2.7

una direttiva di 2.7.1 threadprivate

clausole di attributo di condivisione di dati di 2.7.2

2.7.2.1 privato

firstprivate di 2.7.2.2

lastprivate di 2.7.2.3

2.7.2.4 è condiviso

predefinito 2.7.2.5 /24

riduzione di 2.7.2.6

copyin di 2.7.2.7

copyprivate di 2.7.2.8

associazione di direttiva di 2.8

Annidamento la direttiva di 2.9

3.Funzioni della libreria di runtime

Funzioni dell'ambiente di esecuzione di 3.1

una funzione di 3.1.1 omp_set_num_threads

una funzione di 3.1.2 omp_get_num_threads

una funzione di 3.1.3 omp_get_max_threads

funzione di omp_get_thread_num 3.1.4

una funzione di 3.1.5 omp_get_num_procs

una funzione di 3.1.6 omp_in_parallel

funzione omp_set_dynamic 3.1.7

funzione omp_get_dynamic 3.1.8

funzione omp_set_nested 3.1.9

funzione omp_get_nested 3.1.10

funzioni di blocco di 3.2

3.2.1 funzioni di omp_init_nest_lock e di omp_init_lock

3.2.2 funzioni di omp_destroy_nest_lock e di omp_destroy_lock

3.2.3 funzioni di omp_set_nest_lock e di omp_set_lock

3.2.4 funzioni di omp_unset_nest_lock e di omp_unset_lock

3.2.5 funzioni di omp_test_nest_lock e di omp_test_lock

3.3 Che durata delle routine

una funzione di 3.3.1 omp_get_wtime

una funzione di 3.3.2 omp_get_wtick

4.Variabili di ambiente

4.1 OMP_SCHEDULE

4.2 OMP_NUM_THREADS

4.3 OMP_DYNAMIC

4.4 OMP_NESTED

A.Esempi

A.1 che viene eseguito un ciclo semplice in parallelo

A.2 che specifica la compilazione condizionale

A.3 utilizzando le aree parallele

A.4 utilizzando la clausola di nowait

A.5 utilizzando la direttiva critica

A.6 utilizzando la clausola di lastprivate

A.7 utilizzando la clausola reduction

A.8 che specifica le sezioni parallele

A.9 utilizzando alcune direttive

A.10 che specifica ordine sequenziale

A.11 che specifica un numero fisso dei thread

A.12 utilizzando la direttiva atomica

A.13 utilizzando la direttiva a livello a un elenco

A.14 utilizzando la direttiva a livello senza un elenco

A.15 che determina il numero di thread utilizzati

A.16 l'utilizzo dei blocchi

A.17 l'utilizzo dei blocchi nidificabili

A.18 annidati per le direttive

Esempi A.19 che illustrano errato annidamento delle direttive di suddivisione del lavoro

Associazione A.20 delle direttive di barriera

variabili di definizione A.21 con la clausola privata

A.22 utilizzando la clausola predefinita (nessuno)

Esempi A.23 della direttiva ordinata

Esempio A.24 della clausola privata

Esempi A.25 della clausola dell'attributo di dati del copyprivate

A.26 utilizzando la direttiva del threadprivate

Utilizzo A.27 di matrici a lunghezza variabile di C99

Utilizzo A.28 della clausola WITH num_threads

Utilizzo A.29 di costrutti di suddivisione del lavoro in un costrutto critico

utilizzo A.30 di Reprivatization

funzioni di blocco thread-safe A.31

B.Stub per le funzioni della libreria di runtime

C.OpenMP C# e grammatica C++

notazione C.1

regole C.2

D.Utilizzando la clausola di pianificazione

comportamenti Implementazione-Definiti in OpenMP C/C++

F# Interactive.Funzionalità nuove e chiarimenti nella versione 2,0

Vedere anche

Concetti

OpenMP C e programming interface) programma C++