Lightweight kernel-level primitives for high-performance MPI intra-node communication over multi-core systems

Modern processors have multiple cores on a chip to overcome power consumption and heat dissipation issues. As more and more compute cores become available on a single node, it is expected that node-local communication will play an increasingly greater role in overall performance of parallel applications such as MPI applications. It is therefore crucial to optimize intra-node communication paths utilized by MPI libraries. In this paper, we propose a novel design of a kernel extension, called LiMIC2, for high-performance MPI intra-node communication over multi-core systems. LiMIC2 can minimize the communication overheads by implementing lightweight primitives and provide portability across different interconnects and flexibility for performance optimization. Our performance evaluation indicates that LiMIC2 can attain 80% lower latency and more than three times improvement in bandwidth. Also the experimental results show that LiMIC2 can deliver bidirectional bandwidth greater than 11GB/s.

[1]  Sayantan Sur,et al.  Analysis of design considerations for optimizing multi-channel MPI over InfiniBand , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[2]  Hiroshi Harada,et al.  PM2: High Performance Communication Middleware for Heterogeneous Network Environments , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[3]  G. Grell,et al.  A description of the fifth-generation Penn State/NCAR Mesoscale Model (MM5) , 1994 .

[4]  Guillaume Mercier,et al.  Data Transfers between Processes in an SMP System: Performance Study and Application to MPI , 2006, 2006 International Conference on Parallel Processing (ICPP'06).

[5]  CongDuc Pham,et al.  A Software Suite for High-Performance Communications on Clusters of SMPs , 2002, Cluster Computing.

[6]  G.E. Moore,et al.  Cramming More Components Onto Integrated Circuits , 1998, Proceedings of the IEEE.

[7]  Dhabaleswar K. Panda,et al.  Designing High Performance and Scalable MPI Intra-node Communication Support for Clusters , 2006, 2006 IEEE International Conference on Cluster Computing.

[8]  D. van der Spoel,et al.  GROMACS: A message-passing parallel molecular dynamics implementation , 1995 .

[9]  Sayantan Sur,et al.  LiMIC: support for high-performance MPI intra-node communication on Linux cluster , 2005, 2005 International Conference on Parallel Processing (ICPP'05).

[10]  Anthony Skjellum,et al.  A High-Performance, Portable Implementation of the MPI Message Passing Interface Standard , 1996, Parallel Comput..

[11]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .

[12]  Bernard Tourancheau,et al.  BIP: A New Protocol Designed for High Performance Networking on Myrinet , 1998, IPPS/SPDP Workshops.