Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Qu es OpenMP?
OpenMP es una interfaz de programacin de aplicaciones (API) para la programacin
multiproceso de memoria compartida en mltiples plataformas. Permite aadir concurrencia a
los programas escritos en C, C++ y Fortran sobre la base del modelo de ejecucin fork-join. Est
disponible en muchas arquitecturas, incluidas las plataformas de Unix y de Microsoft Windows.
Se compone de un conjunto de directivas de compilador, rutinas de biblioteca, y variables de
entorno que influyen el comportamiento en tiempo de ejecucin.
Qu es OpenMP?
Un conjunto de directivas de compilacin usadas para la comunicacin.
Una librera de funciones en tiempo de ejecucin que habilita los parmetros paralelos
que se van a usar, tal como nmero de threads que van a participar y el nmero de cada
threads.
Un nmero limitado de las variables de entorno que pueden ser usadas para definir en
tiempo de ejecucin parmetros del sistema en paralelo tales como el nmero de threads.
Directivas de OpenMP
OpenMP comienza a travs de directivas, con funciones propias (que pueden ser condicionalmente compiladas) y
variables de entorno, que pueden modificar el comportamiento en tiempo de ejecucin.
Directiva de formato. Cada directiva inicia con #pragma omp ...
bloque de cdigo
Directivas OpenMp
if(expresin escalar)
private(lista de variables)
firstprivate(lista de variables)
default(shared | none)
shared(lista de variables)
copyin(lista de variables)
reduction(operador:lista de variables)
num_threads(expresin entera)
Libreras
Funciones
Ejemplo 1.
#include <omp.h>
#include <stdio.h>
}
return 0;
printf("Soy el thread=%d\n",pid);
int pid;
#include <stdlib.h>
int main( )
{