CeryZhai / Wisp

Wisp is a simple key-value storage database specially designed for RDMA-enhanced network.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wisp

Wisp is a simple key-value store service specially designed for RDMA-enhanced network.

##dependency

  • zeromq 4.0.5 or higher
  • Mellanox OFED v3.0-2.0.1 stack or higher
  • libcuckoo

##usage

chlou@cube0:~/Wisp$ ./wisp
--------------------------------------------------------------------------------
> Wisp v0.1.0
--------------------------------------------------------------------------------
Usage:
  [-h]                                                        help
  [-s]                                                        run as server
  [-c SERVER_ADDRESS]                                         run as client
  [-p SERVER_ADDRESS] [--key_size key_size] [--payload_size payload_size]
                                                              run as client_perf
  [-t]                                                        use tcp instead of rdma
--------------------------------------------------------------------------------

[ Examples ]

< simple cli >
  server: ./wisp -s
  client: ./wisp -c 10.0.0.100
< simple cli using tcp >
  server: ./wisp -s -t
  client: ./wisp -c 10.0.0.100 -t
< perf test >
  server: ./wisp -s
  client: ./wisp -p 10.0.0.100 --key_size 3 --payload_size 10
--------------------------------------------------------------------------------

##update in scripts, add simple_kv: a python-implemented key/value store service with performance test. This script is experimental. The test shows that the performance of python-rdma is not so promising. On occasion that keysize=3,payloadsize=100, the qps is only around 20000. The main reason the python-rdma write is very costful and costs around 30 us to finish. That's even under the premise that the test is boosted with some tricks like preheat the server by sending some requests before the formal test so the client needn't wait until the requests finish.

##acknowledgment some codes comes from Xinda Wei's rdma_lib(http://ipads.se.sjtu.edu.cn:1312/weixd/rdma_lib), thanks Xinda!

About

Wisp is a simple key-value storage database specially designed for RDMA-enhanced network.


Languages

Language:C++ 88.7%Language:Python 10.4%Language:Makefile 0.9%