Memory Management for Concurrent RDMA: A Design for a Key-Value Store

  • Type:Diploma Thesis
  • Date:03.06.2014
  • Supervisor:

    Prof. Dr. Frank Bellosa, Marius Hillenbrand

  • Graduand:Benjamin Behringer
  • Links:PDF
  • Abstract:

    Recent work leveraged the advantages of remote direct memory access(RDMA) for read operations on key-value stores to improve the performance for read-heavy workloads. However, real-world application scenarios show that key-value stores also have to cope with write-heavy workloads. We present Falafel, a design for an in-memory key-value store that allows concurrent lock-free read and write operations by Clients via RDMA.

    We describe our memory management scheme that allows clients to concurrently read and write via RDMA without interference or communication with other clients or the server to regions in the Server memory. We use a server-side generational semi-space garbage collector to remove deleted entries from the key-value store. We present a hash table design based on open addressing with linear probing that allows lock-free concurrent client operations via RDMA and is resilient to client failure.

    We have implemented a prototype of Falafel which achieves 5.2 Mops/s GETs and 1.9 Mops/s SETs on our 40 Gbit/s InfiniBand network cards. A client can perform GET operations on the server in 4.5 μs and SET operations in 6.8 μs.

    BibTex:

    @mastersthesis{behringer14keyvaluestore,
     author = {Benjamin Behringer},
     title = {Memory Management for Concurrent RDMA: A Design for a Key-Value Store},
     type = {Diploma Thesis},
     school = {Operating Systems Group, Karlsruhe Institute of Technology (KIT), Germany},
     month = jun # "3",
     year = 2014,
     note = {\url{http://os.itec.kit.edu/}}
    }