Unikraft: Fast, Specialized Unikernels the Easy Way
Simon Kuenzer, Vlad-Andrei B\u{a}doiu, Hugo Lefeuvre, Sharan, Santhanam, Alexander Jung, Gaulthier Gain, Cyril Soldani, Costin, Lupu, \c{S}tefan Teodorescu, Costi R\u{a}ducanu, Cristian Banu and, Laurent Mathy, R\u{a}zvan Deaconescu, Costin Raiciu, Felipe Huici

TL;DR
Unikraft is a modular, performance-oriented unikernel platform that simplifies customization and deployment, achieving significant performance gains and fast boot times for common applications.
Contribution
It introduces a fully modular micro-library OS with composable APIs, making it easier to customize and optimize unikernels for high performance.
Findings
1.7x-2.7x performance improvement over Linux guests
Unikraft images are around 1MB and require less than 10MB RAM
Boot time is approximately 1ms, total boot time 3ms-40ms
Abstract
Unikernels are famous for providing excellent performance in terms of boot times, throughput and memory consumption, to name a few metrics. However, they are infamous for making it hard and extremely time consuming to extract such performance, and for needing significant engineering effort in order to port applications to them. We introduce Unikraft, a novel micro-library OS that (1) fully modularizes OS primitives so that it is easy to customize the unikernel and include only relevant components and (2) exposes a set of composable, performance-oriented APIs in order to make it easy for developers to obtain high performance. Our evaluation using off-the-shelf applications such as nginx, SQLite, and Redis shows that running them on Unikraft results in a 1.7x-2.7x performance improvement compared to Linux guests. In addition, Unikraft images for these apps are around 1MB, require less…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
