1. Indice de pagina
  2. 1. Introducción
  3. 2. Clausula de compartición de datos
  4. 2.1. default(shared|none)
  5. 2.2. shared(list)
  6. 2.3. private(list)
  7. 2.4. firstprivate(list)
  8. 2.5. lastprivate(list)
  9. 2.6. reduction(operator:list)
  10. 2.7. nowait
  11. 3. Clausulas de copia de datos
  12. 3.1. copyin(list)
  13. 3.2. copyprivate(list)

Clausulas OpenMP

Introducción

No todas las clausulas son validas para todas las directivas. La colección de clausulas válidas para una directiva en particular esta descrita en las directivas.
La mayoría de las clausulas aceptan listas de elementos separadas por comas. Todos los elementos de la lista tienen que ser visibles.

Clausula de compartición de datos

Los atributos de las clausulas para la comparticion de datos solo se aplica a las variables cuyos nombres son visibles en el constructor donde aparece la calusula.

default(shared|none)

Controla el atributo por defecto de comparticion de datos para variables referenciasdas en el contructor de la región paralela o tarea.

shared(list)

Declara uno o mas elementos que se comparten por las tareas generadas por el contructor de la región paralela o tarea.

private(list)

Declaro uno o mas elementos privados para la tarea.

firstprivate(list)

Declara uno o mas elementos privados para la tarea, y inicializados cada una a su correspondiente valor del elemento original en el momento que se encuentra el contructor.

lastprivate(list)

Declara uno o mas elementos privados implícitos a la tarea, y causa que el elemento original se actualiza después de terminar la región.

reduction(operator:list)

Declara una acumulación a partir de una lista de elementos usando un operador asociativo indicado.
La acumulación ocurre en la copia privada de cada elemento de la lista cuales son combinados con el elemento original.

nowait

Evita la sincronización implícita de las hebras al terminar el bloque de una directiva.

Clausulas de copia de datos

Estas clausulas soportan la copia de valores dentro de variables privadas en una tarea o hebra correspondiente a otra tarea o hebra del equipo.

copyin(list)

Copia los valores de las variables privadas de la hebra master en cada una de las otras pertenecientes al equipo de ejecución de la región paralela.

copyprivate(list)

Transmite el valor de un entorno de datos de una tarea a otra entorno de datos de las tarea pertenecientes a la región paralela

Creado por: Daniel Guerrero Martínez y Sergio Rodríguez Lumley 2010

Valid HTML 4.01 Transitional