APCM: An Auto-Parallelism Computational Model. Increasing the performance of MPI applications in multi-core environments

Authors

  • André Luiz Lima da Costa Supercomputing Center for Industrial Innovation ( Centro de Supercomputação para Inovação Industrial ) – CSII, SENAI CIMATEC, Salvador, Brazil
  • Josemar Rodrigues de Souza Supercomputing Center for Industrial Innovation ( Centro de Supercomputação para Inovação Industrial ) – CSII, SENAI CIMATEC, Salvador, Brazil

Keywords:

Parallel programming, Hybrid model, MPI, OpenMP, Auto-parallelism

Abstract

Given the availability of computer clusters based on multi-core processors, the hybrid programming model has become an important ally of high-performance computing users in improving the performance of their parallel applications. However, creating hybrid applications is a complex task because it requires developers to be familiar with two distinct parallel programming models. Against this background, this article introduces APCM, an auto-parallelism computational model. APCM’s goal is to create hybrid parallel applications, i.e., OpenMP (memory programming) and a message-passing interface (MPI), from MPI applications. This goal is achieved in a simple, automated manner that is transparent for the user while increasing application performance. In the article’s conclusion, we present consistent results that attest the efficacy of the proposed model.

Downloads

Download data is not yet available.

References

[1] MPI. Message Passing Interface Forum. 1994. Available from: <www.mpi-forum.org>. Accessed on: 12 Apr 2013.
[2] OPENMPI. Open Source High Performance Computing. Available from: <www.open-mpi.org>. Accessed on: 12 Apr 2013.
[3] Lusk, E., Chan, A. Early Experiments with the OpenMP/MPI Hybrid Programming Model. IWOMP'08 Proceedings of the 4th international conference on OpenMP in a new era of parallelism. p. 37-47. 2008.
ISBN:3-540-79560-X 978-3-540-79560-5.
[4] Osthoff, C., Grunmann, P., Boito, F., Kassick, R., Pilla, L., Navaux, P., Schepke, C., Panetta, J., Maillard, N., Dias, P. L. S., Walko, R. Improving Performance on Atmospheric Models through a Hybrid OpenMP/MPI Implementation. Parallel and Distributed Processing with Applications (ISPA), 2011 IEEE 9th International Symposium on.
[5] Dong Li, Supinski, B.R., Schulz, M., Cameron, K., Nikolopoulos, D. S. Hybrid MPI/OpenMP power-aware computing. Parallel & Distributed Processing (IPDPS), 2010 IEEE International Symposium on.
[6] Rabenseifner, R., Hager, G., Jost, G. Hybrid MPI/OpenMP Parallel Programming on Clusters of Multi-Core SMP Nodes. Parallel, Distributed and Network-based Processing, 2009 17th Euromicro International Conference on.
[7] Torquati, M., Vanneschi, M., Amini, M., Guelton, S., Keryell, R., Lanore, V., Pasquier, F. X., Barreteau, M., Barrère, R., Petrisor, C. T., Lenormand, E., Cantini C., Stefani. F. An innovative compilation tool-chain for embedded multi-core architectures. in Embedded World Conference 2012. Nuremberg, Germany, 2/2012.
[8] Grosser, T., Zheng, H., Allor, R., Simburger, A., Groblinger, A., Pouchet, L. N. Polly – Polyhedral Optimization in LLVM. In Christophe Alias and Cédric Bastoul, editors, Proceedings of the First International Workshop on Polyhedral Compilation Techniques (IMPACT). INRIA Grenoble Rhône-Alpes, April 2011.
[9] Ragheshi, A. A Framework for Automatic OpenMP Code Generation. Dissertação de Mestrado. Department of Computer Science and Engineering, Indian Institute of Technology, Madras. 2011.
[10] Dave, C., Bae, H, Min, S. J., Lee, S., Eigermann, R., Midkiff, S.. Cetus: A Source-to-Source Compiler Infrastructure for Multicores. IEEE Computer, vol. 42, no. 12, pp 36-42, Dec. 2009.

Downloads

Published

2018-04-13

How to Cite

Costa, A. L. L. da, & Souza, J. R. de. (2018). APCM: An Auto-Parallelism Computational Model. Increasing the performance of MPI applications in multi-core environments. Journal of Computer Science and Technology, 13(03), p. 167–172. Retrieved from https://journal.info.unlp.edu.ar/JCST/article/view/589

Issue

Section

Original Articles