OnixS C++ Eurex T7 Market and Reference Data Interface (EMDI, RDI, EOBI) Handlers  8.1.0
API documentation
Solarflare's ultra-low latency ef_vi API

To achieve the best latency results FeedEngine provides a mode where Solarflare's ultra-low latency ef_vi API is used.

ef_vi grants an application direct access to the Solarflare network adapter datapath to deliver lower latency and reduced per-message processing overheads. It can be used directly by applications that want the very lowest latency send and receive API, and that does not require a POSIX socket interface.

To enable ef_vi mode a correspondent setting must be provided along with others.

FeedEngineSettings feSettings;
feSettings.mode(FeedEngineMode::EfVi);
// ...
FeedEngine feedEngine(feSettings);
Note
Some settings (FeedEngineSettings::dataWaitTime, FeedEngineSettings::spinBeforeIdleTime, FeedEngineSettings::socketBufferSize) are ignored in ef_vi mode.

System Setup

Note
ef_vi mode is currently supported in RHEL OS family only.

It is recommended to upgrade adapter's firmware to the latest one (sfupdate) and choose 'Full feature' firmware variant (sfboot –adapter=xxx firmware-variant=full-feature). Please refer to Solarflare Linux Utilities for more details.

Before running the app in ef_vi mode please run:

1 echo 100 > /proc/sys/net/ipv4/igmp_max_memberships