Java Sockets on RDMA (JSOR) vs jVerbs performance in Infiniband

前端 未结 2 616
暗喜
暗喜 2021-01-03 12:00

I have basic understanding of both JSOR and jVerbs.

Both handle limitations of JNI and use fast path to reduce latency. Both of them use user Verbs RDMA interface fo

2条回答
  •  花落未央
    2021-01-03 12:28

    Here are some numbers using DiSNI -- the newly open sourced successor of IBM's jVerbs -- and DaRPC, the low-latency RPC library using DiSNI.

    • DiSNI RDMA read latencies for 64 bytes are below 2 microseconds
    • DaRPC RDMA send/recv latencies for 64 bytes (request and response) are around 5 microseconds
    • The differences betwenn Java/DiSNI and C native RDMA are negligible for one-sided operations

    These benchmarks have been executed on two hosts connected using a Mellanox ConnectX-3 network interface.

    Here are the commands to execute the benchmarks:

    (1) Read benchmark

    Server:

    java -cp disni-1.0-jar-with-dependencies.jar:disni-1.0-tests.jar com.ibm.disni.examples.benchmarks.AppLauncher -t java-rdma-server -a 
    -o read -s 64 -k 100000 -p

    Client:

    java -cp disni-1.0-jar-with-dependencies.jar:disni-1.0-tests.jar com.ibm.disni.examples.benchmarks.AppLauncher -t java-rdma-client -a 
    -o read -s 64 -k 100000 -p

    (2) Send/recv benchmark

    Server:

    java -cp darpc-1.0-jar-with-dependencies.jar:darpc-1.0-tests.jar com.ibm.darpc.examples.server.DaRPCServer -a 
    -d -l 64 -r 64

    Client:

    java -cp darpc-1.0-jar-with-dependencies.jar:darpc-1.0-tests.jar com.ibm.darpc.examples.client.DaRPCClient -a 
    -k 1000000 -l 64 -r 64 -b 1

提交回复
热议问题