QEMU 7.2 and Raw Disks

Update January 27, 2023: The issue described below is limited to users of RAW partitions. But there is a workaround. See under “What to do?”

A recent update from QEMU 7.1 to QEMU 7.2 caused my Windows 10 VM to show 100% utilization of the C: drive. Performance of the Windows VM dropped to the bottom – the VM was pretty much unusable.

Users at the VFIO Reddit reported similar issues. However, as it turned out, it seems to affect only storage on LVM raw volumes. In other words, if you have your VM in a qcow file, all should be well.

Continue reading “QEMU 7.2 and Raw Disks”

Passing Through a Nvidia RTX 2070 Super GPU

Tutorial for passing through a Nvidia RTX graphics card to a Windows 10 virtual machine using a modified VBIOS

Last update: September 14, 2021

Starting with the GeForce 1000 series, vfio passthrough of a Nvidia GPU has become a little more complicated. If, when starting the VM, you get a black screen, chances are you need to pass along a VBIOS file to the VM so the GPU can properly initialize.

This post is about passing through a Nvidia RTX 2070 Super GPU or any other modern Nvidia GPU to a Windows 10 guest.

Continue reading “Passing Through a Nvidia RTX 2070 Super GPU”

Windows 10 VFIO Passthrough Configuration

I’ve been tweaking my configuration for my needs and it performs very well. As a reference, I’m posting my:

  • hardware configuration
  • Linux distro, kernel, etc.
  • Windows VM configuration (XML)
Continue reading “Windows 10 VFIO Passthrough Configuration”

Creating a Windows 10 kvm VM on the AMD Ryzen 9 3900X using VGA Passthrough

Last updated: January 6, 2022

Introduction

I’ve already written a detailed tutorial on Windows 10 kvm VGA passthrough based on QEMU version 2.11. Years have passed and recent distributions like Ubuntu 20.04, Linux Mint 20, or Manjaro come with QEMU 4.0, 4.2 or 5.1.

A lot has happened since version 2.11. QEMU 4.0 includes numerous changes and improvements such as trim support in the virtio-blk driver, pcie-root-port with PCIe 4.0 support (with Q35-4.0 machine type), as well as improved audio.

Continue reading “Creating a Windows 10 kvm VM on the AMD Ryzen 9 3900X using VGA Passthrough”

Upgrading my PC to an AMD Ryzen 9 3900X System – Benchmarks

It wasn’t easy this time. Don’t get me wrong – the VFIO passthrough part, though challenging in some ways, went quite well. All in all I’m pleased now with the results. Here the Passmark 9.0 benchmark as uploaded onto their database (for more details, click the frame below):

PassMark Rating
Continue reading “Upgrading my PC to an AMD Ryzen 9 3900X System – Benchmarks”

Tuning VM Disk Performance

Qemu/kvm provides you with a plethora of ways to configure your storage devices. Yet no other type of device shows such a variance in its performance, with disk I/O throughput anywhere from stellar to abysmal using the very same hardware.

In this post I like to show some configuration options that can help improve VM disk performance. For an in-depth presentation on the latest developments and features, with hands-on examples, see Storage Performance Tuning for FAST! Virtual Machines.

Continue reading “Tuning VM Disk Performance”

Installing a Linux Mint 19 (Ubuntu 18.04) VM with VGA Passthrough

Introduction

Installing a Linux Mint 19 VM (or Ubuntu 18.04) with VGA passthrough is surprisingly straightforward. This tutorial follows the Running Windows 10 on Linux using KVM with VGA Passthrough almost step-by-step. I will therefore focus on what’s different from the above tutorial.

While booting the Linux Mint 19 life installation media (ISO) as a VM was easy, the installation of Linux Mint invariably ended with the following error:

The ‘grub-efi-amd64-signed’ package failed to install target/

The following tutorial will describe the steps to overcome this problem (bug?). Continue reading “Installing a Linux Mint 19 (Ubuntu 18.04) VM with VGA Passthrough”

Low 2D Graphics Benchmark with Windows 10 (1803) KVM VM

Problem: bad 2D performance in Windows VM versus Windows on bare metal

For the past few months I noticed sluggish 2D graphics in my Windows 10 VM, something that hadn’t happened before. Below are the Passmark 8 results and comparisons between different configurations/releases:

Continue reading “Low 2D Graphics Benchmark with Windows 10 (1803) KVM VM”

Upgrade to Linux Mint 19 – Windows 10 VM Benchmark

I just upgraded my Linux Mint Mate 18.3 installation to Linux Mint Mate 19, using the mintupgrade utility. It required some manual fixes, but all in all it went smooth.

Below the first UserBenchmark using Linux Mint 19 with updated qemu/kvm packages:

UserBenchmarks: Game 60%, Desk 76%, Work 67%
CPU: Intel Core i7-3930K – 86.8%
GPU: Nvidia GTX 970 – 58.5%
SSD: Red Hat VirtIO 140GB – 72.1%
HDD: Red Hat VirtIO 2.5TB – 87.1%
HDD: Red Hat VirtIO 2TB – 51.7%
RAM: QEMU 1x16GB – 77.3%
MBD: QEMU Standard PC (Q35 + ICH9, 2009)

Qemu and libvirt security – ppa:jacob/virtualisation

I’m running Linux Mint 18.3 which is based on Ubuntu 16.04 Xenial. Until yesterday I used the Personal Packet Archive ppa:jacob/virtualisation to get more up-to-date releases of Qemu, libvirt, and virt-manager.

Ubuntu and Linux Mint recently released security updates for their official (but old) qemu and libvirt packages to address the Meltdown and Spectre vulnerabilities. Unfortunately the Ubuntu 16.04 releases in the ppa:jacob/virtualisation archive have not been updated, judging from the upload date.

Continue reading “Qemu and libvirt security – ppa:jacob/virtualisation”