Herd
-
Upload
syoyo-fujita -
Category
Technology
-
view
11.792 -
download
6
description
Transcript of Herd
Reading“Using RDMA Efficiently
for Key-Value Services”[1]
@syoyo
Thursday, August 7, 14
Overview
• KVS(GET/PUT) + RDMA
• 26 million key-value op per second
• 5 us average latency
• 1 key-value item size <= 1024 bytes
• 2x faster than previous method
Thursday, August 7, 14
Previous work
• Pilaf : C. Mitchell, Y. Geng, and J. Li. Using One-Sided RDMA Reads to Build a Fast, CPU-Efficient Key-Value Store. In USENIX ATC, 2013.
• FaRM : A.Dragojevic,D.Narayanan,O.Hodson,andM.Castro. FaRM: Fast Remote Memory. In USENIX NSDI, 2014.
• MICA: H. Lim, D. Han, D. G. Andersen, and M. Kaminsky. MICA: A Holistic Approach to Fast In-Memory Key-Value Storage. In USENIX NSDI, 2014.
Thursday, August 7, 14
• Use RDMA WRITE instead of RDMA READ
• Half round trip latency
Thursday, August 7, 14
ServerClient
Client
RDMA WRITE UC
RDMA WRITE UCpolling
SEND UD
SEND UD
Thursday, August 7, 14
Op
• 1) client -> server request(PUT, GET) using RDMA WRITE
• 2) server polls per-client memory region to check request
• 3) Do key-value lookup
• 4) server -> client reply using SEND
Thursday, August 7, 14
Evaluation
• Apt
• IB FDR(56 Gbps) ConnectX-3
• Susitna
• RoCE(40GbE CX-3 MX313A)
Thursday, August 7, 14
Thursday, August 7, 14
Thursday, August 7, 14
Thursday, August 7, 14
Thursday, August 7, 14
References
• [1] https://www.cs.cmu.edu/~akalia/doc/herd_readable.pdf
• https://github.com/efficient/HERD
Thursday, August 7, 14