Chapter

Euro-Par 2005 Parallel Processing

Volume 3648 of the series Lecture Notes in Computer Science pp 19-29

Tolerating Message Latency Through the Early Release of Blocked Receives

  • Jian KeAffiliated withComputer Systems Laboratory, School of Electrical & Computer Engineering, Cornell University
  • , Martin BurtscherAffiliated withComputer Systems Laboratory, School of Electrical & Computer Engineering, Cornell University
  • , Evan SpeightAffiliated withNovel System Architectures, IBM Austin Research Lab

* Final gross prices may vary according to local VAT.

Get Access

Abstract

Large message latencies often lead to poor performance of parallel applications. In this paper, we investigate a latency-tolerating technique that immediately releases all blocking receives, even when the message has not yet (completely) arrived, and enforces execution correctness through page protection. This approach eliminates false message data dependencies on incoming messages and allows the computation to proceed as early as possible. We implement and evaluate our early-release technique in the context of an MPI runtime library. The results show that the execution speed of MPI applications improves by up to 60% when early release is enabled. Our approach also enables faster and easier parallel programming as it frees programmers from adopting more complex nonblocking receives and from tuning message sizes to explicitly reduce false message data dependencies.