CodeXL GPU debugging supports OpenCL up to and including version 2.0, OpenGL up to and including version 4.5 (including compatibility profiles) and a large variety of OpenCL and OpenGL extensions.
Kernel debugging is not supported for OpenCL 2.0 kernels.
The supported extensions include:
OpenCL Extensions
Extension name |
Support level |
cl_khr_3d_image_writes |
Full |
cl_khr_byte_addressable_store |
Full |
cl_khr_dx9_media_sharing |
Full |
Full |
|
cl_khr_d3d11_sharing |
Full |
cl_khr_fp64 |
Full |
cl_khr_gl_sharing |
Full |
cl_khr_icd |
Full |
cl_khr_global_int32_base_atomics |
Standard * |
cl_khr_global_int32_extended_atomics |
Standard * |
cl_khr_local_int32_base_atomics |
Standard * |
cl_khr_local_int32_extended_atomics |
Standard * |
cl_ext_atomic_counters_32 |
Standard * |
cl_ext_cl20_atomics |
Standard * |
cl_ext_cl20_svm |
Standard * |
cl_ext_device_fission |
Standard |
cl_amd_c11_atomics |
Standard * |
cl_amd_device_attribute_query |
Standard |
cl_amd_fp64 |
Full |
cl_amd_media_ops |
Standard |
cl_amd_popcnt |
Standard * |
cl_amd_printf |
Standard * |
cl_amd_svm |
Standard * |
cl_amd_vec3 |
Standard |
cl_nv_d3d9_sharing |
Standard |
cl_nv_d3d10_sharing |
Standard |
cl_nv_d3d11_sharing |
Standard |
* Using this extension in a kernel might prevent the kernel from being debuggable. If kernel debugging is attempted, a message notifying the user that the kernel uses unsupported features will be displayed. |
OpenGL extensions
Extension name |
Support level |
GL_ARB_arrays_of_arrays |
Standard |
GL_ARB_base_instance |
Full |
GL_ARB_blend_func_extended |
Standard |
GL_ARB_clear_buffer_object |
Standard |
GL_ARB_color_buffer_float |
Standard |
GL_ARB_compatibility |
Full |
GL_ARB_compressed_texture_pixel_storage |
Standard |
GL_ARB_compute_shader |
Full |
GL_ARB_conservative_depth |
Standard |
GL_ARB_copy_buffer |
Full |
GL_ARB_copy_image |
Standard |
GL_ARB_debug_output |
Full |
GL_ARB_debug_output |
Full |
GL_ARB_depth_buffer_float |
Standard |
GL_ARB_depth_clamp |
Full |
GL_ARB_depth_clamp |
Standard |
GL_ARB_depth_texture |
Standard |
GL_ARB_draw_buffers |
Standard |
GL_ARB_draw_buffers_blend |
Standard |
GL_ARB_draw_elements_base_vertex |
Full |
GL_ARB_draw_elemnts_base_vertex |
Full |
GL_ARB_draw_indirect |
Full |
GL_ARB_draw_instanced |
Full |
GL_ARB_ES2_compatibility |
Standard |
GL_ARB_ES3_compatibility |
Standard |
GL_ARB_explicit_attrib_location |
Standard |
GL_ARB_explicit_uniform_location |
Standard |
GL_ARB_fragment_coord_conventions |
Full |
GL_ARB_fragment_coord_conventions |
Standard |
GL_ARB_fragment_layer_viewport |
Standard |
GL_ARB_fragment_program |
Standard |
GL_ARB_fragment_program_shadow |
Standard |
GL_ARB_fragment_shader |
Full |
GL_ARB_framebuffer_no_attachments |
Standard |
GL_ARB_framebuffer_object |
Full |
GL_ARB_framebuffer_sRGB |
Full |
GL_ARB_geometry_shader4 |
Full |
GL_ARB_geometry_shader4 |
Full |
GL_ARB_get_program_binary |
Standard |
GL_ARB_gpu_shader_fp64 |
Full |
GL_ARB_gpu_shader5 |
Full |
GL_ARB_half_float_pixel |
Standard |
GL_ARB_half_float_vertex |
Standard |
GL_ARB_instanced_arrays |
Full |
GL_ARB_instanced_arrays |
Full |
GL_ARB_internalformat_query |
Standard |
GL_ARB_internalformat_query2 |
Standard |
GL_ARB_invalidate_subdata |
Standard |
GL_ARB_map_buffer_alignment |
Standard |
GL_ARB_map_buffer_range |
Standard |
GL_ARB_matrix_palette |
Standard |
GL_ARB_multi_draw_indirect |
Full |
GL_ARB_multisample |
Standard |
GL_ARB_multitexture |
Full |
GL_ARB_occlusion_query |
Standard |
GL_ARB_occlusion_query2 |
Standard |
GL_ARB_pixel_buffer_object |
Standard |
GL_ARB_point_parameters |
Full |
GL_ARB_point_sprite |
Standard |
GL_ARB_program_interface_query |
Standard |
GL_ARB_provoking_vertex |
Full |
GL_ARB_provoking_vertex |
Standard |
GL_ARB_robust_buffer_access_behavior |
Standard |
GL_ARB_sample_shading |
Standard |
GL_ARB_sampler_objects |
Standard |
GL_ARB_seamless_cube_map |
Full |
GL_ARB_seamless_cube_map |
Standard |
GL_ARB_separate_shader_objects |
Standard |
GL_ARB_shader_atomic_counters |
Full |
GL_ARB_shader_bit_encoding |
Standard |
GL_ARB_shader_image_load_store |
Standard |
GL_ARB_shader_image_size |
Standard |
GL_ARB_shader_objects |
Full |
GL_ARB_shader_precision |
Standard |
GL_ARB_shader_storage_buffer_object |
Standard |
GL_ARB_shader_subroutine |
Standard |
GL_ARB_shading_language_100 |
Full |
GL_ARB_shading_language_420pack |
Standard |
GL_ARB_shading_language_packing |
Standard |
GL_ARB_shadow |
Full |
GL_ARB_shadow_ambient |
Standard |
GL_ARB_stencil_texturing |
Standard |
GL_ARB_sync |
Full |
GL_ARB_sync |
Full |
GL_ARB_tessellation_shader |
Full |
GL_ARB_texture_border_clamp |
Full |
GL_ARB_texture_buffer_object |
Full |
GL_ARB_texture_buffer_object_rgb32 |
Standard |
GL_ARB_texture_buffer_range |
Standard |
GL_ARB_texture_compression |
Full |
GL_ARB_texture_compression_rgtc |
Standard |
GL_ARB_texture_cube_map |
Full |
GL_ARB_texture_cube_map_array |
Full |
GL_ARB_texture_env_add |
Full |
GL_ARB_texture_env_combine |
Full |
GL_ARB_texture_env_crossbar |
Full |
GL_ARB_texture_env_dot3 |
Full |
GL_ARB_texture_float |
Standard |
GL_ARB_texture_gather |
Standard |
GL_ARB_texture_mirrored_repeat |
Full |
GL_ARB_texture_multisample |
Full |
GL_ARB_texture_multisample |
Standard |
GL_ARB_texture_non_power_of_two |
Full |
GL_ARB_texture_query_levels |
Standard |
GL_ARB_texture_rectangle |
Full |
GL_ARB_texture_rg |
Standard |
GL_ARB_texture_rgb10_a2ui |
Standard |
GL_ARB_texture_storage |
Standard |
GL_ARB_texture_storage_multisample |
Standard |
GL_ARB_texture_swizzle |
Standard |
GL_ARB_texture_view |
Standard |
GL_ARB_timer_query |
Standard |
GL_ARB_transform_feedback_instanced |
Standard |
GL_ARB_transform_feedback2 |
Standard |
GL_ARB_transform_feedback3 |
Standard |
GL_ARB_transpose_matrix |
Full |
GL_ARB_uniform_buffer_object |
Full |
GL_ARB_vertex_array_bgra |
Full |
GL_ARB_vertex_array_bgra |
Standard |
GL_ARB_vertex_array_object |
Full |
GL_ARB_vertex_attrib_64bit |
Standard |
GL_ARB_vertex_attrib_binding |
Standard |
GL_ARB_vertex_blend |
Full |
GL_ARB_vertex_buffer_object |
Standard |
GL_ARB_vertex_program |
Standard |
GL_ARB_vertex_shader |
Full |
GL_ARB_vertex_type_2_10_10_10_rev |
Standard |
GL_ARB_viewport_array |
Standard |
GL_ARB_window_pos |
Full |
GL_EXT_bgra |
Full |
GL_EXT_bindable_uniform |
Full |
GL_EXT_blend_logic_op |
Full |
GL_EXT_blend_minmax |
Full |
GL_EXT_blend_subtract |
Full |
GL_EXT_compiled_vertex_array |
Full |
GL_EXT_direct_state_access |
Full |
GL_EXT_draw_instanced |
Full |
GL_EXT_framebuffer_blit |
Full |
GL_EXT_framebuffer_multisample |
Full |
GL_EXT_framebuffer_object |
Full |
GL_EXT_geometry_shader4 |
Full |
GL_EXT_multi_draw_arrays |
Full |
GL_EXT_packed_pixels |
Full |
GL_EXT_stencil_two_side |
Full |
GL_EXT_texture |
Full |
GL_EXT_texture_array |
Full |
GL_EXT_texture_buffer_object |
Full |
GL_EXT_texture_integer |
Full |
GL_EXT_texture_rectangle |
Full |
GL_EXT_texture_shared_exponent |
Full |
GL_EXT_texture3D |
Full |
GL_EXT_vertex_shader |
Standard |
GL_AMD_debug_output |
Full |
GL_AMDX_debug_output |
Full |
GL_APPLE_aux_depth_stencil |
Full |
GL_APPLE_client_storage |
Full |
GL_APPLE_element_array |
Full |
GL_APPLE_fence |
Standard |
GL_APPLE_float_pixels |
Full |
GL_APPLE_flush_buffer_range |
Standard |
GL_APPLE_flush_render |
Standard |
GL_APPLE_object_purgeable |
Standard |
GL_APPLE_packed_pixels |
Full |
GL_APPLE_pixel_buffer |
Standard |
GL_APPLE_specular_vector |
Full |
GL_APPLE_texture_range |
Standard |
GL_APPLE_transform_hint |
Full |
GL_APPLE_vertex_array_object |
Standard |
GL_APPLE_vertex_array_range |
Standard |
GL_APPLE_vertex_program_evaluators |
Full |
GL_APPLE_ycbcr_422 |
Full |
GL_ATI_draw_buffers |
Standard |
GL_ATI_fragment_shader |
Standard |
GL_ATI_text_fragment_shader |
Standard |
GL_GREMEDY_frame_terminator |
Full |
GL_GREMEDY_string_marker |
Full |
GL_HP_occlusion_test |
Standard |
GL_KHR_debug |
Standard |
GL_NV_fragment_program |
Standard |
GL_NV_fragment_program_option |
Standard |
GL_NV_fragment_program2 |
Standard |
GL_NV_geometry_shader4 |
Full |
GL_NV_occlusion_query |
Standard |
GL_NV_primitive_restart |
Full |
GL_NV_texgen_reflection |
Full |
GL_NV_texture_rectangle |
Full |
GL_NV_texture_shader |
Standard |
GL_NV_texture_shader3 |
Standard |
GL_NV_vertex_program |
Standard |
GL_NV_vertex_program1_1 |
Standard |
GL_NV_vertex_program2 |
Standard |
GL_NV_vertex_program2_option |
Standard |
GL_NV_vertex_program3 |
Standard |
GL_OES_draw_texture |
Standard |
GL_SGIS_generate_mipmap |
Full |
GL_SGIS_texture_border_clamp |
Full |
GL_SGIS_texture_edge_clamp |
Full |
GL_SGIS_texture_lod |
Full |
GL_SGIS_texture_select |
Full |
GL_SGIX_depth_texture |
Full |
GL_SGIX_interlace |
Full |
GL_SGIX_shadow |
Full |
GL_SGIX_shadow_ambient |
Full |
GLX_ARB_create_context |
Full |
GLX_ARB_create_context_profile |
Full |
GLX_ARB_fbconfig_float |
Standard |
GLX_ARB_framebuffer_sRGB |
Full |
GLX_ARB_get_proc_address |
Full |
GLX_ARB_multisample |
Standard |
GLX_SGI_video_sync |
Standard |
GLX_SGIX_fbconfig |
Standard |
WGL_AMD_gpu_association |
Standard |
WGL_ARB_buffer_region |
Standard |
WGL_ARB_create_context |
Full |
WGL_ARB_create_context_profile |
Full |
WGL_ARB_extensions_string |
Full |
WGL_ARB_framebuffer_sRGB |
Full |
WGL_ARB_make_current_read |
Standard |
WGL_ARB_multisample |
Standard |
WGL_ARB_pbuffer |
Standard |
WGL_ARB_pixel_format |
Standard |
WGL_ARB_pixel_format_float |
Standard |
WGL_ARB_render_texture |
Standard |
WGL_I3D_genlock |
Standard |
WGL_NV_gpu_affinity |
Standard |
WGL_NV_present_video |
Standard |
WGL_NV_swap_group |
Standard |
WGL_NV_video_out |
Standard |
Standard Extension Support Level
The Standard Extension Support Level enables one to log the calls and arguments of the extension functions, set breakpoints at the extension functions, and watch the values of the extension states variables.
In addition to supporting the Standard Extension Support Level features, the Full Extension Support Level enables one to view the extension-related data in the corresponding CodeXL views.