Implement unreliable connection (UC)
Right now, we support unreliable datagram (UD) and reliable connection (RC). For real-time simulations, the RC does not always make sense. In case of UD, we have to specify the target QP before every write which potentially makes it slower.
The UC option does not require us to specify the target QP before every write, but will also not resend a sample.
There is no native support from the RDMA CM, which we use to establish our connection, but there is another user who had the same problem on spinics.net. It seems fairly easy to implement it (i.e., we have to make some changes, but we wouldn't have to rewrite the complete RDMA CM).
From the RDMA Aqare Networks Programming User manual:
2.2.2 Unreliable Connection (UC)
A Queue Pair is associated with only one other QP.
The connection is not reliable so packets may be lost.
Messages with errors are not retried by the transport, and error handling must be provided by a higher level protocol.