COVERAGE.md
Coverage of support for Vulkan core features and extensions in Vulkano, as of the Vulkan 1.4.303 spec.
"Partially supported" includes core features and extensions that have some support in Vulkano, but are not fully implemented. A list of unimplemented features is given.
VkAllocationCallbacksVK_KHR_16bit_storageVK_KHR_bind_memory2VK_KHR_dedicated_allocationVK_KHR_device_group_creationVK_KHR_get_memory_requirements2VK_KHR_get_physical_device_properties2VK_KHR_external_fenceVK_KHR_external_fence_capabilitiesVK_KHR_external_memoryVK_KHR_external_memory_capabilitiesVK_KHR_external_semaphoreVK_KHR_external_semaphore_capabilitiesVK_KHR_maintenance1VK_KHR_maintenance2VK_KHR_maintenance3VK_KHR_multiviewVK_KHR_relaxed_block_layoutVK_KHR_shader_draw_parametersVK_KHR_storage_buffer_storage_classVK_KHR_variable_pointersvkEnumerateInstanceVersionVK_KHR_sampler_ycbcr_conversion
VkSamplerYcbcrConversionImageFormatPropertiesKHRVK_KHR_descriptor_update_templateVK_KHR_device_groupVK_KHR_8bit_storageVK_KHR_depth_stencil_resolveVK_KHR_draw_indirect_countVK_KHR_driver_propertiesVK_EXT_host_query_resetVK_KHR_image_format_listVK_KHR_sampler_mirror_clamp_to_edgeVK_KHR_separate_depth_stencil_layoutsVK_KHR_spirv_1_4VK_KHR_shader_atomic_int64VK_KHR_shader_float16_int8VK_KHR_shader_float_controlsVK_KHR_shader_subgroup_extended_typesVK_KHR_timeline_semaphoreVK_KHR_uniform_buffer_standard_layoutVK_KHR_vulkan_memory_modelVK_EXT_descriptor_indexingVK_EXT_sampler_filter_minmaxVK_EXT_scalar_block_layoutVK_EXT_separate_stencil_usageVK_EXT_shader_viewport_index_layerVK_KHR_buffer_device_address
vkGetBufferOpaqueCaptureAddressKHR / VkBufferOpaqueCaptureAddressCreateInfoKHRvkGetDeviceMemoryOpaqueCaptureAddressKHR / VkMemoryOpaqueCaptureAddressAllocateInfoKHRVK_KHR_imageless_framebufferframebufferIntegerColorSampleCountsVK_KHR_copy_commands2VK_KHR_create_renderpass2VK_KHR_format_feature_flags2VK_KHR_shader_integer_dot_productVK_KHR_shader_non_semantic_infoVK_KHR_shader_terminate_invocationVK_KHR_zero_initialize_workgroup_memoryVK_EXT_4444_formatsVK_EXT_extended_dynamic_stateVK_EXT_extended_dynamic_state2VK_EXT_image_robustnessVK_EXT_inline_uniform_blockVK_EXT_private_dataVK_EXT_shader_demote_to_helper_invocationVK_EXT_subgroup_size_controlVK_EXT_texel_buffer_alignmentVK_EXT_texture_compression_astc_hdrVK_EXT_tooling_infoVK_EXT_ycbcr_2plane_444_formatsVK_KHR_dynamic_rendering
VK_KHR_maintenance4
maxBufferSize limitvkGetDeviceImageSparseMemoryRequirementsKHRVK_KHR_synchronization2
vkQueueSubmit2KHR / VkSemaphoreSubmitInfoKHR (missing parameters related to device groups)VK_KHR_dynamic_rendering_local_readVK_KHR_global_priorityVK_KHR_index_type_uint8VK_KHR_line_rasterizationVK_KHR_load_store_op_noneVK_KHR_maintenance5VK_KHR_maintenance6VK_KHR_shader_subgroup_rotateVK_KHR_vertex_attribute_divisorVK_EXT_host_image_copyVK_EXT_pipeline_protected_accessVK_EXT_pipeline_robustnessVK_KHR_android_surfaceVK_KHR_compute_shader_derivativesVK_KHR_cooperative_matrixVK_KHR_deferred_host_operationsVK_KHR_displayVK_KHR_external_fence_fdVK_KHR_external_fence_win32VK_KHR_external_memory_fdVK_KHR_external_semaphore_fdVK_KHR_fragment_shader_barycentricVK_KHR_get_display_properties2VK_KHR_get_surface_capabilities2VK_KHR_incremental_presentVK_KHR_map_memory2 (promoted)VK_KHR_portability_enumerationVK_KHR_present_idVK_KHR_present_waitVK_KHR_push_descriptor (promoted)VK_KHR_ray_queryVK_KHR_shader_clockVK_KHR_shader_maximal_reconvergenceVK_KHR_shader_quad_controlVK_KHR_shader_relaxed_extended_instructionVK_KHR_shader_subgroup_uniform_control_flowVK_KHR_surfaceVK_KHR_surface_protected_capabilitiesVK_KHR_swapchainVK_KHR_swapchain_mutable_formatVK_KHR_wayland_surfaceVK_KHR_win32_surfaceVK_KHR_workgroup_memory_explicit_layoutVK_KHR_xcb_surfaceVK_KHR_xlib_surfaceVK_EXT_color_write_enableVK_EXT_conservative_rasterizationVK_EXT_depth_range_unrestrictedVK_EXT_directfb_surfaceVK_EXT_discard_rectanglesVK_EXT_external_memory_dma_bufVK_EXT_filter_cubicVK_EXT_fragment_shader_interlockVK_EXT_full_screen_exclusiveVK_EXT_headless_surfaceVK_EXT_image_2d_view_of_3dVK_EXT_image_drm_format_modifierVK_EXT_index_type_uint8 (promoted)VK_EXT_line_rasterization (promoted)VK_EXT_mesh_shaderVK_EXT_metal_surfaceVK_EXT_primitive_topology_list_restartVK_EXT_robustness2VK_EXT_shader_atomic_floatVK_EXT_shader_atomic_float2VK_EXT_shader_image_atomic_int64VK_EXT_shader_replicated_compositesVK_EXT_shader_stencil_exportVK_EXT_shader_subgroup_ballot (deprecated)VK_EXT_shader_subgroup_vote (deprecated)VK_EXT_shader_tile_imageVK_EXT_surface_maintenance1VK_EXT_swapchain_colorspaceVK_EXT_queue_family_foreignVK_EXT_validation_featuresVK_EXT_vertex_attribute_divisor (promoted)VK_EXT_vertex_input_dynamic_stateVK_EXT_ycbcr_image_arraysVK_FUCHSIA_external_semaphoreVK_FUCHSIA_imagepipe_surfaceVK_GGP_stream_descriptor_surfaceVK_MSFT_layered_driverVK_MVK_ios_surface (deprecated)VK_MVK_macos_surface (deprecated)VK_QNX_screen_surfaceVK_KHR_acceleration_structure
VK_KHR_external_memory_win32
vkGetMemoryWin32HandleKHRvkGetMemoryWin32HandlePropertiesKHRVkExportMemoryWin32HandleInfoKHRVK_KHR_external_semaphore_win32
VkD3D12FenceSubmitInfoKHRVK_KHR_fragment_shading_rateVK_KHR_portability_subset (provisional)
tessellationIsolinestessellationPointModeVK_KHR_ray_tracing_pipeline
vkCmdSetRayTracingPipelineStackSizeKHRvkCmdTraceRaysIndirectKHR / VkTraceRaysIndirectCommandKHRvkGetRayTracingCaptureReplayShaderGroupHandlesKHRVK_KHR_ray_tracing_maintenance1
vkCmdTraceRaysIndirect2KHRVK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHRVK_EXT_buffer_device_address (deprecated)
VkBufferDeviceAddressCreateInfoEXTVK_EXT_debug_utils
vkSetDebugUtilsObjectTagEXTvkSubmitDebugUtilsMessageEXTVkDebugUtilsMessengerCallbackDataEXT (not all data exposed to callback)VkDebugUtilsObjectNameInfoEXT extending VkPipelineShaderStageCreateInfoVK_EXT_swapchain_maintenance1
vkReleaseSwapchainImagesEXT / VkReleaseSwapchainImagesInfoEXTVkSwapchainPresentFenceInfoEXTVK_KHR_calibrated_timestampsVK_KHR_display_swapchainVK_KHR_maintenance7VK_KHR_performance_queryVK_KHR_pipeline_binaryVK_KHR_pipeline_executable_propertiesVK_KHR_pipeline_libraryVK_KHR_ray_tracing_position_fetchVK_KHR_shared_presentable_imageVK_KHR_video_decode_av1VK_KHR_video_decode_h264VK_KHR_video_decode_h265VK_KHR_video_decode_queueVK_KHR_video_encode_av1VK_KHR_video_encode_h264VK_KHR_video_encode_h265VK_KHR_video_encode_quantization_mapVK_KHR_video_encode_queueVK_KHR_video_maintenance1VK_KHR_video_queueVK_KHR_win32_keyed_mutexVK_EXT_acquire_drm_displayVK_EXT_acquire_xlib_displayVK_EXT_astc_decode_modeVK_EXT_attachment_feedback_loop_dynamic_stateVK_EXT_attachment_feedback_loop_layoutVK_EXT_blend_operation_advancedVK_EXT_border_color_swizzleVK_EXT_calibrated_timestamps (promoted)VK_EXT_conditional_renderingVK_EXT_custom_border_colorVK_EXT_debug_marker (promoted)VK_EXT_debug_report (deprecated)VK_EXT_depth_bias_controlVK_EXT_depth_clamp_zero_oneVK_EXT_depth_clip_controlVK_EXT_depth_clip_enableVK_EXT_descriptor_bufferVK_EXT_device_address_binding_reportVK_EXT_device_faultVK_EXT_device_generated_commandsVK_EXT_device_memory_reportVK_EXT_direct_mode_displayVK_EXT_display_controlVK_EXT_display_surface_counterVK_EXT_dynamic_rendering_unused_attachmentsVK_EXT_extended_dynamic_state3VK_EXT_external_memory_acquire_unmodifiedVK_EXT_external_memory_hostVK_EXT_fragment_density_mapVK_EXT_fragment_density_map2VK_EXT_frame_boundaryVK_EXT_global_priority (promoted)VK_EXT_global_priority_query (promoted)VK_EXT_graphics_pipeline_libraryVK_EXT_hdr_metadataVK_EXT_image_compression_controlVK_EXT_image_compression_control_swapchainVK_EXT_image_sliced_view_of_3dVK_EXT_image_view_min_lodVK_EXT_legacy_ditheringVK_EXT_legacy_vertex_attributesVK_EXT_load_store_op_none (promoted)VK_EXT_memory_budgetVK_EXT_memory_priorityVK_EXT_metal_objectsVK_EXT_multi_drawVK_EXT_multisampled_render_to_single_sampledVK_EXT_mutable_descriptor_typeVK_EXT_nested_command_bufferVK_EXT_non_seamless_cube_mapVK_EXT_opacity_micromapVK_EXT_pageable_device_local_memoryVK_EXT_pci_bus_infoVK_EXT_physical_device_drmVK_EXT_pipeline_library_group_handlesVK_EXT_pipeline_propertiesVK_EXT_post_depth_coverageVK_EXT_present_mode_fifo_latest_readyVK_EXT_primitive_topology_list_restartVK_EXT_primitives_generated_queryVK_EXT_provoking_vertexVK_EXT_rasterization_order_attachment_accessVK_EXT_rgba10x6_formatsVK_EXT_sample_locationsVK_EXT_shader_module_identifierVK_EXT_shader_objectVK_EXT_subpass_merge_feedbackVK_EXT_transform_feedbackVK_EXT_validation_cacheVK_EXT_validation_flags (deprecated)VK_EXT_vertex_attribute_robustnessVK_EXT_ycbcr_image_arraysVK_AMD_anti_lagVK_AMD_buffer_markerVK_AMD_device_coherent_memoryVK_AMD_display_native_hdrVK_AMD_draw_indirect_count (promoted)VK_AMD_gcn_shaderVK_AMD_gpu_shader_half_float (deprecated)VK_AMD_gpu_shader_int16 (deprecated)VK_AMD_memory_overallocation_behaviorVK_AMD_mixed_attachment_samplesVK_AMD_negative_viewport_height (obsoleted)VK_AMD_pipeline_compiler_controlVK_AMD_rasterization_orderVK_AMD_shader_ballotVK_AMD_shader_core_propertiesVK_AMD_shader_core_properties2VK_AMD_shader_early_and_late_fragment_testsVK_AMD_shader_explicit_vertex_parameterVK_AMD_shader_fragment_maskVK_AMD_shader_image_load_store_lodVK_AMD_shader_infoVK_AMD_shader_trinary_minmaxVK_AMD_texture_gather_bias_lodVK_AMDX_shader_enqueue (provisional)VK_ANDROID_external_format_resolveVK_ANDROID_external_memory_android_hardware_bufferVK_ARM_render_pass_stripedVK_ARM_rasterization_order_attachment_access (promoted)VK_ARM_scheduling_controlsVK_ARM_shader_core_builtinsVK_ARM_shader_core_propertiesVK_FUCHSIA_buffer_collectionVK_FUCHSIA_external_memoryVK_GGP_frame_tokenVK_GOOGLE_decorate_stringVK_GOOGLE_display_timingVK_GOOGLE_hlsl_functionality1VK_GOOGLE_surfaceless_queryVK_GOOGLE_user_typeVK_HUAWEI_cluster_culling_shaderVK_HUAWEI_invocation_maskVK_HUAWEI_subpass_shadingVK_IMG_filter_cubicVK_IMG_format_pvrtc (deprecated)VK_IMG_relaxed_line_rasterizationVK_INTEL_performance_queryVK_INTEL_shader_integer_functions2VK_LUNARG_direct_driver_loadingVK_MESA_image_alignment_controlVK_NN_vi_surfaceVK_NV_acquire_winrt_displayVK_NV_clip_space_w_scalingVK_NV_command_buffer_inheritanceVK_NV_compute_shader_derivatives (promoted)VK_NV_cooperative_matrixVK_NV_cooperative_matrix2VK_NV_copy_memory_indirectVK_NV_corner_sampled_imageVK_NV_coverage_reduction_modeVK_NV_dedicated_allocation (deprecated)VK_NV_dedicated_allocation_image_aliasingVK_NV_descriptor_pool_overallocationVK_NV_device_diagnostic_checkpointsVK_NV_device_diagnostics_configVK_NV_device_generated_commandsVK_NV_device_generated_commands_computeVK_NV_displacement_micromap (provisional)VK_NV_display_stereoVK_NV_extended_sparse_address_spaceVK_NV_external_memory (deprecated)VK_NV_external_memory_capabilities (deprecated)VK_NV_external_memory_rdmaVK_NV_external_memory_win32 (deprecated)VK_NV_fill_rectangleVK_NV_fragment_coverage_to_colorVK_NV_fragment_shader_barycentric (promoted)VK_NV_fragment_shading_rate_enumsVK_NV_framebuffer_mixed_samplesVK_NV_geometry_shader_passthroughVK_NV_glsl_shader (deprecated)VK_NV_inherited_viewport_scissorVK_NV_linear_color_attachmentVK_NV_low_latencyVK_NV_low_latency2VK_NV_memory_decompressionVK_NV_mesh_shaderVK_NV_optical_flowVK_NV_per_stage_descriptor_setVK_NV_present_barrierVK_NV_ray_tracing (deprecated)VK_NV_ray_tracing_invocation_reorderVK_NV_ray_tracing_motion_blurVK_NV_ray_tracing_validationVK_NV_representative_fragment_testVK_NV_sample_mask_override_coverageVK_NV_scissor_exclusiveVK_NV_shader_atomic_float16_vectorVK_NV_shader_image_footprintVK_NV_shader_sm_builtinsVK_NV_shader_subgroup_partitionedVK_NV_shading_rate_imageVK_NV_viewport_array2VK_NV_viewport_swizzleVK_NV_win32_keyed_mutex (promoted)VK_NVX_binary_importVK_NVX_image_view_handleVK_NVX_multiview_per_view_attributesVK_QCOM_filter_cubic_clampVK_QCOM_filter_cubic_weightsVK_QCOM_fragment_density_map_offsetVK_QCOM_image_processingVK_QCOM_image_processing2VK_QCOM_multiview_per_view_render_areasVK_QCOM_multiview_per_view_viewportsVK_QCOM_render_pass_shader_resolveVK_QCOM_render_pass_store_opsVK_QCOM_render_pass_transformVK_QCOM_rotated_copy_commandsVK_QCOM_tile_propertiesVK_QCOM_ycbcr_degammaVK_QNX_external_memory_screen_bufferVK_SEC_amigo_profilingVK_VALVE_descriptor_set_host_mappingVK_VALVE_mutable_descriptor_type (promoted)