The Mesa 3D Graphics Library

Open source implementations of OpenGL, OpenGL ES, Vulkan, OpenCL, and more!

Read more »

Featured APIs

OpenGL OpenGL
OpenGL is a cross-platform, industry standard graphics programming API for 3D graphics.
OpenGL ES OpenGL ES
OpenGL ES is the mobile subset of OpenGL. It's supported on all major mobile platforms, and is also the base for WebGL.
Vulkan Vulkan
Vulkan is the next-generation graphics programming API from The Khronos® Group.
EGL EGL
EGL is an interface between Khronos rendering APIs such as OpenGL or OpenVG and the underlying native platform window system.
OpenMAX OpenMAX
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
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.
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.


Hardware

AMD R300

The R300 driver supports AMD's Radeon R300 GPU series.

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…

NVK

This is a Vulkan driver for NVIDIA Turing (RTX20xx and GTX 16xx) and later GPUs. It is not endorsed by NVIDIA.

Panfrost

Panfrost is a free and open source driver for the ARM Mali Midgard, Bifrost and Valhall GPUs. It's a community-developed driver, built with support from Arm. More information…

Imagination Technologies PowerVR

The PowerVR Vulkan driver supports Imagination Technologies' PowerVR Rogue GPUs. It's officially supported by Imagination Technologies. 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 lack 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.

i915

The i915 driver supports Intel's GMA 915G 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 24.2.6 is released

Mesa 24.2.6 is released. This is a bug fix release.
Read full post

Mesa 24.2.5 is released

Mesa 24.2.5 is released. This is a bug fix release.
Read full post

Mesa 24.2.4 is released

Mesa 24.2.4 is released. This is a bug fix release.
Read full post
Read all news