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 |
---|---|
2024-12-18 08:33 | panvk: enable shaderDrawParameters |
2024-12-11 13:19 | panvk: expose scalarBlockLayout |
2024-12-09 21:16 | panvk: expose EXT_4444_formats |
2024-12-09 20:31 | panvk: advertise multiview support on v10+ |
2024-12-06 10:40 | panvk: advertise VK_EXT_provoking_vertex |
2024-12-04 21:34 | panvk: expose KHR_dedicated_allocation |
2024-12-02 20:58 | panvk: enable shaderInt8, VK_KHR_8bit_storage and VK_KHR_shader_float16_int8 |
2024-11-25 18:33 | panvk: Advertise VK_EXT_pipeline_robustness |
2024-11-25 18:33 | panvk: Advertise VK_EXT_image_robustness |
2024-11-25 17:19 | docs: add missing panfrost extensions |
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.3 |
2 | radv | (92.4%) 230 | 1.3 |
3 | anv | (82.3%) 205 | 1.3 |
4 | nvk | (73.1%) 182 | 1.3 |
5 | tu | (71.1%) 177 | 1.3 |
6 | lvp | (61.8%) 154 | 1.3 |
7 | vn | (53.4%) 133 | 1.3 |
8 | hasvk | (51.4%) 128 | N/A |
9 | v3dv | (47.4%) 118 | 1.0 |
10 | panvk | (33.3%) 83 | 1.0 |
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 62 extensions to implement. The ranking is based on the current number of extensions implemented per driver.
# | Driver | Extensions |
---|---|---|
1 | mesa | (93.5%) 58 |
2 | zink | (82.3%) 51 |
3 | radeonsi | (64.5%) 40 |
4 | iris | (61.3%) 38 |
5 | freedreno | (56.5%) 35 |
6 | crocus | (46.8%) 29 |
7 | asahi | (45.2%) 28 |
7 | nvc0 | (45.2%) 28 |
9 | llvmpipe | (38.7%) 24 |
10 | softpipe | (33.9%) 21 |
11 | r600 | (32.3%) 20 |
11 | panfrost | (32.3%) 20 |
13 | nv50 | (25.8%) 16 |
13 | d3d12 | (25.8%) 16 |
15 | virgl | (24.2%) 15 |
16 | v3d | (21.0%) 13 |
17 | lima | (19.4%) 12 |
17 | etnaviv | (19.4%) 12 |
19 | vc4 | (12.9%) 8 |
Drivers details
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.1%) 69 | 1.0 |
2 | radeonsi | (54.5%) 67 | 1.0 |
2 | mesa | (54.5%) 67 | N/A |
4 | llvmpipe | (53.7%) 66 | 1.0 |
5 | zink | (51.2%) 63 | 1.0 |
6 | nvc0 | (48.8%) 60 | 1.0 |
7 | panfrost | (48.0%) 59 | 1.0 |
7 | asahi | (48.0%) 59 | 1.0 |
9 | freedreno | (47.2%) 58 | 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¶ | |||||||||||||||||
Support SPIR-V 1.1 and 1.2¶ | |||||||||||||||||
Rusticl OpenCL 2.1¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
50.0% | 62.5% | 25.0% | 25.0% | 62.5% | 25.0% | 25.0% | 62.5% | 37.5% | |||||||||
Sub groups¶ | |||||||||||||||||
- cl_khr_subgroups¶ | |||||||||||||||||
cl_khr_il_program¶ | |||||||||||||||||
Device and host timer synchronization¶ | |||||||||||||||||
clEnqueueSVMMigrateMem¶ | |||||||||||||||||
clCloneKernel¶ | |||||||||||||||||
Default device command queue¶ | |||||||||||||||||
CL_UNORM_INT_101010_2¶ | |||||||||||||||||
Rusticl OpenCL 2.0¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
43.8% | 37.5% | 31.2% | 37.5% | 43.8% | 37.5% | 31.2% | 43.8% | 37.5% | |||||||||
Shared virtual memory¶ | |||||||||||||||||
Device queues¶ | |||||||||||||||||
- cl_khr_create_command_queue¶ | |||||||||||||||||
- Additional queries for clGetDeviceInfo¶ | |||||||||||||||||
Pipes¶ | |||||||||||||||||
Extended 2D images creation¶ | |||||||||||||||||
- CL_ABGR¶ | |||||||||||||||||
- cl_khr_image2d_from_buffer¶ | |||||||||||||||||
- cl_khr_depth_images¶ | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | 2024-11-18 | ||||||||
- from sRGB images¶ | |||||||||||||||||
clCreateSamplerWithProperties¶ | |||||||||||||||||
Non-uniform work-group sizes¶ | |||||||||||||||||
cl_khr_3d_image_writes¶ | |||||||||||||||||
OpenCL C 2.0¶ | |||||||||||||||||
- Work-group Collective Functions¶ | |||||||||||||||||
- Generic address space¶ | |||||||||||||||||
Rusticl OpenCL 1.2¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
84.2% | 84.2% | 84.2% | 84.2% | 84.2% | 84.2% | 84.2% | 84.2% | 84.2% | |||||||||
Custom devices¶ | |||||||||||||||||
Built-in kernels¶ | |||||||||||||||||
Device partitioning¶ | |||||||||||||||||
Separate compilation and linking of programs¶ | |||||||||||||||||
Extend cl_mem_flags¶ | |||||||||||||||||
clEnqueueFillBuffer, clEnqueueFillImage¶ | |||||||||||||||||
Add CL_MAP_WRITE_INVALIDATE_REGION to cl_map_flags¶ | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | 2024-07-10 | ||||||||
New image types¶ | |||||||||||||||||
clCreateImage¶ | |||||||||||||||||
clEnqueueMigrateMemObjects¶ | |||||||||||||||||
Retrieve kernels information from a program¶ | |||||||||||||||||
clGetKernelArgInfo¶ | |||||||||||||||||
clEnqueueMarkerWithWaitList¶ | |||||||||||||||||
clEnqueueBarrierWithWaitList¶ | |||||||||||||||||
clUnloadPlatformCompiler¶ | |||||||||||||||||
cl_khr_fp64¶ | |||||||||||||||||
printf¶ | |||||||||||||||||
CL_KERNEL_ATTRIBUTES for clGetKernelInfo¶ | |||||||||||||||||
OpenCL C 1.2¶ | |||||||||||||||||
Rusticl OpenCL 1.1¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
81.8% | 81.8% | 81.8% | 81.8% | 81.8% | 81.8% | 81.8% | 81.8% | 81.8% | |||||||||
Additional queries for clGetDeviceInfo¶ | |||||||||||||||||
CL_CONTEXT_NUM_DEVICES for clGetContextInfo¶ | |||||||||||||||||
New optional image formats¶ | |||||||||||||||||
- CL_Rx¶ | |||||||||||||||||
- CL_RGx¶ | |||||||||||||||||
- CL_RGBx¶ | |||||||||||||||||
clCreateSubBuffer¶ | |||||||||||||||||
Read from, write to, copy rectangular regions¶ | |||||||||||||||||
clSetMemObjectDestructorCallback¶ | |||||||||||||||||
Control OpenCL C version when building¶ | |||||||||||||||||
Query for preferred work-group size multiple¶ | |||||||||||||||||
Support user events¶ | |||||||||||||||||
clSetEventCallback¶ | |||||||||||||||||
Minimum requirement changes for clGetDeviceInfo¶ | |||||||||||||||||
Arg prerequisite change for clEnqueueNDRangeKernel¶ | |||||||||||||||||
OpenCL C 1.1¶ | |||||||||||||||||
- 3-component vector data types¶ | |||||||||||||||||
- cl_khr_byte_addressable_store¶ | |||||||||||||||||
- cl_khr_global_int32_base_atomics¶ | |||||||||||||||||
- cl_khr_global_int32_extended_atomics¶ | |||||||||||||||||
- cl_khr_local_int32_base_atomics¶ | |||||||||||||||||
- cl_khr_local_int32_extended_atomics¶ | |||||||||||||||||
Rusticl OpenCL 1.0¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
50.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | |||||||||
Image support¶ | |||||||||||||||||
- Optional image formats¶ | |||||||||||||||||
Rusticl Extensions that are not part of any OpenCL version¶ |
|||||||||||||||||
AMD | Apple | Arm | Intel | Nvidia | Qualcomm | Software | Translation | ||||||||||
Extension | mesa | radeonsi | asahi | panfrost | iris | nvc0 | freedreno | llvmpipe | zink | ||||||||
22.0% | 22.0% | 9.8% | 9.8% | 22.0% | 12.2% | 9.8% | 17.1% | 14.6% | |||||||||
cl_khr_async_copy_fence¶ | |||||||||||||||||
cl_khr_async_work_group_copy_fence¶ | |||||||||||||||||
cl_khr_device_enqueue_local_arg_types¶ | |||||||||||||||||
cl_khr_device_uuid¶ | |||||||||||||||||
cl_khr_egl_event¶ | |||||||||||||||||
cl_khr_egl_image¶ | |||||||||||||||||
cl_khr_expect_assume¶ | |||||||||||||||||
cl_khr_extended_async_copies¶ | |||||||||||||||||
cl_khr_extended_bit_ops¶ | |||||||||||||||||
cl_khr_fp16¶ | |||||||||||||||||
cl_khr_gl_depth_images¶ | |||||||||||||||||
cl_khr_gl_msaa_sharing¶ | |||||||||||||||||
cl_khr_gl_sharing¶ | |||||||||||||||||
cl_khr_icd¶ | |||||||||||||||||
cl_khr_initialize_memory¶ | |||||||||||||||||
cl_khr_int64_base_atomics¶ | |||||||||||||||||
cl_khr_int64_extended_atomics¶ | |||||||||||||||||
cl_khr_integer_dot_product¶ | |||||||||||||||||
cl_khr_mipmap_image¶ | |||||||||||||||||
cl_khr_pci_bus_info¶ | |||||||||||||||||
cl_khr_priority_hints¶ | |||||||||||||||||
cl_khr_spirv_extended_debug_info¶ | |||||||||||||||||
cl_khr_spirv_linkonce_odr¶ | |||||||||||||||||
cl_khr_spirv_no_integer_wrap_decoration¶ | |||||||||||||||||
cl_khr_srgb_image_writes¶ | |||||||||||||||||
cl_khr_subgroup_ballot¶ | |||||||||||||||||
cl_khr_subgroup_clustered_reduce¶ | |||||||||||||||||
cl_khr_subgroup_extended_types¶ | |||||||||||||||||
cl_khr_subgroup_named_barrier¶ | |||||||||||||||||
cl_khr_subgroup_non_uniform_arithmetic¶ | |||||||||||||||||
cl_khr_subgroup_non_uniform_vote¶ | |||||||||||||||||
cl_khr_subgroup_rotate¶ | |||||||||||||||||
cl_khr_subgroup_shuffle¶ | |||||||||||||||||
cl_khr_subgroup_shuffle_relative¶ | |||||||||||||||||
cl_khr_suggested_local_work_size¶ | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | 2024-03-13 | ||||||||
cl_khr_terminate_context¶ | |||||||||||||||||
cl_khr_throttle_hints¶ | |||||||||||||||||
cl_khr_work_group_uniform_arithmetic¶ | |||||||||||||||||
cl_arm_non_uniform_work_group_size¶ | |||||||||||||||||
cl_arm_shared_virtual_memory¶ | |||||||||||||||||
cl_intel_unified_shared_memory¶ |
Clover 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 | mesa | (39.8%) 49 | N/A |
2 | nvc0 | (36.6%) 45 | N/A |
3 | r600 | (33.3%) 41 | N/A |
3 | radeonsi | (33.3%) 41 | N/A |
Drivers details
Clover OpenCL 3.0¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
60.0% | 60.0% | 60.0% | 60.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¶ | ||||||
Clover OpenCL 2.2¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
0.0% | 0.0% | 0.0% | 0.0% | |||
clSetProgramSpecializationConstant¶ | ||||||
clSetProgramReleaseCallback¶ | ||||||
Initialization and clean-up kernels¶ | ||||||
CL_MAX_SIZE_RESTRICTION_EXCEEDED for clSetKernelArg¶ | ||||||
Support SPIR-V 1.1 and 1.2¶ | ||||||
Clover OpenCL 2.1¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
25.0% | 12.5% | 12.5% | 25.0% | |||
Sub groups¶ | ||||||
- cl_khr_subgroups¶ | ||||||
cl_khr_il_program¶ | ||||||
Device and host timer synchronization¶ | ||||||
clEnqueueSVMMigrateMem¶ | ||||||
clCloneKernel¶ | ||||||
Default device command queue¶ | ||||||
CL_UNORM_INT_101010_2¶ | ||||||
Clover OpenCL 2.0¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
12.5% | 6.2% | 6.2% | 12.5% | |||
Shared virtual memory¶ | ||||||
Device queues¶ | ||||||
- cl_khr_create_command_queue¶ | ||||||
- Additional queries for clGetDeviceInfo¶ | ||||||
Pipes¶ | ||||||
Extended 2D images creation¶ | ||||||
- CL_ABGR¶ | ||||||
- cl_khr_image2d_from_buffer¶ | ||||||
- cl_khr_depth_images¶ | ||||||
- from sRGB images¶ | ||||||
clCreateSamplerWithProperties¶ | ||||||
Non-uniform work-group sizes¶ | ||||||
cl_khr_3d_image_writes¶ | ||||||
OpenCL C 2.0¶ | ||||||
- Work-group Collective Functions¶ | ||||||
- Generic address space¶ | ||||||
Clover OpenCL 1.2¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
84.2% | 78.9% | 78.9% | 84.2% | |||
Custom devices¶ | ||||||
Built-in kernels¶ | ||||||
Device partitioning¶ | ||||||
Separate compilation and linking of programs¶ | ||||||
Extend cl_mem_flags¶ | ||||||
clEnqueueFillBuffer, clEnqueueFillImage¶ | ||||||
Add CL_MAP_WRITE_INVALIDATE_REGION to cl_map_flags¶ | ||||||
New image types¶ | ||||||
clCreateImage¶ | ||||||
clEnqueueMigrateMemObjects¶ | ||||||
Retrieve kernels information from a program¶ | ||||||
clGetKernelArgInfo¶ | ||||||
clEnqueueMarkerWithWaitList¶ | ||||||
clEnqueueBarrierWithWaitList¶ | ||||||
clUnloadPlatformCompiler¶ | ||||||
cl_khr_fp64¶ | ||||||
printf¶ | ||||||
CL_KERNEL_ATTRIBUTES for clGetKernelInfo¶ | ||||||
OpenCL C 1.2¶ | ||||||
Clover OpenCL 1.1¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
81.8% | 77.3% | 77.3% | 77.3% | |||
Additional queries for clGetDeviceInfo¶ | ||||||
CL_CONTEXT_NUM_DEVICES for clGetContextInfo¶ | ||||||
New optional image formats¶ | ||||||
- CL_Rx¶ | ||||||
- CL_RGx¶ | ||||||
- CL_RGBx¶ | ||||||
clCreateSubBuffer¶ | ||||||
Read from, write to, copy rectangular regions¶ | ||||||
clSetMemObjectDestructorCallback¶ | ||||||
Control OpenCL C version when building¶ | ||||||
Query for preferred work-group size multiple¶ | ||||||
Support user events¶ | ||||||
clSetEventCallback¶ | ||||||
Minimum requirement changes for clGetDeviceInfo¶ | ||||||
Arg prerequisite change for clEnqueueNDRangeKernel¶ | ||||||
OpenCL C 1.1¶ | ||||||
- 3-component vector data types¶ | ||||||
- cl_khr_byte_addressable_store¶ | ||||||
- cl_khr_global_int32_base_atomics¶ | ||||||
- cl_khr_global_int32_extended_atomics¶ | ||||||
- cl_khr_local_int32_base_atomics¶ | ||||||
- cl_khr_local_int32_extended_atomics¶ | ||||||
Clover OpenCL 1.0¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
0.0% | 0.0% | 0.0% | 0.0% | |||
Image support¶ | ||||||
- Optional image formats¶ | ||||||
Clover Extensions that are not part of any OpenCL version¶ |
||||||
AMD | Nvidia | |||||
Extension | mesa | r600 | radeonsi | nvc0 | ||
12.2% | 2.4% | 2.4% | 4.9% | |||
cl_khr_async_copy_fence¶ | ||||||
cl_khr_async_work_group_copy_fence¶ | ||||||
cl_khr_device_enqueue_local_arg_types¶ | ||||||
cl_khr_device_uuid¶ | ||||||
cl_khr_egl_event¶ | ||||||
cl_khr_egl_image¶ | ||||||
cl_khr_expect_assume¶ | ||||||
cl_khr_extended_async_copies¶ | ||||||
cl_khr_extended_bit_ops¶ | ||||||
cl_khr_fp16¶ | ||||||
cl_khr_gl_depth_images¶ | ||||||
cl_khr_gl_msaa_sharing¶ | ||||||
cl_khr_gl_sharing¶ | ||||||
cl_khr_icd¶ | ||||||
cl_khr_initialize_memory¶ | ||||||
cl_khr_int64_base_atomics¶ | ||||||
cl_khr_int64_extended_atomics¶ | ||||||
cl_khr_integer_dot_product¶ | ||||||
cl_khr_mipmap_image¶ | ||||||
cl_khr_pci_bus_info¶ | ||||||
cl_khr_priority_hints¶ | ||||||
cl_khr_spirv_extended_debug_info¶ | ||||||
cl_khr_spirv_linkonce_odr¶ | ||||||
cl_khr_spirv_no_integer_wrap_decoration¶ | ||||||
cl_khr_srgb_image_writes¶ | ||||||
cl_khr_subgroup_ballot¶ | ||||||
cl_khr_subgroup_clustered_reduce¶ | ||||||
cl_khr_subgroup_extended_types¶ | ||||||
cl_khr_subgroup_named_barrier¶ | ||||||
cl_khr_subgroup_non_uniform_arithmetic¶ | ||||||
cl_khr_subgroup_non_uniform_vote¶ | ||||||
cl_khr_subgroup_rotate¶ | ||||||
cl_khr_subgroup_shuffle¶ | ||||||
cl_khr_subgroup_shuffle_relative¶ | ||||||
cl_khr_suggested_local_work_size¶ | ||||||
cl_khr_terminate_context¶ | ||||||
cl_khr_throttle_hints¶ | ||||||
cl_khr_work_group_uniform_arithmetic¶ | ||||||
cl_arm_non_uniform_work_group_size¶ | ||||||
cl_arm_shared_virtual_memory¶ | ||||||
cl_intel_unified_shared_memory¶ |