1.2 Définition des termes
Les termes suivants sont utilisés dans le document :
cloisonnement
Un point de synchronisation qui doit être atteint par tous les threads dans une équipe. Chaque thread attend que tous les threads de l'équipe arrivent à ce stade. Il existe des barrières explicites identifiés par des directives et les cloisonnements implicites créés par l'implémentation.élément
un élément est une instruction. il se compose d'une directive et du bloc structuré suivant. Notez que certaines directives ne sont pas partie d'un élément. (Voir l'openmp-directive dans annexe C).directive
Le c ou C++ #pragma suivi par l'identificateur d' omp , définissez le texte, et une nouvelle ligne. La directive spécifie le comportement du programme.étendue dynamique
Toutes les instructions de l'étendue lexicale, ainsi que toute instruction à l'intérieur d'une fonction qui est exécutée à la suite de l'exécution des instructions dans l'étendue lexicale. Une étendue dynamique est également appelée d'une zone.étendue lexicale
Instructions lexicale contenues dans un bloc structuré.thread principal
Le thread qui crée une équipe lorsqu' une région parallèle est entrée.région parallèle
Instructions qui les lient à un élément de parallèle OpenMP et peuvent être exécutées par plusieurs threads.private
Noms de variables privés un bloc de stockage qui est unique au thread qui effectue la référence. Notez qu'il existe plusieurs façons de spécifier une variable est privée : une définition dans une région parallèle, une directive de threadprivate , un privé, firstprivate, elle, ou clause de réduction , ou à l'aide de la variable comme variable de contrôle de boucle de pourdans une boucle de pour immédiatement après une directive de pour ou de parallèle pour .zone
Une étendue dynamique.zone série
Instructions exécutées uniquement par le thread principal en dehors de l'étendue dynamique d'une région parallèle.sérialisez
Pour exécuter un élément parallèle avec une équipe de thread se compose uniquement d'un thread unique (qui est le thread principal pour cet élément parallèle), avec la commande série d'exécution pour les instructions dans le bloc structurée (le même ordre que si le bloc n'étaient pas partie d'un élément parallèle), et sans aucun effet sur la valeur retournée par omp_in_parallel () (en dehors de les effets de tous les éléments parallèles imbriqués).shared (partagé)
Noms de variables partagés multiples d'un bloc de stockage. Tous les threads dans une équipe qui accèdent à cette variable accèdent à ce bloc unique de stockage.bloc structuré
Un bloc structurée est une instruction (unique ou composée) que a une entrée unique et une sortie unique. Aucune instruction n'est un bloc structuré s'il existe un saut dans ou hors de cette instruction (appel y compris à longjmp(3C) ou l'utilisation de throw, mais un appel à sortie est autorisé). Une instruction composée est un bloc structuré si son exécution commence toujours à l'adresse { ouvrant et se termine toujours à l'adresse **}**fermante. Une instruction d'expression, l'instruction de sélection, l'instruction d'itération, ou le bloc de test est un bloc structuré si l'instruction composée correspondante obtenues par l'englobant dans { et **}**serait un bloc structuré. une instruction de saut, étiquetée instruction, ou instruction de déclaration n'est pas un bloc structuré.équipe
Un ou plusieurs threads coopérant à l'exécution d'un élément.thread
une entité d'exécution ayant un ordre d'exécution série, un ensemble de variables privées, et accès aux variables partagées.variable
Un identificateur, éventuellement qualifié par les noms d'espaces de noms, qui désigne un objet.