GPU Debugging API Support

CodeXL

PreviousNext
CodeXL User Guide
Help > Using CodeXL > GPU Debugger > GPU Debugging API Support
GPU Debugging API Support

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

cl_khr_d3d10_sharing

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.

 

Full Extension Support Level

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.