1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

SPICE On KVM/QEMU Works Towards Gallium3D

Red Hat

Published on 09 February 2012 08:29 AM EST
Written by Michael Larabel in Red Hat
3 Comments

Red Hat's SPICE project that's used in KVM/QEMU virtualization environments is working towards better graphics support, which also includes work on a DRM driver and Gallium3D component for offering 3D acceleration support within guest virtual machines.

Alon Levy of Red Hat presented at FOSDEM last weekend about "Xspice: Integrating spice-server into Xorg", during which he talked a lot about their graphics driver plans. Right now QEMU/KVM really doesn't have any guest 3D support in the manner that VirtualBox or VMware graphics exposes OpenGL/DirectX support to guest systems and in turn passes the graphics calls onto the host system so it can be executed on bare metal.

Right now with QEMU/KVM you just go without acceleration or are left banging LLVMpipe on the CPU. Fortunately, the SPICE project is coming up with a spicy solution for better graphics. (For those not familiar with SPICE, see spice-space.org.)

VirtualBox has its own graphics driver stack while VMware implements a virtual Gallium3D driver with kernel DRM and it fits nicely into the common Linux stack. (There's actually an article going up tomorrow on Phoronix that's looking at the "vmwgfx" performance.) The approach that the SPICE developers are looking at is very similar to VMware's approach of complying with the existing Linux infrastructure.

Right now what SPICE users have in terms of driver support for their virtual GPU is the xf86-video-qxl DDX, which can work without any kernel DRM. However, the Red Hat developers have been working on a DRM driver as well as UXA acceleration support as was recently talked about on Phoronix.

Alon Levy mentions that this currently out-of-tree SPICE QXL DRM kernel driver is working right now for the frame-buffer and on the X.Org side with xf86-video-modesetting (the generic KMS X.Org driver). The xf86-video-qxl driver is still being re-written to handle support for the DRM/KMS driver while maintaining compatibility with the existing mode-setting paths. The QXL graphics ioctls for the kernel are still a work in progress.

For offering 3D support over SPICE to both Linux and Windows guests is a planned (but yet-to-be-written) Gallium3D driver. With also supporting Microsoft Windows, the Direct3D state tracker was mentioned for possible use during this presentation. The SPICE 3D plans date back to last year after they first had a "false start" when trying to use Xen's Gallium3D driver (vGallium) in their environment. Going with the Xen Gallium3D driver, which is not living in Mesa's code-base and is no longer actively maintained, the Red Hat developers deemed it a dead-end.

Aside from 3D, other missing general features at the moment for this virtualization path is multiple monitor support, sound/USB/smart-card support still being a work in progress, and namely support for handling an existing X.Org server like x11vnc, which would be dependent upon GPU hot-plug support working for X.

As far as when the new DRM and/or Gallium3D driver will be ready for SPICE users, that is really an open question at this point. Alon Levy isn't sure and it's just a few virtualization developers working on it with what appears to be little to no collaboration from the X.Org/graphics developers at Red Hat with the actual graphics driver experience.

In ending, here's a look at the planned graphics architecture:

SPICE On KVM/QEMU Works Towards Gallium3D


About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. AMD Launches New FX CPUs, Cuts Prices On Existing Processors
  2. Preview: AMD's FX-9590 Eight-Core At Up To 5.0GHz On Linux
  3. Intel Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  4. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
Latest Linux Articles
  1. Ondemand vs. Performance CPU Governing For AMD FX CPUs On Linux 3.17
  2. How Intel Graphics On Linux Compare To Open-Source AMD/NVIDIA Drivers
  3. The Fastest NVIDIA GPUs For Open-Source Nouveau With Steam Linux Gaming
  4. Testing For The Latest Linux Kernel Power Regression
Latest Linux News
  1. webOS Lives On As LuneOS With New Release
  2. Marek Lands Radeon Gallium3D HyperZ Improvements
  3. Mozilla Firefox 32 Surfaces With HTML5, Developer Changes
  4. Nouveau X.Org Driver Released With DRI3+Present, Maxwell, GLAMOR
  5. Microsoft & AMD Release C++ AMP Compiler With Linux Support
  6. AMD, Wine & Valve Dominated August For Linux Users
  7. Linux 3.17-rc3 Kernel Released Back On Schedule
  8. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  9. Mesa 10.3 RC2 Arrives Via Its New Release Manager
  10. Ubuntu 14.10's Lack Of X.Org Server 1.16 Gets Blamed On AMD
Latest Forum Discussions
  1. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  2. AMD graphics doesn't work with AMD Catalyst drivers
  3. Best Radeon for a Power Mac G5?
  4. The dangers of Linux kernel development
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. AMD Releases UVD Video Decode Support For R600 GPUs
  7. SSD seems slow
  8. Is laptop with Intel CPU and AMD dGPU worth buying considering especially AMD Enduro?