RAMS: a RDMA-enabled I/O cache architecture for clustered network servers

Previous studies show that intra-cluster communication easily becomes a major performance bottleneck for a wide range of small write-sharing workloads especially read-only workloads in modern clustered network servers. A Remote Direct Memory Access (RDMA) technique has been recommended by many researchers to address the problem but how to well utilize RDMA is still in its infancy. This paper proposed a novel solution to boost intra-cluster communication performance by creatively developing a RDMA-enabled collaborative I/O cache Architecture called RAMS, which aims to smartly cache the most recently used RDMA-based intra-cluster data transfer processes for future reuse. RAMS makes two major contributions to facilitate the RDMA deployment: 1) design a novel RDMA-based user-level buffer cache architecture to cache both intra-cluster transferred data and data references; 2) develop three propagated update protocols to attack a RDMA read failure problem. Comprehensive experimental results show that three proposed new update protocols of RAMS can slash the RDMA read failure rate by 75%, and indirectly boost the system throughput by more than 50%, compared with a baseline system using Remote Procedure Call (RPC).

[1]  Kostas Magoutis,et al.  Design and Implementation of a Direct Access File System (DAFS) Kernel Server for FreeBSD , 2002, BSDCon.

[2]  Dhabaleswar K. Panda,et al.  High performance implementation of MPI derived datatype communication over InfiniBand , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[3]  Dhabaleswar K. Panda,et al.  Design and implementation of MPICH2 over InfiniBand with RDMA support , 2003, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[4]  Charles L. Seitz,et al.  Myrinet: A Gigabit-per-Second Local Area Network , 1995, IEEE Micro.

[5]  Dhabaleswar K. Panda,et al.  Optimizing mechanisms for latency tolerance in remote memory access communication on clusters , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[6]  SkjellumAnthony,et al.  A high-performance, portable implementation of the MPI message passing interface standard , 1996 .

[7]  Liviu Iftode,et al.  User-level communication in cluster-based servers , 2002, Proceedings Eighth International Symposium on High Performance Computer Architecture.

[8]  Peter F. Corbett,et al.  The Direct Access File System , 2003, FAST.

[9]  Thu D. Nguyen,et al.  Cooperative caching middleware for cluster-based servers , 2001, Proceedings 10th IEEE International Symposium on High Performance Distributed Computing.