MPI vs OpenMP: Un caso de estudio sobre la generación del conjunto de Mandelbrot

Palabras clave: MPI, OpenMP, comptuación paralela, conjunto Mandelbrot, C

Resumen

Algunas de las herramientas más populares hoy en día para la programación paralela son Interfaz de Paso de Mensajes y Multiprocesamiento Abierto. Es de interés comparar estas herramientas en la resolución de los mismos tipos de problemas, debido a la utilización de diferentes enfoques en la comunicación entre tareas. Este trabajo tiene como objetivo contribuir a este empeño al ejecutar pruebas en una arquitectura de memoria compartida y centralizada en el caso de problemas con una solución completamente paralela. El caso de estudio seleccionado fue la computación paralela del conjunto de Mandelbrot. Las pruebas se realizaron para diferentes límites de iteración, cantidad de procesadores y variantes de implementación en C++. Los resultados muestran un mejor desempeño en el caso de Multiprocesamiento Abierto.

Descargas

La descarga de datos todavía no está disponible.

Citas

R. Trobec, B. Slivnik, P. Bulic, and B. Robic, “Programming Multi-core and Shared Memory Multiprocessors Using OpenMP,” in Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms, ser. Undergraduate Topics in Computer Science, R. Trobec, B. Slivnik, P. Bulic, and B. Robic, Eds. Cham: Springer International Publishing, 2018, pp. 47–86.

M. J. Quinn, “Shared-Memory Programming,” in Parallel Programming in C with MPI and OpenMP. McGraw-Hill Education, 2003, pp. 404–435.

R. Trobec, B. Slivnik, P. Bulic, and B. Robic, “MPI Processes and Messaging,” in Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms, ser. Undergraduate Topics in Computer Science, R. Trobec, B. Slivnik, P. Bulic, and B. Robic, Eds. Cham: Springer International Publishing, 2018, pp. 87–132.

M. J. Quinn, “Message-Passing Programming,” in Parallel Programming in C with MPI and OpenMP. McGraw-Hill Education, 2003, pp. 93–114.

P. Czarnul, “Generic Taxonomy of Parallel Computing Systems,” in Parallel Programming for Modern High Performance Computing Systems. Chapman & Hall/CRC, 2018, pp. 11–12.

M. McCool, J. Reinders, and A. Robison, “Mandelbrot,” in Structured Parallel Programming: Patterns for Efficient Computation. Morgan Kaufmann, Jun. 2012, pp. 131–143.

J. M. Stewart, “Two-Dimensional Graphics,” in Python for Scientists, 2nd ed. Cambridge University Press, 2017, pp. 82–108.

I. Stewart and A. C. Clarke, “The Nature of Fractal Geometry,” in The Colours of Infinity: The Beauty and Power of Fractals. Clear Press Ltd, 2004, pp. 2–23.

M. Tracolli, “Parallel generation of a Mandelbrot set,” VIRT&L-COMM, Apr. 2016. [Online]. Available: http://services.chm.unipg.it/ojs/index.php/virtlcomm/article/view/112

John Burkardt, “MANDEBRTOT - ASCII Portable Pixel Map (PPM) Image of the Mandelbrot Set,” Mar. 2020. [Online]. Available: https://people.sc.fsu.edu/~jburkardt/cpp_src/mandelbrot_openmp/mandelbrot_openmp.html

P. Czarnul, “Master-Slave,” in Parallel Programming for Modern High Performance Computing Systems. Chapman & Hall/CRC, 2018, pp. 35–39.

——, “Message Passing Interface (MPI),” in Parallel Programming for Modern High Performance Computing Systems. Chapman & Hall/CRC, 2018, pp. 74–102.

M. J. Quinn, “Floyd’s Algorithm,” in Parallel Programming in C with MPI and OpenMP. McGraw-Hill Education, 2003, pp. 137–158.

W. McKinney, “Plotting and Visualization,” in Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, 2nd ed. O’Reilly Media, Inc., 2017, pp. 250–283.

P. Czarnul, “OpenMP,” in Parallel Programming for Modern High Performance Computing Systems. Chapman & Hall/CRC, 2018, pp. 102–118.

——, “HPC related metrics,” in Parallel Programming for Modern High Performance Computing Systems. Chapman & Hall/CRC, 2018, pp. 34–35.

R. Trobec, B. Slivnik, P. Bulic, and B. Robic, “History of Parallel Computing, Systems and Programming,” in Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms, ser. Undergraduate Topics in Computer Science, R. Trobec, B. Slivnik, P. Bulic, and B. Robic, Eds. Cham: Springer International Publishing, 2018, pp. 9–11.

M. J. Quinn, “Speedup and efficiency,” in Parallel Programming in C with MPI and OpenMP. McGraw-Hill Education, 2003, pp. 159–161.

Recibido: 2020-09-22
Aceptado: 2020-09-23
Publicado: 2020-09-30
Cómo citar
[1]
E. Soto Gómez, «MPI vs OpenMP: Un caso de estudio sobre la generación del conjunto de Mandelbrot», Innov. softw., vol. 1, n.º 2, pp. 12-26, sep. 2020.
Sección
Artículos originales