Baseline Operating Systems

Contains steps to get other operating systems compiled and running for comparison purposes.

Compare against Linux

To get an idea if nrk is competitive with Linux performance we can create a Linux VM by creating an image. The following steps create an ubuntu-testing.img disk-image by using the ubuntu-minimal installer:

qemu-img create -f vmdk -o size=20G ubuntu-testing.img
kvm -m 2048 -k en-us --smp 2 --cpu host -cdrom mini.iso -hdd ubuntu-testing.img
# Follow installer instructions

Afterwards the image can be booted using kvm:

kvm -m 2048 -k en-us --smp 2 -boot d ubuntu-testing.img

Switch to serial output

One step that makes life easier is to enable to serial input/output. So we don't have to use a graphical QEMU interface. To enable serial, edit the grub configuration (/etc/default/grub) as follows in the VM:

GRUB_TERMINAL='serial console'
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

Then you must run update-grub to update the menu entries. From now on, you can boot the VM using (not the -nographic option):

qemu-system-x86_64 --enable-kvm -m 2048 -k en-us --smp 2 -boot d ubuntu-testing.img -nographic

Compare against Barrelfish


Compare against sv6

To clone & build the code (needs an older compiler version):

git clone
sudo apt-get install gcc-4.8 g++-4.8
CXX=g++-4.8 CC=gcc-4.8 make

Update param.h:

QEMU       ?= qemu-system-x86_64 -enable-kvm
QEMUSMP    ?= 56
QEMUMEM    ?= 24000


CXX=g++-4.8 CC=gcc-4.8 make qemu`


One of the baselines for rackscale is NrOS. To run the rackscale benchmarks with corresponding NrOS baslines, run them with --feature baseline.