Onload 8.1 adds new API features to allow the X3522 transmit code path to be exercised without sending any data on the wire. This can potentially improve latency when transmitting after a period of inactivity, as recently executed code is more likely to be cached. This new functionality is available via both ef_vi and TCPDirect APIs.
- ef_vi
- Use
efct_vi_start_transmit_warm()
andefct_vi_stop_transmit_warm()
to start and stop warming. Call transmit functions while warming to exercise the code. These functions are only usable for EFCT (X3) NICs. - TCPDirect
- Use
zft_send_single_warm()
andzfut_send_single_warm()
. These functions are not new, but Onload 8.1 extends them to be usable for any NIC architecture including EFCT (X3).
Note: Transmit path warming is also supported forOnload
applications via the ONLOAD_MSG_WARM socket option. This feature is
hardware independent, and so has always been available to the X3522.