Análise do Desempenho Computacional de Algoritmos Paralelizados com OpenMP e MPI Executados em Raspberry Pi

  • Augusto Linhares Junqueira Ignácio IFRO
  • Wanderson Roger Azevedo Dias IFRO

Resumo


A computação paralela vem crescendo rapidamente em termos de desempenho computacional, tendo como seus adventos os modelos arquiteturais multiprocessador e multicomputador. Entretanto, não bastam estarem disponíveis tais arquiteturas (hardware), se estas não são devidamente exploradas, ou seja, o uso da programação paralela (software). Assim, este artigo apresenta o desempenho computacional da execução do algoritmo de Números Primos, implementado de forma sequencial e paralela, usando as bibliotecas OpenMP e MPI para o paralelismo, e executado em plataforma Raspberry Pi. Para a entrada de 5 milhões de números, os speedups obtidos para o algoritmo OpenMP foi de 3x e 1.7x, comparado com as implementações sequencial e MPI, respectivamente.

Referências

Andrews, G. R. (2001) “Foundations of Multithreaded, Parallel, and Distributed Programming”. Boston, Massachusetts, EUA: Addison-Wesley, 2nd edition, 664p.

Akel, A. (2023) “A Importância dos Números Primos – Unidades Imaginárias”, disponível em https://medium.com/unidades-imaginárias/a-importância-dos-números-primos-1249a54cc57e. Acessado em 22 de julho de 2023.

Bell, G., Gray, J. (2002) “What’s Next in High-Performance Computing?”. In Communications of the ACM, 45(2):91-95, February.

Gebali, F. (2011) “Algorithms and Parallel Computing”. Wiley, 1st edition, 364p.

Jin, H., Jespersen, D., Mehrotra, P., Biswas, R., Huang, L., Chapman, B. (2011) “High Performance Computing using MPI and OpenMP on Multi-core Parallel Systems”. In Parallel Computing, 37(9):562-575, September.

Lima, F. A.; Dias, W. R. A.; Moreno, E. D. (2020) “Implementação de um Cluster Embarcado usando a Plataforma Raspberry Pi”, In Escola Regional de Alto Desempenho do Rio de Janeiro (ERAD-RJ), Nova Iguaçu, RJ, Brasil, pp. 11-15.

Lima, F. A.; Moreno, E. D.; Dias, W. R. A. (2016) “Performance Analysis of a Low Cost Cluster with Parallel Applications and ARM Processors”, In IEEE Latin America Transactions, 14(11):4591-4596, December, 2016.

Mpi, (2023) “OpenMPI: Open Source High Performance Computing”, disponível em http://www.open-mpi.org/. Acessado em 20 de julho de 2023.

Mpi, (2023) “A Message-Passing Interface Standard Version 2.1”, disponível em https://www.mpi-forum.org/docs/mpi21-report.pdf. Acessado em 25 de junho de 2023.

OpenMP, (2023) “The OpenMP API Specification for Parallel Programming”, disponível em http://openmp.org/. Acessado em 17 de julho de 2023.

Pacheco, P. S. (2011) “An Introduction to Parallel Programming”. Morgan Kaufmann Publishers, 1st Ed., 370p.

Panetta, J., Filho, P. R. P. de S., Filho, C. A. da C., Motta, F. M. R. da, Pinheiro, S. S., Junior, I. P., Rosa, A. L. R., Monnerat, L. R., Carneiro, L. T., Albrecht, C. H. B. de. (2007) “Computational Characteristics of Production Seismic Migration an its Performance on Novel Processor Architectures”. In Proceedings of the 19th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD), Gramado, RS, Brazil, pp. 11-18.

Parhami, B. (2006) “Introduction to Parallel Processing Algorithms and Architectures”. New York, USA: Kluwer Academic Publishers, 1st edition, 532p.

Petersen, W. P., Arbenz, P. (2004) “Introduction to Parallel Computing”. New York, EUA: Oxford University Press, 1st edition, 259p.

Rose, C. D., Navaux, P. (2002) “Fundamentos de Processamento de Alto Desempenho”. Anais da II Escola Regional de Alto Desempenho (ERAD-RS), São Leopoldo, RS, pp. 3-29.

Silberschatz, A., Peter, G., Gagne, G. (2001) “Sistemas Operacionais Conceitos e Aplicações”. Campus, 8ª edição, 618p.

Souto, R. P., Ávila, R. B., Navaux, P. A. O., Py, M., Maillard, N., Diverio, T. A., Velho, H. F. de C., Stephany, S., Preto, A., Panetta, J., Rodrigues, E., Almeida, E. (2007) “Processing Mesoscale Climatology in a Grid Environment”. In Proceedings of the Seventh IEEE International Symposium on Cluster Computing and the Grid (CCGRID'07), Rio de Janeiro, RJ, Brazil, pp. 363-370.

Top500. (2023) “Top 500 Supercomputing Site”, disponível em https://top500.org/. Acessado em 01 de agosto de 2023.

Trobec, R., Slivnik, B., Bulić, P., Robič, B. (2018) “Introduction to Parallel Computing From Algorithms to Programming on State-of-the-Art Platforms”. Berlim, Alemanha: Springer, 1st edition, 255p.

Xavier, C., Sachetto, R., Vieira, V., Santos, R. W. dos, JR, W. M. (2007) “Multi level Parallelism in the Computational Modeling of the Heart”. In Proceedings of the 19th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD), Gramado, RS, Brazil, pp. 3-10.
Publicado
17/10/2023
Como Citar

Selecione um Formato
IGNÁCIO, Augusto Linhares Junqueira; DIAS, Wanderson Roger Azevedo. Análise do Desempenho Computacional de Algoritmos Paralelizados com OpenMP e MPI Executados em Raspberry Pi. In: WORKSHOP DE INICIAÇÃO CIENTÍFICA - SIMPÓSIO EM SISTEMAS COMPUTACIONAIS DE ALTO DESEMPENHO (SSCAD), 24. , 2023, Porto Alegre/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 41-48. DOI: https://doi.org/10.5753/wscad_estendido.2023.235967.