Virtualization

Run virtual machines at near-native speeds and manage them at ease

Playing around with various VGA providers

  1. Download the Fedora Workstation ISO file from website and store it in a reference directory cdromimg.
    https://getfedora.org
    
  2. Execute the following command to know about the VGA providers available at disposal.
    $ qemu-system-x86_64 -vga help
    none                 no graphic card
    std                  standard VGA (default)
    cirrus               Cirrus VGA
    vmware               VMWare SVGA
    xenfb                Xen paravirtualized framebuffer
    qxl                  QXL VGA
    virtio               Virtio VGA
    
  3. Start a virtual machine for playing around with various VGA providers for the live ISO and there is no need for a virtual disk image here.
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm
    
  4. Open up Settings inside the VM and head over to the About section. Information about the Graphics can be seen here.
  5. Open up Terminal inside the VM and execute the lspci commands in regards with the current VGA controller to find more information on it.

We will test out each VGA provider one-by-one and list the information for each now.

  1. Standard VGA (Default)
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga std
    
    1. Settings -> About
      01
    2. lspci
      02
  2. No graphic card
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga none
    

    03

  3. Cirrus VGA
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga cirrus
    
    1. Settings -> About
      04
    2. lspci
      05
  4. VMware SVGA
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga vmware
    
    1. Settings -> About
      06
    2. lspci
      07
  5. Xen paravirtualized framebuffer
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga xenfb
    

    08

  6. QXL VGA
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga qxl
    
    1. Settings -> About
      09
    2. lspci
      10
  7. VirtIO VGA
    $ qemu-system-x86_64 \
        -boot menu=on \
        -m 8192 \
        -cpu max \
        -smp 4 \
        -cdrom cdromimg/<Fedora-Workstation-Live-x86_64-xx-y.z.iso> \
        -accel kvm \
        -vga virtio
    
    1. Settings -> About
      11
    2. lspci
      12

References

  1. https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/

Authors: Akashdeep Dhar, Jarek Prokop, Nick Dirschel