• Stars
    star
    179
  • Rank 214,039 (Top 5 %)
  • Language
  • License
    Creative Commons ...
  • Created over 7 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Up to date (2021) reference for setting up a VGA passthrough on (Ubuntu) Linux.

General introduction

This repository includes my notes for setting up a VGA Passthrough on a Linux machine (it's targeted to Ubuntu; more advanced users can adapt it to other distributions).

VGA passthrough is a setup that allows virtualized environments (QEMU, in this case) to perform 3D acceleration at near native speed.

The rationale for this document is that the information on the subject is spread, confusing and outdated, so I've decided to create a single, consistent document - a reference.

Table of contents

  1. General introduction
  2. Introduction to VGA Passthrough
  3. VGA Passthrough Problems
  4. Basic setup
  5. Input handling
  6. Monitors and audio
  7. Troubleshooting
  8. Possible improvements
  9. Profiling KVM
  10. Sample IOMMU groups
  11. QEMU Disk utils/LibGuestFS handy commands
  12. References

Help/Contributions

Contributions or any other form of help (improvements, extensions...) are very appreciated.

The main area to look at is Possible improvements; possibly, minor things can be improved in Basic setup.

The best workflow is to create a Pull request with the modifications, but you can also send me an email.

Reference systems

This guide has been tested on several systems (see the Sample IOMMU groups chapter), using the LTS Ubuntu versions from 16.04 onwards.

Next: Introduction to VGA Passthrough

More Repositories

1

zfs-installer

Program that prepares ZFS on a system, and installs Linux
Shell
179
star
2

qemu-pinning

My QEMU fork with pinning (affinity) support and a few tweaks.
C
35
star
3

json_on_rails

MySQL JSON support for Rails 4
Ruby
15
star
4

learn_bevy_ecs_by_ripping_off-code

Code for my mini-book "Learn Bevy's ECS by ripping off someone else's project"
Rust
15
star
5

geet

Command line interface for performing Git hosting service operations
Ruby
15
star
6

personal_notes

My personal study notes/TIL.
Shell
12
star
7

spreadbase

Ruby library for accessing (R/W) OpenOffice/LibreOffice spreadsheets (ods)... because Excel IS a database πŸ˜‚
Ruby
10
star
8

pm-spotlight-old

Linux (Poor man's) Spotlight clone
Ruby
10
star
9

palware

My modern disassemblies of paleolithic (DOS-era) malware!
Assembly
9
star
10

rpi_vpn_router

Program for setting up a Raspberry Pi as VPN router (ARCHIVED!)
Shell
9
star
11

simple_scripting

Ruby library for simplifying some typical scripting functionalities.
Ruby
9
star
12

asphyxia_vga_trainer-mirror

A mirror of the venerable "Asphyxia VGA Trainer", from the old DOS times!
Pascal
8
star
13

openscripts

(Some of) My personal scripts.
Shell
7
star
14

libemuls

My personal experimental project in the retrogaming emulators field, written in Rust.
Ruby
6
star
15

black_art_of_3d_game_programming_cd

Content of the "Black Art of 3D Game Programming" companion CD
C
4
star
16

codecrafters_resources

Resources for my CodeCrafters writings
HTML
4
star
17

c64_asm_book_listings

Listings from Commodore 64 Assembly books
Assembly
4
star
18

saveriomiroddi.github.io

Former repository of my professional blog
4
star
19

vim-goby-syntax-highlighting

Goby syntax highlighting for Vim
Vim Script
3
star
20

ppa_packaging

Scripts for easily preparing PPA packages
Shell
3
star
21

catacomb_ii-64k

Rust port of Catacomb II (SDL)
C
3
star
22

tricks_of_the_game_programming_gurus_source

Source code for the book "Tricks of the Game-Programming Gurus", from the companion CD
C
2
star
23

prefosdem-2020-presentation

Base of my MySQL preFOSDEM 2020 presentation
Shell
2
star
24

pm-spotlight

My desktop search program ("Poor Man's Spotlight"), written in Rust
Rust
1
star
25

arguably_better_breakout

Experimental ground for my Bevy studies, based on Alice I. Cecil's "Better Breakout" (https://github.com/alice-i-cecile/bevy/tree/better-breakout)
Rust
1
star
26

amazing_3d_games_adventure_set_cd

Content of the "Amazing 3-D Games Adventure Set" companion CD
C
1
star
27

vscode-markdown-code-blocks-terraform-syntax-highlighting

1
star
28

ray_tracer_challenge-completed

Implementation of the "Ray Tracer Challenge" in Rust, with additional parallelism
Rust
1
star
29

intelleggere

Repository di leggi e relative modifiche, per facilitΓ  di consultazione
1
star
30

testkodiak

Ruby
1
star