Case Study: Ubuntu Server Team achieves 5-7% QEMU performance gains with Ubuntu profile-guided optimization

A Ubuntu Case Study

Preview of the Ubuntu Server Team Case Study

Ubuntu Server Team boosts QEMU build performance by 5-7% with Ubuntu

The Ubuntu Server Team faced the challenge of optimizing the performance of QEMU emulation for RISC-V package builds on their Launchpad infrastructure. Their goal was to find an automatic optimization technique that could improve build times and reduce CPU utilization for this highly specialized workload without introducing significant performance penalties during profiling.

Ubuntu implemented a solution using Profile-Guided Optimization (PGO) with GCC, leveraging the `perf` and `autofdo` tools to generate a performance profile from building the OpenSSL package. This profile was then used to build an optimized version of QEMU. The results were significant, with the optimized QEMU achieving average build time improvements of 5.47% to 6.72% and similar gains in CPU utilization efficiency across four different test packages, including GDB, Emacs, and Python. This performance gain translates to substantial time and energy savings for Ubuntu's continuous package building processes.


View this case study…

Ubuntu

80 Case Studies