IX is an open-source project available at ix-project
Commodity operating systems fail in maintaining the high throughput and low (tail) latency when applications require millions of operations per second and just hundreds of microseconds for slowest requests. However, these requirements are not rare in today’s datacenters (e.g. for key-value stores) where every individual slack off in latency effects multiple requests due to distributed fan-out computational model. Overprovisioning of resources is often the big hammer of taming the latency curve which leads to low utilization of datacenters.
IX is a specialized dataplane library operating system that solves the 4-way trade-off between high throughput, low latency, strong protection and energy efficiency. IX separates the control plane from the dataplane using hardware virtualization, therefore maintaining the strong protection offered by existing kernels. The control plane implements resource allocation policies while the dataplane provides high networking I/O performance.
The network processing is optimized for both throughput and latency of event-driven latency critical applications by processing to completion bounded batches of packets, and by minimizing coherence traffic and multi-core synchronization. The control plane dynamically manages the resources (cores and frequency) driven by different policies (e.g. energy proportionality).
The IX Operating System: Combining Low Latency, High Throughput, and Efficiency in a Protected Dataplan, in ACM Transactions on Computer Systems, vol. 34, num. 4, p. 1-39Association for Computing Machinery, New York, 2016..
Energy Proportionality and Workload Consolidation for Latency-Critical Applications. 2015 ACM Symposium on Cloud Computing, Kohala Coast, HI, USA, 2015. Publication.
IX: A Protected Dataplane Operating System for High Throughput and Low Latency. 11th Symposium on Operating System Design and Implementation (OSDI), Broomfield, CO, USA, 2014. Publication.
Prekas, George; Belay, Adam; Primorac, Mia; Klimovic, Ana; Grossman, Samuel; Kogias, Marios; Gütermann, Bernard; Kozyrakis, Christos; Bugnion, Edouard. IX Open-source version 1.0 – Deployment and Evaluation Guide. EPFL Technical Report, 2016. Publication