AMD Radeon 6800/6800XT for VFIO?

Up until November 18, 2020 I would have suggested against the purchase of an AMD GPU for VFIO. But yesterday AMD launched its Radeon RX 6800 line of GPUs. Are the AMD Radeon 6800/6800XT suitable for VFIO?

What is VFIO? -- Click to expand

VFIO is about running for example Windows 10 in a virtual machine (VM), using a discrete graphics card that you pass through to the VM. The Linux driver framework that is used to bind the graphics card during the host boot is called VFIO. The virtual machine itself (e.g. Windows 10) then uses its own native graphics driver to drive the GPU, significantly boosting VM graphics performance. This enables you to run Linux on the host and create Windows virtual machines for gaming and other high performance tasks.

 

AMD graphics cards have been plagued with the notorious FLR reset bug over several years now. Independent developers wrote a kernel patch as a workaround that would work most of the time. But the patch required kernel or module compilation, which is not everyone’s cup of tea.

Yesterday Wendell at Level1Techs posted a (p)review of the latest AMD Radeon 6800 and 6800XT graphics cards. He attests that the AMD Radeon 6800/6800XT are perfectly suitable for VFIO passthrough. No more FLR reset bug. Wendell goes further to point out that the Linux graphics drivers available in Ubuntu 20.04 already support these cards. This is great news for the Linux user community in general, and VFIO passthrough enthusiasts especially! Finally an alternative to NVIDIA.

There are more good news: Those of you who already own an AMD Navi, Vega or Polaris graphics card plagued with the FLR reset bug can now enjoy a simpler, better workaround. Instead of compiling the patch into the kernel, all you need to do now is to “build the module and modprobe it, or use dmks to manage it directly”.

AMD has already shown its Linux support through its open source graphics drivers. The new graphics cards based on the RDNA2 architecture have finally corrected the product flaw of previous releases. Welcome to the VFIO club.

You will probably have to wait some time to get hold of one of these cards, as they seem to have sold out on launch day.

Remote Backup Script for Windows NTFS Partitions on LVM Volumes

Linux bash script to mount and backup / synchronize a Windows 10 partition inside a LVM volume to a remote backup server using rsync and SSH

I run the bash script below to backup my Windows NTFS partitions residing on LVM volumes to a remote backup server. It uses SSH and public key authentication to authenticate at the remote side.

The script mounts an NTFS partition inside a LVM raw volume. It performs a file-based backup using rsync. It is NOT suitable for system backups!

Please carefully read the “Requirements”, “How it Works”, and “Usage” sections before attempting to use it.

Continue reading “Remote Backup Script for Windows NTFS Partitions on LVM Volumes”

Why Linux Sucks

I am a Linux user for decades. I have promoted the use of Linux wherever I could. But it’s about time to say the truth: Linux sucks!

Before you draw conclusions I like to add: Microsoft Windows and Apple macOS suck even more.

Continue reading “Why Linux Sucks”

Creating a Windows 10 VM on the AMD Ryzen 9 3900X using Qemu 4.0 and VGA Passthrough

Last updated: November 22, 2020

Introduction

I’ve already written a detailed tutorial on VGA passthrough based on QEMU version 2.11. Time has passed and today distributions like Ubuntu 20.04, Linux Mint 20, or Manjaro come with QEMU 4.0, 4.2 or 5.0.

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 VM on the AMD Ryzen 9 3900X using Qemu 4.0 and 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”

Upgrading my PC to an AMD Ryzen 9 3900X System

Introduction

I’ve been contemplating a PC upgrade for more than a year (see my post here). At first I considered staying with Intel and getting an i9-9900K CPU with integrated GPU on a Z390 motherboard.

Along came the AMD Ryzen 9 3900X that topped the benchmarks, including the Adobe Lightroom and Photoshop benchmarks (to be precise, it ranked #4 in the Adobe Lightroom benchmark, and a narrow #1 in the Adobe Photoshop benchmark). These good news about the AMD Ryzen 3900X were soon followed by reports about BIOS issues and VFIO incompatibility. At the very least, it looked like VGA passthrough was more challenging.

Then I read Bryan Steiner’s GPU passthrough tutorial for the AMD Ryzen 9 3900X and an Ubuntu-based Pop!_OS Linux host. Several users on the VFIO Reddit forum reported successful VFIO VGA passthrough with the AMD Ryzen 9. Continue reading “Upgrading my PC to an AMD Ryzen 9 3900X System”

Linux Virtual Gaming Machine

You may wonder what’s wrong with this fellow (meaning me, the author). Has he completely lost his mind when he proposes a Linux virtual gaming machine? Before you discredit the idea, let me explain. Continue reading “Linux Virtual Gaming Machine”

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”

Windows 10 Virtual Machine Benchmarks

Benchmarking Performance of a Virtual Machine

I have run  a number of benchmarks to document the performance of Windows 10 running as a virtual machine on Linux, in the hope other PC users will dive into the fascinating world of virtualization.

Benchmarks are helpful in comparing one system with another, and one configuration with another. I use them for optimizing my Windows 10 performance and for making sure that updates/upgrades haven’t produced unwanted side effects. Continue reading “Windows 10 Virtual Machine Benchmarks”

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”