A Tool for Optimizing Runtime Parameters of Open MPI

  • Mohamad Chaarawi
  • Jeffrey M. Squyres
  • Edgar Gabriel
  • Saber Feki
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5205)


Clustered computing environments, although becoming the predominant high-performance computing platform of choice, continue to grow in complexity. It is relatively easy to achieve good performance with real-world MPI applications on such platforms, but obtaining the best possible MPI performance is still an extremely difficult task, requiring painstaking tuning of all levels of the hardware and software in the system. The Open Tool for Parameter Optimization (OTPO) is a new framework designed to aid in the optimization of one of the key software layers in high performance computing: Open MPI. OTPO systematically tests large numbers of combinations of Open MPI’s run-time tunable parameters for common communication patterns and performance metrics to determine the “best” set for a given platform. This paper presents the concept, some implementation details and the current status of the tool, as well as an example optimizing InfiniBand message passing latency by Open MPI.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Frigo, M., Johnson, S.G.: The Design and Implementation of FFTW3. Proceedings of IEEE 93(2), 216–231 (2005)CrossRefGoogle Scholar
  2. 2.
    Gabriel, E., Fagg, G.E., Bosilca, G., Angskun, T., Dongarra, J.J., Squyres, J.M., Sahay, V., Kambadur, P., Barrett, B., Lumsdaine, A., Castain, R.H., Daniel, D.J., Graham, R.L., Woodall, T.S.: Open MPI: Goals, Concept, and Design of a Next Generation MPI Implementation. In: Proceedings, 11th European PVM/MPI Users’ Group Meeting, Budapest, Hungary, September 2004, pp. 97–104 (2004)Google Scholar
  3. 3.
    Gabriel, E., Huang, S.: Runtime optimization of application level communication patterns. In: 12th International Workshop on High-Level Parallel Programming Models and Supportive Environments, Long Beach, CA, USA (March 2007)Google Scholar
  4. 4.
    Gropp, W., Lusk, E., Doss, N., Skjellum, A.: A high-performance, portable implementation of the MPI message passing interface standard. Parallel Computing 22(6), 789–828 (1996)CrossRefMATHGoogle Scholar
  5. 5.
  6. 6.
    Message Passing Interface Forum. MPI: A Message Passing Interface Standard (June 1995), http://www.mpi-forum.org/
  7. 7.
    Message Passing Interface Forum. MPI-2: Extensions to the Message Passing Interface (July 1997), http://www.mpi-forum.org/
  8. 8.
    Pjesivac-Grbovic, J., Angskun, T., Bosilca, G., Fagg, G.E., Gabriel, E., Dongarra, J.J.: Performance Analysis of MPI Collective Operations. Cluster Computing 10(2), 127–143 (2007)CrossRefGoogle Scholar
  9. 9.
    Reussner, R., Sanders, P., Prechelt, L., Muller, M.: SKaMPI: A Detailed, Accurate MPI Benchmark. In: Alexandrov, V.N., Dongarra, J. (eds.) PVM/MPI 1998. LNCS, vol. 1497, pp. 52–59. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  10. 10.
    TOP 500 webpage (2007), http://www.top500.org/
  11. 11.
    Turner, D., Chen, X.: Protocol-dependent message-passing performance on linux clusters. In: Cluster Computing, 2002. Proceedings. 2002 IEEE International Conference on Linux Clusters, pp. 187–194. IEEE Computer Society Press, Los Alamitos (2002)Google Scholar
  12. 12.
    Whaley, R.C., Petite, A.: Minimizing development and maintenance costs in supporting persistently optimized blas. Software: Practice and Experience 35(2), 101–121 (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Mohamad Chaarawi
    • 1
    • 2
  • Jeffrey M. Squyres
    • 2
  • Edgar Gabriel
    • 1
  • Saber Feki
    • 1
  1. 1.Parallel Software Technologies Laboratory, Department of Computer ScienceUniversity of HoustonUSA
  2. 2.Cisco SystemsSan JoseUSA

Personalised recommendations