Skip to main content

Lock-Free Asynchronous Rendezvous Design for MPI Point-to-Point Communication

  • Conference paper
Recent Advances in Parallel Virtual Machine and Message Passing Interface (EuroPVM/MPI 2008)

Abstract

Message Passing Interface (MPI) is the most commonly used method for programming distributed-memory systems. Most MPI implementations use a rendezvous protocol for transmitting large messages. One of the features desired in a MPI implementation is the ability to asynchronously progress the rendezvous protocol. This is important to provide potential for good computation and communication overlap to applications. There are several designs that have been proposed in previous work to provide asynchronous progress. These designs typically use progress helper threads with support from the network hardware to make progress on the communication. However, most of these designs use locking to protect the shared data structures in the critical communication path. Secondly, multiple interrupts may be necessary to make progress. Further, there is no mechanism to selectively ignore the events generated during communication. In this paper, we propose an enhanced asynchronous rendezvous protocol which overcomes these limitations. Specifically, our design does not require locks in the communication path. In our approach, the main application thread makes progress on the rendezvous transfer with the help of an additional thread. The communication between the two threads occurs via system signals. The new design can achieve near total overlap of communication with computation. Further, our design does not degrade the performance of non-overlapped communication. We have also experimented with different thread scheduling policies of Linux kernel and found out that the round robin policy provides the best performance. With the new design we have been able to achieve 20% reduction in time for a matrix multiplication kernel with MPI+OpenMP paradigm on 256 cores.

This research is supported in part by DOE grants DE-FC02-06ER25755 and DE-FC02-06ER25749, NSF Grants CNS-0403342 and CCF-0702675; grants from Intel, Sun MicroSystems, Cisco Systems, and Linux Networks; and equipment donations from Intel, AMD, Apple, IBM, Microway, PathScale, SilverStorm and Sun MircroSystems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Sur, S., Jin, H.W., Chai, L., Panda, D.K.: RDMA Read Based Rendezvous Protocol for MPI over InfiniBand: Design Alternatives and Benefits. In: Symposium on Principles and Practice of Parallel Programming (PPOPP 2006) (March 2006)

    Google Scholar 

  2. Network-Based Computing Laboratory: MVAPICH: MPI over InfiniBand and iWARP, http://mvapich.cse.ohio-state.edu

  3. InfiniBand Trade Association: InfiniBand Architecture Specification, http://www.infinibandta.com

  4. Kumar, R., Mamidala, A.R., Koop, M.J., Santhanaraman, G., Panda, D.K.: Lock-free Asynchronous Rendezvous Design for MPI Point-to-point Communication. Technical report, Dept. of Computer Science and Engineering, The Ohio State University (2008)

    Google Scholar 

  5. Mellanox: Mellanox Technologies, http://www.mellanox.com

  6. OpenFabrics Alliance: OpenFabrics, http://www.openfabrics.org/

  7. OSU Micro-Benchmarks, http://mvapich.cse.ohio-state.edu/benchmarks/

  8. NAS Parallel Benchmarks (NPB), www.nas.nasa.gov/Software/NPB/

  9. Sandia National Laboratories: Sandia MPI Micro-Benchmark Suite, http://www.cs.sandia.gov/smb/

  10. Kumar, V., Grama, A., Gupta, A., Karypis, G.: Introduction to parallel computing: design and analysis of algorithms. Benjamin-Cummings Publishing Co., Inc. (1994)

    Google Scholar 

  11. OpenMP, http://openmp.org/wp/

  12. Brightwell, R., Underwood, K.D.: An Analysis of the Impact of MPI Overlap and Independent Progress. In: ICS 2004: Proceedings of the 18th annual international conference on Supercomputing (March 2004)

    Google Scholar 

  13. Eicken, T.V., Culler, D.E., Goldstein, S.C., Schauser, K.E.: Active messages: a mechanism for integrated communication and computation. In: ISCA 1992: Proceedings of the 19th annual international symposium on Computer architecture. ACM, New York (1992)

    Google Scholar 

  14. Nieplocha, J., Tipparaju, V., Krishnan, M., Panda, D.K.: High performance remote memory access communication: The armci approach. Int. J. High Perform. Comput. Appl. (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Alexey Lastovetsky Tahar Kechadi Jack Dongarra

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kumar, R., Mamidala, A.R., Koop, M.J., Santhanaraman, G., Panda, D.K. (2008). Lock-Free Asynchronous Rendezvous Design for MPI Point-to-Point Communication. In: Lastovetsky, A., Kechadi, T., Dongarra, J. (eds) Recent Advances in Parallel Virtual Machine and Message Passing Interface. EuroPVM/MPI 2008. Lecture Notes in Computer Science, vol 5205. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87475-1_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87475-1_27

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87474-4

  • Online ISBN: 978-3-540-87475-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics