Skip to content
Branch: master
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This experiment exemplifies the usage of Popper for managing changes and automating experiments that modify the Linux Kernel using virtual machines (VMs). In order to automate this process, we make use of Vagrant, a CLI tool for easily creating, provisioning, and running virtual machines. It is an excellent choice for certain use cases that require a high degree of customization of the runtime environment, such as operating system research.

For cases where this fine control is not necessary, it may be wise to consider a more lightweight solution for keeping your environment portable, such as Docker or a Language-specific tool such as virtualenv (for Python)

This pipeline is intended to measure the performance impact of cgroups on a specific linux kernel version. For this, it first uses a docker image to compile a specified version of the kernel. After this is done, it provisions a vagrant box using the .deb packages produced by the last stage. It then runs a synthetic benchmark with and without cgroups. Finally, it takes the results from these tests and charts them using a jupyter notebook. We can see from this pipeline the advantages of splitting the our processes into discrete stages, as well as the power afforded by combining several tools commonly used in devops, taking advantage of each of their individual strengths.

You can’t perform that action at this time.