This page is a graphical representation of the text file docs/features.txt from the Mesa repository.
Although this text file is updated by the Mesa developers themselves, it might not contain an exhaustive list of each drivers features and subtleties. For more information, it is advised to look at the source code or ask the developers on their mailing list.
Feel free to open an issue or create a PR on GitHub, or join the Matrix room #mesamatrix:matrix.org.
Last commits
Age | Commit message |
---|---|
2025-02-04 22:51 | panvk: enable KHR_separate_depth_stencil_layouts |
2025-02-04 22:51 | panvk: enable VK_KHR_depth_stencil_resolve |
2025-01-31 13:46 | rusticl/feat: LinkOnce ODR |
2025-01-30 20:59 | zink: Enable KHR_shader_subgroup |
2025-01-30 10:50 | mesa: enable GL_EXT_conservative_depth extension |
2025-01-23 22:37 | tu: Support VK_EXT_conservative_rasterization on a7xx |
2025-01-23 12:09 | panvk: do not expose EXT_subgroup_size_control on bifrost |
2025-01-22 21:49 | panvk: enable subgroupSizeControl |
2025-01-22 21:49 | panvk: expose vk1.1 on v10 hardware |
2025-01-20 01:22 | tu: Expose VK_KHR_ray_tracing_maintenance1 |
More... |
Vulkan¶
There are a total of 249 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions | Version |
---|---|---|---|
1 | mesa | (98.0%) 244 | 1.4 |
2 | radv | (93.2%) 232 | 1.4 |
3 | anv | (82.3%) 205 | 1.4 |
4 | nvk | (73.9%) 184 | 1.4 |
5 | tu | (73.5%) 183 | 1.4 |
6 | lvp | (66.3%) 165 | 1.4 |
7 | vn | (53.4%) 133 | 1.3 |
8 | hasvk | (51.4%) 128 | N/A |
9 | v3dv | (47.4%) 118 | 1.0 |
10 | panvk | (34.9%) 87 | 1.1 |
11 | dzn | (23.3%) 58 | 1.0 |
12 | pvr | (14.1%) 35 | N/A |
Drivers details
OpenGL¶
There are a total of 160 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions | Version |
---|---|---|---|
1 | asahi | (100.0%) 160 | 4.6 |
1 | radeonsi | (100.0%) 160 | 4.6 |
1 | crocus | (100.0%) 160 | 4.6 |
1 | mesa | (100.0%) 160 | 4.6 |
1 | zink | (100.0%) 160 | 4.6 |
1 | d3d12 | (100.0%) 160 | 4.6 |
1 | virgl | (100.0%) 160 | 4.6 |
1 | llvmpipe | (100.0%) 160 | 4.6 |
1 | iris | (100.0%) 160 | 4.6 |
1 | freedreno | (100.0%) 160 | 4.6 |
11 | nvc0 | (98.8%) 158 | 4.5 |
12 | r600 | (96.2%) 154 | 4.5 |
13 | softpipe | (88.8%) 142 | 3.3 |
14 | panfrost | (77.5%) 124 | 3.1 |
15 | nv50 | (74.4%) 119 | 3.3 |
16 | v3d | (70.6%) 113 | 3.1 |
17 | vc4 | (40.0%) 64 | N/A |
18 | lima | (39.4%) 63 | N/A |
19 | etnaviv | (38.8%) 62 | N/A |
Drivers details
OpenGL 4.6 - GLSL 4.60¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 45.5% | 100.0% | 100.0% | 9.1% | 36.4% | 36.4% | 9.1% | 100.0% | 100.0% | 27.3% | 81.8% | 100.0% | 100.0% | 45.5% | 100.0% | 100.0% | 100.0% | 18.2% | |||||||||||
GL_ARB_gl_spirv¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_indirect_parameters¶ | |||||||||||||||||||||||||||||
GL_ARB_pipeline_statistics_query¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_polygon_offset_clamp¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_shader_atomic_counter_ops¶ | 2024-02-14 | 2024-11-25 | |||||||||||||||||||||||||||
GL_ARB_shader_draw_parameters¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_shader_group_vote¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_spirv_extensions¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_texture_filter_anisotropic¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_ARB_transform_feedback_overflow_query¶ | 2024-01-10 | ||||||||||||||||||||||||||||
GL_KHR_no_error¶ | |||||||||||||||||||||||||||||
OpenGL 4.5 - GLSL 4.50¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 50.0% | 50.0% | 41.7% | 41.7% | 100.0% | 100.0% | 75.0% | 100.0% | 100.0% | 100.0% | 75.0% | 100.0% | 100.0% | 100.0% | 33.3% | |||||||||||
GL_ARB_ES3_1_compatibility¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_clip_control¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_ARB_conditional_render_inverted¶ | |||||||||||||||||||||||||||||
GL_ARB_cull_distance¶ | |||||||||||||||||||||||||||||
GL_ARB_derivative_control¶ | |||||||||||||||||||||||||||||
GL_ARB_direct_state_access¶ | |||||||||||||||||||||||||||||
GL_ARB_get_texture_sub_image¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_texture_image_samples¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_barrier¶ | 2024-02-14 | 2024-02-22 | |||||||||||||||||||||||||||
GL_KHR_context_flush_control¶ | |||||||||||||||||||||||||||||
GL_KHR_robustness¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_EXT_shader_integer_mix¶ | |||||||||||||||||||||||||||||
OpenGL 4.4 - GLSL 4.40¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 66.7% | 93.3% | 80.0% | 66.7% | 100.0% | 100.0% | 93.3% | 100.0% | 100.0% | 100.0% | 93.3% | 100.0% | 100.0% | 100.0% | 66.7% | |||||||||||
GL_MAX_VERTEX_ATTRIB_STRIDE¶ | |||||||||||||||||||||||||||||
GL_ARB_buffer_storage¶ | |||||||||||||||||||||||||||||
GL_ARB_clear_texture¶ | |||||||||||||||||||||||||||||
GL_ARB_enhanced_layouts¶ | 2024-11-25 | ||||||||||||||||||||||||||||
- compile-time constant expressions¶ | |||||||||||||||||||||||||||||
- explicit byte offsets for blocks¶ | |||||||||||||||||||||||||||||
- forced alignment within blocks¶ | |||||||||||||||||||||||||||||
- specified vec4-slot component numbers¶ | |||||||||||||||||||||||||||||
- specified transform/feedback layout¶ | |||||||||||||||||||||||||||||
- input/output block locations¶ | |||||||||||||||||||||||||||||
GL_ARB_multi_bind¶ | |||||||||||||||||||||||||||||
GL_ARB_query_buffer_object¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_texture_mirror_clamp_to_edge¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_stencil8¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_type_10f_11f_11f_rev¶ | |||||||||||||||||||||||||||||
OpenGL 4.3 - GLSL 4.30¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 45.5% | 86.4% | 86.4% | 50.0% | 100.0% | 100.0% | 72.7% | 100.0% | 100.0% | 100.0% | 90.9% | 100.0% | 100.0% | 100.0% | 50.0% | |||||||||||
GL_ARB_arrays_of_arrays¶ | |||||||||||||||||||||||||||||
GL_ARB_ES3_compatibility¶ | |||||||||||||||||||||||||||||
GL_ARB_clear_buffer_object¶ | |||||||||||||||||||||||||||||
GL_ARB_compute_shader¶ | |||||||||||||||||||||||||||||
GL_ARB_copy_image¶ | 2024-02-14 | 2024-11-25 | |||||||||||||||||||||||||||
GL_KHR_debug¶ | |||||||||||||||||||||||||||||
GL_ARB_explicit_uniform_location¶ | |||||||||||||||||||||||||||||
GL_ARB_fragment_layer_viewport¶ | |||||||||||||||||||||||||||||
GL_ARB_framebuffer_no_attachments¶ | 2024-11-25 | 2024-10-21 | |||||||||||||||||||||||||||
GL_ARB_internalformat_query2¶ | |||||||||||||||||||||||||||||
GL_ARB_invalidate_subdata¶ | |||||||||||||||||||||||||||||
GL_ARB_multi_draw_indirect¶ | 2024-11-25 | 2024-11-25 | |||||||||||||||||||||||||||
GL_ARB_program_interface_query¶ | |||||||||||||||||||||||||||||
GL_ARB_robust_buffer_access_behavior¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_shader_image_size¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_storage_buffer_object¶ | |||||||||||||||||||||||||||||
GL_ARB_stencil_texturing¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_buffer_range¶ | 2024-02-14 | 2024-11-25 | |||||||||||||||||||||||||||
GL_ARB_texture_query_levels¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_storage_multisample¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_view¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_ARB_vertex_attrib_binding¶ | |||||||||||||||||||||||||||||
OpenGL 4.2 - GLSL 4.20¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 58.3% | 83.3% | 83.3% | 58.3% | 100.0% | 100.0% | 75.0% | 100.0% | 100.0% | 100.0% | 91.7% | 100.0% | 100.0% | 100.0% | 50.0% | |||||||||||
GL_ARB_texture_compression_bptc¶ | |||||||||||||||||||||||||||||
GL_ARB_compressed_texture_pixel_storage¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_atomic_counters¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_storage¶ | |||||||||||||||||||||||||||||
GL_ARB_transform_feedback_instanced¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_ARB_base_instance¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_image_load_store¶ | |||||||||||||||||||||||||||||
GL_ARB_conservative_depth¶ | |||||||||||||||||||||||||||||
GL_ARB_shading_language_420pack¶ | |||||||||||||||||||||||||||||
GL_ARB_shading_language_packing¶ | |||||||||||||||||||||||||||||
GL_ARB_internalformat_query¶ | |||||||||||||||||||||||||||||
GL_ARB_map_buffer_alignment¶ | |||||||||||||||||||||||||||||
OpenGL 4.1 - GLSL 4.10¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 50.0% | 50.0% | 50.0% | 50.0% | 100.0% | 100.0% | 66.7% | 100.0% | 100.0% | 100.0% | 83.3% | 100.0% | 100.0% | 100.0% | 33.3% | |||||||||||
GL_ARB_ES2_compatibility¶ | |||||||||||||||||||||||||||||
GL_ARB_get_program_binary¶ | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | ||||||||||||||||||||||
GL_ARB_separate_shader_objects¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_precision¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_attrib_64bit¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_viewport_array¶ | |||||||||||||||||||||||||||||
OpenGL 4.0 - GLSL 4.00¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 4.0% | 48.0% | 28.0% | 4.0% | 100.0% | 100.0% | 28.0% | 100.0% | 100.0% | 100.0% | 84.0% | 100.0% | 100.0% | 100.0% | 12.0% | |||||||||||
GL_ARB_draw_buffers_blend¶ | 2024-10-04 | ||||||||||||||||||||||||||||
GL_ARB_draw_indirect¶ | 2024-11-25 | 2024-10-11 | |||||||||||||||||||||||||||
GL_ARB_gpu_shader5¶ | |||||||||||||||||||||||||||||
- 'precise' qualifier¶ | |||||||||||||||||||||||||||||
- Dynamically uniform sampler array indices¶ | |||||||||||||||||||||||||||||
- Dynamically uniform UBO array indices¶ | |||||||||||||||||||||||||||||
- Implicit signed -> unsigned conversions¶ | |||||||||||||||||||||||||||||
- Fused multiply-add¶ | |||||||||||||||||||||||||||||
- Packing/bitfield/conversion functions¶ | |||||||||||||||||||||||||||||
- Enhanced textureGather¶ | |||||||||||||||||||||||||||||
- Geometry shader instancing¶ | |||||||||||||||||||||||||||||
- Geometry shader multiple streams¶ | |||||||||||||||||||||||||||||
- Enhanced per-sample shading¶ | |||||||||||||||||||||||||||||
- Interpolation functions¶ | |||||||||||||||||||||||||||||
- New overload resolution rules¶ | |||||||||||||||||||||||||||||
GL_ARB_gpu_shader_fp64¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_sample_shading¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_subroutine¶ | 2024-02-14 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | ||||||||||||||||||||||
GL_ARB_tessellation_shader¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_texture_buffer_object_rgb32¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_cube_map_array¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_ARB_texture_gather¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_query_lod¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_transform_feedback2¶ | |||||||||||||||||||||||||||||
GL_ARB_transform_feedback3¶ | 2024-11-25 | ||||||||||||||||||||||||||||
OpenGL 3.3 - GLSL 3.30¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 40.0% | 100.0% | 80.0% | 30.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 40.0% | |||||||||||
GL_ARB_blend_func_extended¶ | |||||||||||||||||||||||||||||
GL_ARB_explicit_attrib_location¶ | |||||||||||||||||||||||||||||
GL_ARB_occlusion_query2¶ | |||||||||||||||||||||||||||||
GL_ARB_sampler_objects¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_bit_encoding¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_rgb10_a2ui¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_swizzle¶ | |||||||||||||||||||||||||||||
GL_ARB_timer_query¶ | 2024-09-09 | ||||||||||||||||||||||||||||
GL_ARB_instanced_arrays¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_type_2_10_10_10_rev¶ | |||||||||||||||||||||||||||||
OpenGL 3.2 - GLSL 1.50¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 54.5% | 90.9% | 81.8% | 63.6% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 18.2% | |||||||||||
Core/compatibility profiles¶ | |||||||||||||||||||||||||||||
Geometry shaders¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_array_bgra (BGRA vertex order)¶ | |||||||||||||||||||||||||||||
GL_ARB_draw_elements_base_vertex (Base vertex offset)¶ | |||||||||||||||||||||||||||||
GL_ARB_fragment_coord_conventions (Frag shader coord)¶ | |||||||||||||||||||||||||||||
GL_ARB_provoking_vertex (Provoking vertex)¶ | |||||||||||||||||||||||||||||
GL_ARB_seamless_cube_map (Seamless cubemaps)¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_multisample (Multisample textures)¶ | |||||||||||||||||||||||||||||
GL_ARB_depth_clamp (Frag depth clamp)¶ | 2024-07-17 | ||||||||||||||||||||||||||||
GL_ARB_sync (Fence objects)¶ | |||||||||||||||||||||||||||||
GLX_ARB_create_context_profile¶ | |||||||||||||||||||||||||||||
OpenGL 3.1 - GLSL 1.40¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 33.3% | 100.0% | 100.0% | 33.3% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 33.3% | |||||||||||
Forward compatible context support/deprecations¶ | |||||||||||||||||||||||||||||
GL_ARB_draw_instanced (Instanced drawing)¶ | |||||||||||||||||||||||||||||
GL_ARB_copy_buffer (Buffer copying)¶ | |||||||||||||||||||||||||||||
GL_NV_primitive_restart (Primitive restart)¶ | |||||||||||||||||||||||||||||
16 vertex texture image units¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_buffer_object (Texture buffer objs)¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_rectangle (Rectangular textures)¶ | |||||||||||||||||||||||||||||
GL_ARB_uniform_buffer_object (Uniform buffer objs)¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_snorm (Signed normalized textures)¶ | |||||||||||||||||||||||||||||
OpenGL 3.0 - GLSL 1.30¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 44.4% | 100.0% | 100.0% | 48.1% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 55.6% | |||||||||||
glBindFragDataLocation, glGetFragDataLocation¶ | |||||||||||||||||||||||||||||
GL_NV_conditional_render (Conditional rendering)¶ | |||||||||||||||||||||||||||||
GL_ARB_map_buffer_range (Map buffer subranges)¶ | |||||||||||||||||||||||||||||
GL_ARB_color_buffer_float (Clamping controls)¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_float (Float textures, renderbuffers)¶ | |||||||||||||||||||||||||||||
GL_EXT_packed_float¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_shared_exponent¶ | |||||||||||||||||||||||||||||
GL_ARB_depth_buffer_float (Float depth buffers)¶ | |||||||||||||||||||||||||||||
GL_ARB_framebuffer_object (Framebuffer objects)¶ | |||||||||||||||||||||||||||||
GL_ARB_half_float_pixel¶ | |||||||||||||||||||||||||||||
GL_ARB_half_float_vertex¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_integer¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_array¶ | |||||||||||||||||||||||||||||
GL_EXT_draw_buffers2 (Per-buffer blend and masks)¶ | 2024-10-04 | ||||||||||||||||||||||||||||
GL_EXT_texture_compression_rgtc¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_rg¶ | |||||||||||||||||||||||||||||
GL_EXT_transform_feedback (Transform feedback)¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_array_object (Vertex array objects)¶ | |||||||||||||||||||||||||||||
GL_EXT_framebuffer_sRGB (sRGB framebuffer format)¶ | |||||||||||||||||||||||||||||
glClearBuffer commands¶ | |||||||||||||||||||||||||||||
glGetStringi command¶ | |||||||||||||||||||||||||||||
glTexParameterI, glGetTexParameterI commands¶ | |||||||||||||||||||||||||||||
glVertexAttribI commands¶ | |||||||||||||||||||||||||||||
Depth format cube textures¶ | |||||||||||||||||||||||||||||
GLX_ARB_create_context (GLX 1.4 is required)¶ | |||||||||||||||||||||||||||||
Multisample anti-aliasing¶ | |||||||||||||||||||||||||||||
8 draw buffers¶ | 2024-11-25 |
OpenGL ES¶
There are a total of 41 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions | Version |
---|---|---|---|
1 | asahi | (100.0%) 41 | 3.2 |
1 | radeonsi | (100.0%) 41 | 3.2 |
1 | crocus | (100.0%) 41 | 3.2 |
1 | mesa | (100.0%) 41 | 3.2 |
1 | zink | (100.0%) 41 | 3.2 |
1 | llvmpipe | (100.0%) 41 | 3.2 |
1 | virgl | (100.0%) 41 | 3.2 |
1 | iris | (100.0%) 41 | 3.2 |
1 | freedreno | (100.0%) 41 | 3.2 |
10 | nvc0 | (97.6%) 40 | 3.1 |
10 | r600 | (97.6%) 40 | 3.1 |
12 | panfrost | (90.2%) 37 | 3.1 |
13 | softpipe | (82.9%) 34 | 3.1 |
14 | d3d12 | (78.0%) 32 | 3.1 |
14 | v3d | (78.0%) 32 | 3.1 |
16 | nv50 | (43.9%) 18 | N/A |
17 | vc4 | (36.6%) 15 | N/A |
18 | etnaviv | (34.1%) 14 | N/A |
19 | lima | (31.7%) 13 | N/A |
Drivers details
OpenGL ES 3.2 - GLSL ES 3.2¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 95.5% | 100.0% | 100.0% | 27.3% | 81.8% | 59.1% | 31.8% | 100.0% | 100.0% | 36.4% | 95.5% | 100.0% | 100.0% | 68.2% | 59.1% | 100.0% | 100.0% | 27.3% | |||||||||||
GL_EXT_color_buffer_float¶ | |||||||||||||||||||||||||||||
GL_KHR_blend_equation_advanced¶ | |||||||||||||||||||||||||||||
GL_KHR_debug¶ | |||||||||||||||||||||||||||||
GL_KHR_robustness¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_KHR_texture_compression_astc_ldr¶ | |||||||||||||||||||||||||||||
GL_OES_copy_image¶ | |||||||||||||||||||||||||||||
GL_OES_draw_buffers_indexed¶ | 2024-10-04 | ||||||||||||||||||||||||||||
GL_OES_draw_elements_base_vertex¶ | |||||||||||||||||||||||||||||
GL_OES_geometry_shader¶ | |||||||||||||||||||||||||||||
GL_OES_gpu_shader5¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_OES_primitive_bounding_box¶ | 2024-02-14 | 2024-11-25 | |||||||||||||||||||||||||||
GL_OES_sample_shading¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_OES_sample_variables¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_OES_shader_image_atomic¶ | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | 2024-11-25 | ||||||||||||||||||||||
GL_OES_shader_io_blocks¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_OES_shader_multisample_interpolation¶ | 2024-11-25 | ||||||||||||||||||||||||||||
GL_OES_tessellation_shader¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_OES_texture_border_clamp¶ | |||||||||||||||||||||||||||||
GL_OES_texture_buffer¶ | |||||||||||||||||||||||||||||
GL_OES_texture_cube_map_array¶ | |||||||||||||||||||||||||||||
GL_OES_texture_stencil8¶ | |||||||||||||||||||||||||||||
GL_OES_texture_storage_multisample_2d_array¶ | |||||||||||||||||||||||||||||
OpenGL ES 3.1 - GLSL ES 3.1¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
100.0% | 100.0% | 100.0% | 100.0% | 36.8% | 100.0% | 100.0% | 42.1% | 100.0% | 100.0% | 52.6% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 42.1% | |||||||||||
GL_ARB_arrays_of_arrays¶ | |||||||||||||||||||||||||||||
GL_ARB_compute_shader¶ | |||||||||||||||||||||||||||||
GL_ARB_draw_indirect¶ | |||||||||||||||||||||||||||||
GL_ARB_explicit_uniform_location¶ | |||||||||||||||||||||||||||||
GL_ARB_framebuffer_no_attachments¶ | 2024-10-21 | ||||||||||||||||||||||||||||
GL_ARB_program_interface_query¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_atomic_counters¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_image_load_store¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_image_size¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_storage_buffer_object¶ | |||||||||||||||||||||||||||||
GL_ARB_shading_language_packing¶ | |||||||||||||||||||||||||||||
GL_ARB_separate_shader_objects¶ | |||||||||||||||||||||||||||||
GL_ARB_stencil_texturing¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_multisample (Multisample textures)¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_storage_multisample¶ | |||||||||||||||||||||||||||||
GL_ARB_vertex_attrib_binding¶ | |||||||||||||||||||||||||||||
GS5 Enhanced textureGather¶ | |||||||||||||||||||||||||||||
GS5 Packing/bitfield/conversion functions¶ | |||||||||||||||||||||||||||||
GL_EXT_shader_integer_mix¶ |
Extensions that are not part of any OpenGL or OpenGL ES version¶
There are a total of 66 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions |
---|---|---|
1 | mesa | (93.9%) 62 |
2 | zink | (83.3%) 55 |
3 | radeonsi | (65.2%) 43 |
4 | iris | (62.1%) 41 |
5 | freedreno | (57.6%) 38 |
6 | crocus | (48.5%) 32 |
7 | nvc0 | (47.0%) 31 |
8 | asahi | (45.5%) 30 |
9 | llvmpipe | (40.9%) 27 |
10 | panfrost | (36.4%) 24 |
11 | r600 | (34.8%) 23 |
11 | softpipe | (34.8%) 23 |
13 | nv50 | (28.8%) 19 |
13 | d3d12 | (28.8%) 19 |
15 | virgl | (25.8%) 17 |
16 | v3d | (24.2%) 16 |
17 | lima | (19.7%) 13 |
17 | etnaviv | (19.7%) 13 |
19 | vc4 | (13.6%) 9 |
Drivers details
Extensions that are not part of any OpenGL or OpenGL ES version¶ |
|||||||||||||||||||||||||||||
AMD | Apple | Arm | Broadcom | Intel | Nvidia | Qualcomm | Software | Translation | Vivante | ||||||||||||||||||||
Extension | mesa | r600 | radeonsi | asahi | lima | panfrost | v3d | vc4 | iris | crocus | nv50 | nvc0 | freedreno | llvmpipe | softpipe | d3d12 | virgl | zink | etnaviv | ||||||||||
93.9% | 34.8% | 65.2% | 45.5% | 19.7% | 36.4% | 24.2% | 13.6% | 62.1% | 48.5% | 28.8% | 47.0% | 57.6% | 40.9% | 34.8% | 28.8% | 25.8% | 83.3% | 19.7% | |||||||||||
GL_ARB_bindless_texture¶ | |||||||||||||||||||||||||||||
GL_ARB_cl_event¶ | |||||||||||||||||||||||||||||
GL_ARB_compute_variable_group_size¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_ES3_2_compatibility¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_fragment_shader_interlock¶ | |||||||||||||||||||||||||||||
GL_ARB_gpu_shader_int64¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_parallel_shader_compile¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_post_depth_coverage¶ | |||||||||||||||||||||||||||||
GL_ARB_robustness_isolation¶ | |||||||||||||||||||||||||||||
GL_ARB_sample_locations¶ | |||||||||||||||||||||||||||||
GL_ARB_seamless_cubemap_per_texture¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_ballot¶ | 2024-02-14 | 2024-02-08 | |||||||||||||||||||||||||||
GL_ARB_shader_clock¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_stencil_export¶ | |||||||||||||||||||||||||||||
GL_ARB_shader_viewport_layer_array¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_ARB_shading_language_include¶ | |||||||||||||||||||||||||||||
GL_ARB_sparse_buffer¶ | |||||||||||||||||||||||||||||
GL_ARB_sparse_texture¶ | |||||||||||||||||||||||||||||
GL_ARB_sparse_texture2¶ | |||||||||||||||||||||||||||||
GL_ARB_sparse_texture_clamp¶ | |||||||||||||||||||||||||||||
GL_ARB_texture_filter_minmax¶ | |||||||||||||||||||||||||||||
GL_ARM_shader_framebuffer_fetch_depth_stencil¶ | |||||||||||||||||||||||||||||
GL_EXT_shader_framebuffer_fetch¶ | |||||||||||||||||||||||||||||
GL_EXT_shader_framebuffer_fetch_non_coherent¶ | |||||||||||||||||||||||||||||
GL_EXT_clear_texture¶ | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | ||||||||||
GL_EXT_color_buffer_half_float¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_EXT_conservative_depth¶ | 2025-01-30 | ||||||||||||||||||||||||||||
GL_EXT_depth_bounds_test¶ | |||||||||||||||||||||||||||||
GL_EXT_memory_object¶ | |||||||||||||||||||||||||||||
GL_EXT_memory_object_fd¶ | |||||||||||||||||||||||||||||
GL_EXT_memory_object_win32¶ | |||||||||||||||||||||||||||||
GL_EXT_multisampled_render_to_texture¶ | |||||||||||||||||||||||||||||
GL_EXT_polygon_offset_clamp¶ | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | ||||||||||||||
GL_EXT_render_snorm¶ | 2024-02-14 | 2024-11-25 | |||||||||||||||||||||||||||
GL_EXT_semaphore¶ | |||||||||||||||||||||||||||||
GL_EXT_semaphore_fd¶ | |||||||||||||||||||||||||||||
GL_EXT_semaphore_win32¶ | |||||||||||||||||||||||||||||
GL_EXT_shader_group_vote¶ | 2024-02-14 | ||||||||||||||||||||||||||||
GL_EXT_sRGB_write_control¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_compression_astc_decode_mode¶ | 2024-08-20 | 2024-08-20 | |||||||||||||||||||||||||||
GL_EXT_texture_norm16¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_sRGB_R8¶ | |||||||||||||||||||||||||||||
GL_EXT_texture_view¶ | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | 2025-01-17 | |||||||||||||||
GL_KHR_blend_equation_advanced_coherent¶ | |||||||||||||||||||||||||||||
GL_KHR_shader_subgroup¶ | 2024-08-26 | 2024-08-26 | 2025-01-30 | ||||||||||||||||||||||||||
GL_KHR_texture_compression_astc_hdr¶ | |||||||||||||||||||||||||||||
GL_KHR_texture_compression_astc_sliced_3d¶ | |||||||||||||||||||||||||||||
GL_OES_depth_texture_cube_map¶ | |||||||||||||||||||||||||||||
GL_OES_EGL_image¶ | |||||||||||||||||||||||||||||
GL_OES_EGL_image_external¶ | |||||||||||||||||||||||||||||
GL_OES_EGL_image_external_essl3¶ | |||||||||||||||||||||||||||||
GL_OES_required_internalformat¶ | |||||||||||||||||||||||||||||
GL_OES_surfaceless_context¶ | |||||||||||||||||||||||||||||
GL_OES_texture_compression_astc¶ | |||||||||||||||||||||||||||||
GL_OES_texture_float¶ | |||||||||||||||||||||||||||||
GL_OES_texture_float_linear¶ | |||||||||||||||||||||||||||||
GL_OES_texture_half_float¶ | |||||||||||||||||||||||||||||
GL_OES_texture_half_float_linear¶ | |||||||||||||||||||||||||||||
GL_OES_texture_view¶ | 2025-01-17 | ||||||||||||||||||||||||||||
GL_OES_viewport_array¶ | |||||||||||||||||||||||||||||
GL_OVR_multiview¶ | 2024-09-18 | 2024-09-18 | |||||||||||||||||||||||||||
GL_OVR_multiview2¶ | 2024-09-18 | 2024-09-18 | |||||||||||||||||||||||||||
GL_OVR_multiview_multisampled_render_to_texture¶ | 2024-09-20 | 2024-09-20 | |||||||||||||||||||||||||||
GLX_ARB_context_flush_control¶ | |||||||||||||||||||||||||||||
GLX_ARB_robustness_application_isolation¶ | |||||||||||||||||||||||||||||
GLX_ARB_robustness_share_group_isolation¶ |
Rusticl OpenCL¶
There are a total of 123 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions | Version |
---|---|---|---|
1 | iris | (56.9%) 70 | 1.0 |
2 | radeonsi | (55.3%) 68 | 1.0 |
2 | mesa | (55.3%) 68 | N/A |
4 | llvmpipe | (54.5%) 67 | 1.0 |
5 | zink | (52.0%) 64 | 1.0 |
6 | nvc0 | (49.6%) 61 | 1.0 |
7 | panfrost | (48.8%) 60 | 1.0 |
7 | asahi | (48.8%) 60 | 1.0 |
9 | freedreno | (48.0%) 59 | 1.0 |
Drivers details
Rusticl OpenCL 3.0¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
100.0% | 90.0% | 100.0% | 90.0% | 100.0% | 90.0% | 90.0% | 90.0% | 100.0% | |||||||||
Optional device capabilities queries¶ | |||||||||||||||||
cl_khr_extended_versioning¶ | |||||||||||||||||
clSetContextDestructorCallback¶ | |||||||||||||||||
clCreateBufferWithProperties¶ | |||||||||||||||||
clCreateImageWithProperties¶ | |||||||||||||||||
Query properties arrays¶ | |||||||||||||||||
Supported OpenCLÂ C versions and features queries¶ | |||||||||||||||||
CL_COMMAND_SVM_MIGRATE_MEM for clGetEventInfo¶ | |||||||||||||||||
OpenCL C 3.0¶ | |||||||||||||||||
Latest conformance version passed for devices¶ | 2024-10-10 | 2024-10-15 | |||||||||||||||
Rusticl OpenCL 2.2¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
40.0% | 40.0% | 40.0% | 40.0% | 40.0% | 40.0% | 40.0% | 40.0% | 40.0% | |||||||||
clSetProgramSpecializationConstant¶ | |||||||||||||||||
clSetProgramReleaseCallback¶ | |||||||||||||||||
Initialization and clean-up kernels¶ | |||||||||||||||||
CL_MAX_SIZE_RESTRICTION_EXCEEDED for clSetKernelArg¶ |