Free Site Registration

Who Killed the Kernel?

Traders Magazine Online News, October 9, 2018

Denver Currie

Delivering outstanding performance with SolarFlare EF_VI

High performance algorithmic trading involves sophisticated software and hardware components operating in harmony to effectively accomplish market operations. Traders are continually seeking faster market data and order execution services with lower slippage to more accurately qualify their orders. As volumes continue to rise, firms are faced with increasing levels of throughput while still needing to maintain their current or even lower latency targets in order to stay competitive.

FPGA and hardware solutions have become popular for specific scenarios. However, Vela’s software allows clients to achieve low latency and high throughput in a flexible, cost-effective manner by combining commodity hardware with kernel bypass techniques and an ever-evolving set of software features.

The Linux kernel wasn’t meant to handle mega message transfer rates leading to Kernel Bypass…

Vela software runs on the latest generation of commodity servers without the need for custom hardware. This helps lower costs and simplifies the ongoing infrastructure management and support by leveraging widely available skill sets. However, commodity hardware is not without its disadvantages; the Linux kernel is not designed to meet current algorithmic trading demands of passing millions of messages per second between financial networks and trading applications, at sub-microsecond latency. The performance is negatively impacted by context switching since the OS needs to manage state as control is passed from “kernel space,” where the network drivers reside, to “user space” where the application runs. Additional cores don’t help matters as they scale inversely due to the overhead of multi-processing distributed shared memory management. For example, in tests, while a single core delivered close to 1.5 million packets per second, a dual core system dropped to about one third of that number, and it would take up to approximately 20 cores to just reach the equivalent throughput of a single maxed out core.

The most effective way to avoid overwhelming the kernel and overcome these challenges is to enable NICs to intercept system calls when transferring packets and take control of them directly in hardware, i.e., bypass the kernel. This leaves all other components intact and the localizing message transfer performance management to the NIC itself. Not only does this approach resolve the above challenge with standard hardware, but it addresses growing performance demands as the market size and pace continue to rise.

Solarflare OpenOnload NIC comes in…

OpenOnload®  is a SolarFlare developed, high-performance network stack that dramatically reduces latency and boosts throughput by bypassing the Linux kernel and directly accessing the NIC. It has support for both TCP and UDP network transport protocols, and a standard API that requires no modifications to end user applications. SolarFlare’s Ethernet Fabric Virtual Interface (EF_VI) is a proprietary library that allows for even lower level access to the NIC while utilizing standard NIC features in a consistent novel way.

For more information on related topics, visit the following channels:

Comments (0)

Add Your Comments:

You must be registered to post a comment.

Not Registered? Click here to register.

Already registered? Log in here.

Please note you must now log in with your email address and password.