JSOR zero copy function (Linux only)
By default, JSOR data transfers involve the use of intermediate buffer copy operations. For large data transfers, you can improve performance by enabling the zero copy function. This function copies data directly from Java™ application memory on one host to Java application memory on a different host, without using the processor on either host.
The RDMA implementation, which was
previously deprecated is removed from IBM® SDK, Java Technology Edition, Version 8.

When application 2, in the diagram, has a buffer available to receive data, the application advertises that availability by registering the buffer for direct data placement. When application 1 has data to send, it writes the data directly into the registered buffer. When the write operation is complete, a write completion message is sent by application 1 to the other side. When application 2 receives this message it can process the transferred data. When the data transfer is complete, application 2 can unregister the receive buffer.
Because of buffer registration overheads, the expected reduction in CPU cycles is achieved only if the data transfer sizes are large. For example, for a single connection you might not see a reduction until the data transfer size exceeds 256 KB. If multiple parallel connections share the same buffer for direct data placement, this data threshold can be reduced.
Because the performance gains are achieved only for large data sizes, the zero copy function is not enabled by default. To enable the function, use the -Dcom.ibm.net.rdma.zeroCopy=true property.
The JSOR zero copy function is not supported for NIO
channels. 