Memory backings in Linux Virtualization

Background When diving into high-performance virtualization, memory is often an area of focus. In this article, I will attempt to explain simply why memory is a concern, and the various ways that are available to you to fix it. This way, you may pick which solution fits your needs. Memory management is a key responsibility of your operating system (OS). Your OS takes the memory in your system and divides it up into pages. [Read More]

Libvirt Parameters

When browsing through other peoples’ setups, you’ll find a huge range of flags people set. Here’s a list of what I find important, along with what they do. The table on contents will be organized by levels to represent where each config option should go. Note that there are many more flags to explore, should you be so inclined1.

domain

memory

currentMemory

memoryBacking

hugepages

Specifying huge pages

cputune

os

features

acpi

apic

hyperv

relaxed

vapic

spinlocks

vpindex

runtime

synic

stimer

reset

vendor_id

frequencies

reenlightenment

tlbflush

kvm

hidden

vmport

ipapic

cpu

topology

feature

Libvirt/QEMU reference guide

Background Over the past few months I’ve gotten into experimenting with PCI Passthrough using Linux virtualization. The basic premise is that, instead of dual-booting Linux with Windows for gaming, we can run Windows in a VM and passthrough necessary hardware (storage, graphics card) to achieve near-native performance. I’ve learned a lot from this experimentation. There are lots of helpful people in this community, but there are also a lot of differing configurations and no one place to look all of the various settings up. [Read More]