Featured APIs
Featured APIs
OpenGL is a cross-platform, industry standard graphics programming API for 3D graphics.
OpenGL ES is the mobile subset of OpenGL. It's supported on all major mobile platforms, and is also the base for WebGL.
Vulkan is the next-generation graphics programming API from The Khronos® Group.
EGL is an interface between Khronos rendering APIs such as OpenGL or OpenVG and the underlying native platform window system.
OpenMAX is a non-proprietary and royalty-free cross-platform set of C-language programming interfaces, provides abstractions for processing of audio, video, and still images.
OpenCL
OpenCL is a framework for writing programs that execute across heterogeneous platforms consisting of CPUs, GPUs, DSPs, FPGAs and other processors or hardware accelerators.
VDPAU
VDPAU is the Video Decode and Presentation API for UNIX. It provides an interface to video decode acceleration and presentation hardware present in modern GPUs.
VA-API
VA-API is an open-source library and API specification, which provides access to graphics hardware acceleration capabilities for video processing.
XvMC
XvMC is an extension of the X video extension (Xv) for the X Window System. The XvMC API allows video programs to offload portions of the video decoding process to the GPU hardware.
Note
Even though Mesa provides implementations of the APIs listed above, not all combinations of drivers and APIs are formally conformant to their respective specifications.
Supported Drivers
Hardware
- AMD R600
-
The R600 driver supports AMD's Radeon HD 2000 GPU series. It's officially supported by AMD, and is one of two Linux drivers for the hardware. More information…
- AMD RadeonSI
-
The RadeonSI OpenGL and OpenCL driver supports AMD's Southern Island GPUs and later. It's officially supported by AMD, and is one of two Linux drivers for the hardware. More information…
- AMD RADV
-
The AMD RADV Vulkan driver supports AMD's GCN and RDNA GPUs. It's not officially supported by AMD, but it's based on public information provided by AMD. More information…
- Broadcom V3D
-
The V3D OpenGL driver supports Broadcom's VC5 and later GPUs, which is found in the Raspberry Pi 4. It's officially supported by Broadcom, and is the official Linux driver for the hardware. More information…
- Broadcom V3DV
-
The V3DV Vulkan driver supports Broadcom's VC5 and later GPUs, similar to the V3D driver. More information…
- Broadcom VC4
-
The VC4 driver supports Broadcom's VC4 GPU, which is found among other other things in most of the Raspberry Pis. It's officially supported by Broadcom, and is one of two Linux drivers for the hardware. More information…
- Etnaviv
-
The Etnaviv driver supports the Vivante GCxxx series of embedded GPUs. It's a reverse-engineered, community-developed driver, and is not endorsed by Vivante. More information…
- Freedreno
-
The Freedreno driver supports the Qualcomm Adreno GPUs, from the A2xx series to the A6xx series. It's a reverse-engineered, community-developed driver, and is not endorsed by Qualcomm. More information…
- Intel ANV
-
The ANV vulkan driver supports Intel's Gen 7 hardware and later. It's officially supported by Intel and is their official Vulkan driver for Linux. More information…
- Intel Iris
-
The Iris driver supports Intel's Gen 8 hardware and later. It's officially supported by Intel and is their next-generation Linux OpenGL driver. More information…
- Intel Crocus
-
The Crocus driver supports Intel's Gen 7 hardware and earlier. It's based on Iris and the former i965 driver, but is not officially supported or endorsed by Intel.
- Lima
-
Lima is a free and open source driver for the ARM Mali-4xx family of GPUs. It's a reverse-engineered, community-developed driver, and is not endorsed by ARM. More information…
- Nouveau
-
The Nouveau drivers supports a large set of NVIDIA chips, ranging from NV04 found in the Riva TNT card to NVF0 found in the GeForce GTX 780, as well as most of the Tegra GPUs. It's a reverse-engineered, community-developed driver, and is not endorsed by NVIDIA. More information…
- Panfrost
-
Panfrost is a free and open source driver for the ARM Mali Midgard and Bifrost GPUs. It's a reverse-engineered, community-developed driver, and is not endorsed by ARM. More information…
Layered Drivers
- Microsoft D3D12
-
The D3D12 driver is a Gallium driver that emits D3D12 API calls instead of targeting a specific GPU architecture. This can be used to get full desktop OpenGL support on devices that only support D3D12, as well as providing hardware acceleration for applications running under WSL. More information…
- VMware SVGA3D
-
The SVGA3D driver gives a Linux virtual machine access to the host GPU for hardware-accellerated 3D when running either on VMware hypervisors (Workstation, Fusion, and ESX). It's officially supported by VMware. More information…
- Venus
-
The Venus driver is a virtual Vulkan GPU driver for sharing a GPU with a host for virtual machines. It uses Vulkan on the host to accelerate rendering. More information…
- VirGL
-
The VirGL driver is a virtual OpenGL GPU driver for sharing a GPU with a host for virtual machines. It uses OpenGL or OpenGL ES on the host to accelerate rendering. More information…
- Zink
-
The Zink driver is a Gallium driver that emits Vulkan API calls instead of targeting a specific GPU architecture. This can be used to get full desktop OpenGL support on devices that only support Vulkan. More information…
Software rendering
- LLVMPipe
-
The LLVMPipe driver is a high-performance software renderer. It's useful for systems without a dedicated GPU, or in the process of bringing up a platform. It uses LLVM as a code-generator to dynamically compile efficient machine code for the CPU. More information…
- Softpipe
-
The Softpipe driver is a reference software rasterizer; it's slow but accurate. It's mostly useful for testing, and on systems that lacks support for LLVM.
Legacy drivers
Note
Several drivers has been removed from the main branch, and now live on in the "Amber" branch where they are community maintained and only receive critical fixes.
- AMD R200
-
The R200 driver supports AMD's Radeon R200 GPU series.
- AMD R300
-
The R300 driver supports AMD's Radeon R300 GPU series.
- i915
-
The i915 driver supports Intel's GMA 916G as well as the i830, i845 and i865 integrated GPU series.
- Intel i965
-
The i965 driver supports Intel's Gen 4 hardware and later. It's used to be officially supported by Intel, but these days you should be using Iris or Crocus instead.
- OpenSWR
-
The OpenSWR driver is a high performance, highly scalable software renderer targeted towards visualization workloads.
Latest news
Mesa 22.1.5 is released
Mesa 22.1.4 is released
Mesa 22.1.3 is released
Read all news