by syoyo

rspreload is a DLL replacement for socket() functions  taking a leverage of RDMA transport layer without any application modification.

rspreload is built on top of rsockets feature. See details here for rsockets:

Recent advances of rspreload/rsocket finalIy enables  accelerating existing TCP/IP socket application such like iperf.

(At least it iperf with rspreload didn’t work a years ago).

$ LD_PRELOAD=/usr/local/lib/rsocket/ iperf -c

Client connecting to, TCP port 5001
TCP window size: 128 KByte (default)
[ 3] local port 51626 connected with port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 22.9 GBytes 19.7 Gbits/sec

It can achieve 19.7 Gbits/s in my IB QDR configuration.

This is 2/3 of theoretical peak 32 Gbits/s!  Simply super.

More details here: