Open mp

Páginas: 4 (886 palabras) Publicado: 26 de marzo de 2011
Directivas OpenMP
* atomic: Se utiliza cuando la operación atañe a sólo una posición de memoria, y tiene que ser actualizada sólo por un hilo simultáneamente. Operaciones tipo x++ o --x son lasque usan esta cláusula. Esta directiva no soporta clausulas OpenMP
Sintaxis:
#pragma omp atomic
expresión expression

Ejemplo:
#pragma omp atomiccount++;

* parallel: Esta directiva nos indica que la parte de código que la comprende puede ser ejecutada por varios hilos. Esta directiva soporta las clausulas: copyin, default (OpenMP),firstprivate, if (OpenMP), num_threads, private (OpenMP), reduction, shared (OpenMP)
Sintaxis:
#pragma omp parallel [clauses]
{
code_block
}

Ejemplo:
#pragma omp parallel num_threads(4){
int i = omp_get_thread_num();
printf_s("Hello from thread %d\n", i);
}

* for: Igual que parallel pero optimizado para los bucles for. La directiva for soporta lasclausulas: firstprivate, lastprivate, nowait, ordered, private, reduction, schedule.
Sitaxis
#pragma omp [parallel] for [clauses]
for_statement
Ejemplo:
#pragma omp for
for (i=nStart;i<=nEnd; ++i) {
#pragma omp atomic
nSum += i;

* section y sections: Indica secciones que pueden ejecutarse en paralelo pero por un único hilo. Esta directiva soporta lasclausulas: firstprivate, lastprivate, nowait, private (OpenMP), reduction.
Sintaxis:
#pragma omp [parallel] sections [clauses]
{
#pragma omp section
{
code_block

}Ejemplo:
#pragma omp parallel sections num_threads(4)
{
printf_s("Hello from thread %d\n", omp_get_thread_num());
#pragma omp section
printf_s("Hello from thread%d\n", omp_get_thread_num());
}

* single: La parte de código que define esta directiva, sólo se puede ejecutar un único hilo de todos los lanzados, y no tiene que ser obligatoriamente el hilo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • MP
  • Open
  • open
  • Mp
  • El Opeño
  • open
  • Open
  • El Opeño

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS