OpenMP: Paralelización Simplificada para Sistemas de Memoria Compartida
¿Qué es OpenMP?
OpenMP (Open Multi-Processing) es una API que permite la expresión de programas paralelos portables, de memoria compartida, a partir de programas secuenciales, con independencia del lenguaje (actualmente, en C, C++ y Fortran).
- A partir de la versión 4.0, OpenMP proporciona soporte para la explotación de sistemas híbridos o heterogéneos (CPU + GPU…).
- Es un modelo de programación paralela, de paralelismo explícito (paralelización dirigida por el programador), de memoria compartida.
Aproximación OpenMP
- La idea consiste en partir de un programa base secuencial.
- En una fase posterior, asumiendo un modelo de memoria compartida, se anota el programa base secuencial, especificando aspectos de cómo, desde un punto de vista de