  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 than 10MB of RAM to run, and boot in around
1ms on top of the VMM time (total boot time 3ms-40ms). Unikraft is a Linux
Foundation open source project and can be found at www.unikraft.org.
