Comments (5)
You should expect latency slightly higher than native maybe around 5-10us overhead max.
The code snippet you posted is problematic as you should post the receive request before the send is issued. Worst case the send from the other side is issued before the receive is posted and you will run into retries or on some transports your connections will be aborted.
I recommend running the benchmarks provided here: https://github.com/zrlio/disni/tree/master/src/test/java/com/ibm/disni/benchmarks
from disni.
I refactored the original benchmark code you reference into separate
- init and connect
- send msg to server and recv response from server
but I still use the CustomClientEndpoint. The CustomClientEndpoint::init() does a pre post recv request as the last line:
System.out.println("SimpleClient::initiated recv");
this.postRecv(wrList_recv).execute().free();
But as you mentioned, if I run the benchmark code directly using the default 1000 loops I do see about 40us average which is not bad.
java com.ibm.disni.benchmarks.RDMAvsTcpBenchmarkClient -a 192.168.0.37 -p 20886 -s 1024
SimpleClient::initiated recv
RDMAvsTcpBenchmarkClient::client channel set up
RDMA result:
Total time: 38.721645 ms
Bidirectional bandwidth: 0.04925794430511669 Gbytes/s
Bidirectional bandwidth: 0.3940635544409335 Gbits/s
Bidirectional average latency: 0.038721645 ms
from disni.
I recommend running more than just 1000 loops. 38ms total runtime is probably not enough to get stable/good performance. You have to keep in mind that in Java it takes a while until all code path are JIT compiled so initially there is a lot more overhead.
from disni.
Related Issues (20)
- Please provide support for ibv_modify_qp() HOT 14
- Affinity >64
- Use enum types instead of int
- Closing endpoint that was never connected: SEGFAULT HOT 1
- Any specific reason why SVCPostRecv.RecvWRMod statefull is immutable? HOT 4
- "setting up protection domain, no context found" error when running the examples HOT 4
- Usage of IbvMr.lKey vs. rKey on remote side when setting up WRITE/READ operation HOT 2
- Version mismatch of pom and configure.ac
- Problem with RDMAvsTcpBenchmark of DiSNI over SoftRoCE HOT 11
- register memory that larger than 4GB HOT 11
- Need proper handling for RDMA_CM_EVENT_ROUTE_ERROR HOT 10
- work completion event received with wrong value HOT 16
- 执行configure 报错 HOT 12
- UNKNOWN, srcAddress /0.0.0.0:0 HOT 33
- What happened of idea using Pure java implementation from jVerbs? HOT 3
- our target subsystem name does not follow the NVMe spec, but we already fixed with this, how can I change jNVMf code to connect our target well? HOT 1
- blocked when use tcp to connect rdma server HOT 3
- Support raw Ethernet programming?
- RdmaServerEndpoint.accept() holds when RdmaEndpointGroup.close() is called
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from disni.