Partager via


Sommaire

1. Introduction

portée de 1.1

définition de 1.2 des termes

modèle d'exécution de 1.3

conformité de 1.4

références normatives de 1.5

organisation de 1.6

2. Directives

Format de directive 2.1

compilation conditionnelle de 2.2

élément 2,3 parallèle

Partage d'éléments de travail de 2.4

2.4.1 pour l'élément

2.4.2 sections d'élément

élément 2.4.3 unique

2.5 Mixed les éléments parallèles de partage du travail

parallèle 2.5.1 pour l'élément

élément parallèle de 2.5.2 sections

Directives de page maître de synchronisation et de 2.6

principal élément 2.6.1

élément 2.6.2 critique

directive de 2.6.3 barrières

élément 2.6.4 atomique

directive 2.6.5 affleurante

élément classé par 2.6.6

environnement de données de 2.7

directive de 2.7.1 threadprivate

clauses d'attribut de partage de données de 2.7.2

2.7.2.1 privé

firstprivate de 2.7.2.2

elle de 2.7.2.3

2.7.2.4 étapes partagées

valeur par défaut 2.7.2.5

réduction de 2.7.2.6

copyin de 2.7.2.7

copyprivate de 2.7.2.8

liaison de directive de 2.8

imbrication directive de 2.9

3. Fonctions de la bibliothèque Runtime

fonctions d'environnement d'exécution de 3.1

fonction de 3.1.1 omp_set_num_threads

fonction de 3.1.2 omp_get_num_threads

fonction de 3.1.3 omp_get_max_threads

fonction de l'omp_get_thread_num 3.1.4

fonction de 3.1.5 omp_get_num_procs

fonction de 3.1.6 omp_in_parallel

fonction 3.1.7 omp_set_dynamic

fonction 3.1.8 omp_get_dynamic

fonction omp_set_nested par 3.1.9

fonction omp_get_nested par 3.1.10

fonctions de verrou de 3.2

3.2.1 fonctions d'omp_init_lock et d'omp_init_nest_lock

3.2.2 fonctions d'omp_destroy_lock et d'omp_destroy_nest_lock

3.2.3 fonctions d'omp_set_lock et d'omp_set_nest_lock

3.2.4 fonctions d'omp_unset_lock et d'omp_unset_nest_lock

3.2.5 fonctions d'omp_test_lock et d'omp_test_nest_lock

3.3 Minutage des routines

fonction de 3.3.1 omp_get_wtime

fonction de 3.3.2 omp_get_wtick

4. Variables d'environnement

4.1 OMP_SCHEDULE

4.2 OMP_NUM_THREADS

4.3 OMP_DYNAMIC

4.4 OMP_NESTED

A. Exemples

A.1 exécution d'une boucle simple en parallèle

A.2 spécifiant la compilation conditionnelle

A.3 à l'aide de les régions parallèles

A.4 à l'aide de la clause de nowait

A.5 à l'aide de la directive critique

A.6 à l'aide de la clause de lastprivate

A.7 à l'aide de la clause reduction

A.8 spécifiant les sections parallèles

A.9 utilisation de directives unique

A.10 spécifiant l'ordre séquentiel

A.11 spécifiant un nombre fixe de thread

A.12 à l'aide de la directive atomique

A.13 à l'aide de la directive affleurante avec une liste

A.14 à l'aide de la directive affleurante sans liste

A.15 divisant le nombre de threads utilisés

A.16 à l'aide de verrous

A.17 à des verrous empilables

A.18 imbriqué pour les directives

Exemples A.19 affichant l'imbrication incorrecte des directives de partage du travail

Liaison A.20 les directives de cloisonnement

Variables de portée A.21 avec la clause privée

A.22 à l'aide de la clause par défaut (aucun)

exemples A.23 de la directive classée

exemple A.24 de la clause privée

exemples A.25 de la clause d'attribut de données de copyprivate

A.26 à l'aide de la directive de threadprivate

Utilisation A.27 des tableaux de longueur variable de C99

utilisation A.28 de clause de num_threads

Utilisation A.29 des éléments de partage du travail dans un élément critique

utilisation A.30 de Reprivatization

fonctions de verrou A.31 thread-safe

B. Stubs pour les fonctions de la bibliothèque Runtime

C. OpenMP C et grammaire C++

notation C.1

règles C.2

D. À l'aide de la clause de planification

Est, comportements Implémentation-Définis dans OpenMP C/C++

F. nouvelles fonctionnalités et clarifications dans la version 2,0

Voir aussi

Concepts

API OpenMP C et C++