Cloud Hypervisor v0.2.0 Released!
Posted September 10, 2019 by Cloud Hypervisor Team ‐ 2 min read
This release has been tracked through the 0.2.0 project.
cloud-hypervisor version 0.2.0 include:
Network device offloading
As part of our general effort to offload paravirtualized I/O to external
processes, we added support for
vhost-user-net backends. This
cloud-hypervisor users to plug a
vhost-user based networking device
(e.g. DPDK) into the VMM as their virtio network backend.
Minimal hardware-reduced ACPI
In order to properly implement and guest reset and shutdown, we implemented
a minimal version of the hardware-reduced ACPI specification. Together with
a tiny I/O port based ACPI device, this allows
cloud-hypervisor guests to
cleanly reboot and shutdown.
The ACPI implementation is a
cloud-hypervisor build time option that is
enabled by default.
Debug I/O port
Based on the Firecracker idea of using a dedicated I/O port to measure guest boot times, we added support for logging guest events through the 0x80 PC debug port. This allows, among other things, for granular guest boot time measurements. See our debug port documentation for more details.
Improved direct device assignment
We fixed a major performance issue with our initial VFIO implementation: When
enabling VT-d through the KVM and VFIO APIs, our guest memory writes and reads
were (in many cases) not cached. After correctly tagging the guest memory from
cloud-hypervisor we’re now able to reach the expected performance from
directly assigned devices.
Improved shared filesystem
We added shared memory region with DAX support to our virtio-fs shared file system. This provides better shared filesystem IO performance with a smaller guest memory footprint.
Ubuntu bionic based CI
Thanks to our simple KVM firmware improvements, we are now able to boot Ubuntu bionic images. We added those to our CI pipeline.
See the GitHub Release for the release assets.