$ vulkaninfo
==========
VULKANINFO
==========

Vulkan Instance Version: 1.4.313


Instance Extensions: count = 24
===============================
        VK_EXT_acquire_drm_display             : extension revision 1
        VK_EXT_acquire_xlib_display            : extension revision 1
        VK_EXT_debug_report                    : extension revision 10
        VK_EXT_debug_utils                     : extension revision 2
        VK_EXT_direct_mode_display             : extension revision 1
        VK_EXT_display_surface_counter         : extension revision 1
        VK_EXT_headless_surface                : extension revision 1
        VK_EXT_surface_maintenance1            : extension revision 1
        VK_EXT_swapchain_colorspace            : extension revision 5
        VK_KHR_device_group_creation           : extension revision 1
        VK_KHR_display                         : extension revision 23
        VK_KHR_external_fence_capabilities     : extension revision 1
        VK_KHR_external_memory_capabilities    : extension revision 1
        VK_KHR_external_semaphore_capabilities : extension revision 1
        VK_KHR_get_display_properties2         : extension revision 1
        VK_KHR_get_physical_device_properties2 : extension revision 2
        VK_KHR_get_surface_capabilities2       : extension revision 1
        VK_KHR_portability_enumeration         : extension revision 1
        VK_KHR_surface                         : extension revision 25
        VK_KHR_surface_protected_capabilities  : extension revision 1
        VK_KHR_wayland_surface                 : extension revision 6
        VK_KHR_xcb_surface                     : extension revision 6
        VK_KHR_xlib_surface                    : extension revision 6
        VK_LUNARG_direct_driver_loading        : extension revision 1

Layers: count = 3
=================
VK_LAYER_INTEL_nullhw (INTEL NULL HW) Vulkan version 1.1.73, layer version 1:
        Layer Extensions: count = 0
        Devices: count = 2
                GPU id = 0 (Intel(R) UHD Graphics 620 (KBL GT2))
                Layer-Device Extensions: count = 0

                GPU id = 1 (llvmpipe (LLVM 20.1.4, 256 bits))
                Layer-Device Extensions: count = 0

VK_LAYER_MESA_device_select (Linux device selection layer) Vulkan version 1.4.303, layer version 1:
        Layer Extensions: count = 0
        Devices: count = 2
                GPU id = 0 (Intel(R) UHD Graphics 620 (KBL GT2))
                Layer-Device Extensions: count = 0

                GPU id = 1 (llvmpipe (LLVM 20.1.4, 256 bits))
                Layer-Device Extensions: count = 0

VK_LAYER_MESA_overlay (Mesa Overlay layer) Vulkan version 1.4.303, layer version 1:
        Layer Extensions: count = 0
        Devices: count = 2
                GPU id = 0 (Intel(R) UHD Graphics 620 (KBL GT2))
                Layer-Device Extensions: count = 0

                GPU id = 1 (llvmpipe (LLVM 20.1.4, 256 bits))
                Layer-Device Extensions: count = 0

Presentable Surfaces:
=====================
GPU id : 0 (Intel(R) UHD Graphics 620 (KBL GT2)) [VK_KHR_xcb_surface, VK_KHR_xlib_surface]:
        Surface types: count = 2
                VK_KHR_xcb_surface
                VK_KHR_xlib_surface
        Formats: count = 2
                SurfaceFormat[0]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[1]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
        Present Modes: count = 4
                PRESENT_MODE_IMMEDIATE_KHR
                PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_FIFO_RELAXED_KHR
        VkSurfaceCapabilitiesKHR:
        -------------------------
                minImageCount = 3
                maxImageCount = 0
                currentExtent:
                        width  = 256
                        height = 256
                minImageExtent:
                        width  = 256
                        height = 256
                maxImageExtent:
                        width  = 256
                        height = 256
                maxImageArrayLayers = 1
                supportedTransforms: count = 1
                        SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                supportedCompositeAlpha: count = 2
                        COMPOSITE_ALPHA_OPAQUE_BIT_KHR
                        COMPOSITE_ALPHA_INHERIT_BIT_KHR
                supportedUsageFlags: count = 7
                        IMAGE_USAGE_TRANSFER_SRC_BIT
                        IMAGE_USAGE_TRANSFER_DST_BIT
                        IMAGE_USAGE_SAMPLED_BIT
                        IMAGE_USAGE_STORAGE_BIT
                        IMAGE_USAGE_COLOR_ATTACHMENT_BIT
                        IMAGE_USAGE_INPUT_ATTACHMENT_BIT
                        IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
        VkSurfaceProtectedCapabilitiesKHR:
        ----------------------------------
                supportsProtected = false

        VK_EXT_surface_maintenance1:
        ----------------------------
                PRESENT_MODE_IMMEDIATE_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_MAILBOX_KHR:
                        minImageCount = 4
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_FIFO_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_FIFO_RELAXED_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR

GPU id : 1 (llvmpipe (LLVM 20.1.4, 256 bits)) [VK_KHR_xcb_surface, VK_KHR_xlib_surface]:
        Surface types: count = 2
                VK_KHR_xcb_surface
                VK_KHR_xlib_surface
        Formats: count = 2
                SurfaceFormat[0]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[1]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
        Present Modes: count = 4
                PRESENT_MODE_IMMEDIATE_KHR
                PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_FIFO_RELAXED_KHR
        VkSurfaceCapabilitiesKHR:
        -------------------------
                minImageCount = 3
                maxImageCount = 0
                currentExtent:
                        width  = 256
                        height = 256
                minImageExtent:
                        width  = 256
                        height = 256
                maxImageExtent:
                        width  = 256
                        height = 256
                maxImageArrayLayers = 1
                supportedTransforms: count = 1
                        SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                supportedCompositeAlpha: count = 2
                        COMPOSITE_ALPHA_OPAQUE_BIT_KHR
                        COMPOSITE_ALPHA_INHERIT_BIT_KHR
                supportedUsageFlags: count = 7
                        IMAGE_USAGE_TRANSFER_SRC_BIT
                        IMAGE_USAGE_TRANSFER_DST_BIT
                        IMAGE_USAGE_SAMPLED_BIT
                        IMAGE_USAGE_STORAGE_BIT
                        IMAGE_USAGE_COLOR_ATTACHMENT_BIT
                        IMAGE_USAGE_INPUT_ATTACHMENT_BIT
                        IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
        VkSurfaceProtectedCapabilitiesKHR:
        ----------------------------------
                supportsProtected = false

        VK_EXT_surface_maintenance1:
        ----------------------------
                PRESENT_MODE_IMMEDIATE_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_MAILBOX_KHR:
                        minImageCount = 4
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_FIFO_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                PRESENT_MODE_FIFO_RELAXED_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 256
                                        height = 256
                                maxScaledImageExtent:
                                        width  = 256
                                        height = 256
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 4
                                pPresentModes: count = 4
                                        PRESENT_MODE_FIFO_RELAXED_KHR
                                        PRESENT_MODE_IMMEDIATE_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR

GPU id : 0 (Intel(R) UHD Graphics 620 (KBL GT2)) [VK_KHR_wayland_surface]:
        Surface type = VK_KHR_wayland_surface
        Formats: count = 72
                SurfaceFormat[0]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[1]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[2]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[3]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[4]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[5]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[6]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[7]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[8]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[9]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[10]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[11]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[12]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[13]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[14]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[15]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[16]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[17]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[18]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[19]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[20]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[21]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[22]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[23]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[24]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[25]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[26]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[27]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[28]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[29]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[30]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[31]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[32]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[33]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[34]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[35]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[36]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[37]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[38]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[39]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[40]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[41]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[42]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[43]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[44]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[45]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[46]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[47]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[48]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[49]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[50]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[51]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[52]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[53]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[54]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[55]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[56]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[57]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[58]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[59]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[60]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[61]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[62]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[63]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[64]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[65]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[66]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[67]:
                        format = FORMAT_R8G8B8A8_SRGB
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[68]:
                        format = FORMAT_R8G8B8A8_UNORM
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[69]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[70]:
                        format = FORMAT_R5G6B5_UNORM_PACK16
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[71]:
                        format = FORMAT_R16G16B16A16_SFLOAT
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
        Present Modes: count = 3
                PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_IMMEDIATE_KHR
        VkSurfaceCapabilitiesKHR:
        -------------------------
                minImageCount = 4
                maxImageCount = 0
                currentExtent:
                        width  = 4294967295
                        height = 4294967295
                minImageExtent:
                        width  = 1
                        height = 1
                maxImageExtent:
                        width  = 16384
                        height = 16384
                maxImageArrayLayers = 1
                supportedTransforms: count = 1
                        SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                supportedCompositeAlpha: count = 2
                        COMPOSITE_ALPHA_OPAQUE_BIT_KHR
                        COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR
                supportedUsageFlags: count = 7
                        IMAGE_USAGE_TRANSFER_SRC_BIT
                        IMAGE_USAGE_TRANSFER_DST_BIT
                        IMAGE_USAGE_SAMPLED_BIT
                        IMAGE_USAGE_STORAGE_BIT
                        IMAGE_USAGE_COLOR_ATTACHMENT_BIT
                        IMAGE_USAGE_INPUT_ATTACHMENT_BIT
                        IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
        VkSurfaceProtectedCapabilitiesKHR:
        ----------------------------------
                supportsProtected = false

        VK_EXT_surface_maintenance1:
        ----------------------------
                PRESENT_MODE_MAILBOX_KHR:
                        minImageCount = 4
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 2
                                pPresentModes: count = 2
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_FIFO_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 2
                                pPresentModes: count = 2
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_IMMEDIATE_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 1
                                pPresentModes: count = 1
                                        PRESENT_MODE_IMMEDIATE_KHR

GPU id : 1 (llvmpipe (LLVM 20.1.4, 256 bits)) [VK_KHR_wayland_surface]:
        Surface type = VK_KHR_wayland_surface
        Formats: count = 45
                SurfaceFormat[0]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[1]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[2]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[3]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[4]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
                SurfaceFormat[5]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[6]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[7]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[8]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[9]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_PASS_THROUGH_EXT
                SurfaceFormat[10]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[11]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[12]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[13]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[14]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
                SurfaceFormat[15]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[16]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[17]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[18]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[19]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
                SurfaceFormat[20]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[21]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[22]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[23]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[24]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
                SurfaceFormat[25]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[26]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[27]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[28]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[29]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_BT709_LINEAR_EXT
                SurfaceFormat[30]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[31]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[32]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[33]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[34]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_BT2020_LINEAR_EXT
                SurfaceFormat[35]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[36]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[37]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[38]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[39]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_HDR10_ST2084_EXT
                SurfaceFormat[40]:
                        format = FORMAT_B8G8R8A8_SRGB
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[41]:
                        format = FORMAT_B8G8R8A8_UNORM
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[42]:
                        format = FORMAT_A2R10G10B10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[43]:
                        format = FORMAT_A2B10G10R10_UNORM_PACK32
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
                SurfaceFormat[44]:
                        format = FORMAT_R16G16B16A16_UNORM
                        colorSpace = COLOR_SPACE_ADOBERGB_LINEAR_EXT
        Present Modes: count = 3
                PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_IMMEDIATE_KHR
        VkSurfaceCapabilitiesKHR:
        -------------------------
                minImageCount = 4
                maxImageCount = 0
                currentExtent:
                        width  = 4294967295
                        height = 4294967295
                minImageExtent:
                        width  = 1
                        height = 1
                maxImageExtent:
                        width  = 16384
                        height = 16384
                maxImageArrayLayers = 1
                supportedTransforms: count = 1
                        SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
                supportedCompositeAlpha: count = 2
                        COMPOSITE_ALPHA_OPAQUE_BIT_KHR
                        COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR
                supportedUsageFlags: count = 7
                        IMAGE_USAGE_TRANSFER_SRC_BIT
                        IMAGE_USAGE_TRANSFER_DST_BIT
                        IMAGE_USAGE_SAMPLED_BIT
                        IMAGE_USAGE_STORAGE_BIT
                        IMAGE_USAGE_COLOR_ATTACHMENT_BIT
                        IMAGE_USAGE_INPUT_ATTACHMENT_BIT
                        IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
        VkSurfaceProtectedCapabilitiesKHR:
        ----------------------------------
                supportsProtected = false

        VK_EXT_surface_maintenance1:
        ----------------------------
                PRESENT_MODE_MAILBOX_KHR:
                        minImageCount = 4
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 2
                                pPresentModes: count = 2
                                        PRESENT_MODE_MAILBOX_KHR
                                        PRESENT_MODE_FIFO_KHR
                PRESENT_MODE_FIFO_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 2
                                pPresentModes: count = 2
                                        PRESENT_MODE_FIFO_KHR
                                        PRESENT_MODE_MAILBOX_KHR
                PRESENT_MODE_IMMEDIATE_KHR:
                        minImageCount = 3
                        maxImageCount = 0
                        VkSurfacePresentScalingCapabilitiesEXT:
                                supportedPresentScaling:
                                        None
                                supportedPresentGravityX:
                                        None
                                supportedPresentGravityY:
                                        None
                                minScaledImageExtent:
                                        width  = 1
                                        height = 1
                                maxScaledImageExtent:
                                        width  = 16384
                                        height = 16384
                        VkSurfacePresentModeCompatibilityEXT:
                                presentModeCount                = 1
                                pPresentModes: count = 1
                                        PRESENT_MODE_IMMEDIATE_KHR


Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
        apiVersion        = 1.4.311 (4210999)
        driverVersion     = 25.1.0 (104861696)
        vendorID          = 0x8086
        deviceID          = 0x5917
        deviceType        = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
        deviceName        = Intel(R) UHD Graphics 620 (KBL GT2)
        pipelineCacheUUID = 72ae29e9-e4e7-751b-076d-64414aa418a0

VkPhysicalDeviceLimits:
-----------------------
        maxImageDimension1D                             = 16384
        maxImageDimension2D                             = 16384
        maxImageDimension3D                             = 2048
        maxImageDimensionCube                           = 16384
        maxImageArrayLayers                             = 2048
        maxTexelBufferElements                          = 134217728
        maxUniformBufferRange                           = 134217728
        maxStorageBufferRange                           = 4294967295
        maxPushConstantsSize                            = 256
        maxMemoryAllocationCount                        = 4294967295
        maxSamplerAllocationCount                       = 65536
        bufferImageGranularity                          = 0x00000001
        sparseAddressSpaceSize                          = 0x00000000
        maxBoundDescriptorSets                          = 8
        maxPerStageDescriptorSamplers                   = 402653184
        maxPerStageDescriptorUniformBuffers             = 201326592
        maxPerStageDescriptorStorageBuffers             = 201326592
        maxPerStageDescriptorSampledImages              = 201326592
        maxPerStageDescriptorStorageImages              = 201326592
        maxPerStageDescriptorInputAttachments           = 64
        maxPerStageResources                            = 201326592
        maxDescriptorSetSamplers                        = 402653184
        maxDescriptorSetUniformBuffers                  = 201326592
        maxDescriptorSetUniformBuffersDynamic           = 8
        maxDescriptorSetStorageBuffers                  = 201326592
        maxDescriptorSetStorageBuffersDynamic           = 8
        maxDescriptorSetSampledImages                   = 201326592
        maxDescriptorSetStorageImages                   = 201326592
        maxDescriptorSetInputAttachments                = 256
        maxVertexInputAttributes                        = 29
        maxVertexInputBindings                          = 31
        maxVertexInputAttributeOffset                   = 2047
        maxVertexInputBindingStride                     = 4095
        maxVertexOutputComponents                       = 128
        maxTessellationGenerationLevel                  = 64
        maxTessellationPatchSize                        = 32
        maxTessellationControlPerVertexInputComponents  = 128
        maxTessellationControlPerVertexOutputComponents = 128
        maxTessellationControlPerPatchOutputComponents  = 128
        maxTessellationControlTotalOutputComponents     = 2048
        maxTessellationEvaluationInputComponents        = 128
        maxTessellationEvaluationOutputComponents       = 128
        maxGeometryShaderInvocations                    = 32
        maxGeometryInputComponents                      = 128
        maxGeometryOutputComponents                     = 128
        maxGeometryOutputVertices                       = 256
        maxGeometryTotalOutputComponents                = 1024
        maxFragmentInputComponents                      = 116
        maxFragmentOutputAttachments                    = 8
        maxFragmentDualSrcAttachments                   = 1
        maxFragmentCombinedOutputResources              = 402653192
        maxComputeSharedMemorySize                      = 65536
        maxComputeWorkGroupCount: count = 3
                65535
                65535
                65535
        maxComputeWorkGroupInvocations                  = 1024
        maxComputeWorkGroupSize: count = 3
                1024
                1024
                1024
        subPixelPrecisionBits                           = 8
        subTexelPrecisionBits                           = 8
        mipmapPrecisionBits                             = 8
        maxDrawIndexedIndexValue                        = 4294967295
        maxDrawIndirectCount                            = 4294967295
        maxSamplerLodBias                               = 16
        maxSamplerAnisotropy                            = 16
        maxViewports                                    = 16
        maxViewportDimensions: count = 2
                16384
                16384
        viewportBoundsRange: count = 2
                -32768
                32767
        viewportSubPixelBits                            = 13
        minMemoryMapAlignment                           = 4096
        minTexelBufferOffsetAlignment                   = 0x00000010
        minUniformBufferOffsetAlignment                 = 0x00000040
        minStorageBufferOffsetAlignment                 = 0x00000004
        minTexelOffset                                  = -8
        maxTexelOffset                                  = 7
        minTexelGatherOffset                            = -32
        maxTexelGatherOffset                            = 31
        minInterpolationOffset                          = -0.5
        maxInterpolationOffset                          = 0.4375
        subPixelInterpolationOffsetBits                 = 4
        maxFramebufferWidth                             = 16384
        maxFramebufferHeight                            = 16384
        maxFramebufferLayers                            = 2048
        framebufferColorSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        framebufferDepthSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        framebufferStencilSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        framebufferNoAttachmentsSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        maxColorAttachments                             = 8
        sampledImageColorSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        sampledImageIntegerSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        sampledImageDepthSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        sampledImageStencilSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        storageImageSampleCounts: count = 1
                SAMPLE_COUNT_1_BIT
        maxSampleMaskWords                              = 1
        timestampComputeAndGraphics                     = true
        timestampPeriod                                 = 83.3333
        maxClipDistances                                = 8
        maxCullDistances                                = 8
        maxCombinedClipAndCullDistances                 = 8
        discreteQueuePriorities                         = 2
        pointSizeRange: count = 2
                0.125
                255.875
        lineWidthRange: count = 2
                0
                8
        pointSizeGranularity                            = 0.125
        lineWidthGranularity                            = 0.0078125
        strictLines                                     = false
        standardSampleLocations                         = true
        optimalBufferCopyOffsetAlignment                = 0x00000080
        optimalBufferCopyRowPitchAlignment              = 0x00000080
        nonCoherentAtomSize                             = 0x00000040

VkPhysicalDeviceSparseProperties:
---------------------------------
        residencyStandard2DBlockShape            = false
        residencyStandard2DMultisampleBlockShape = false
        residencyStandard3DBlockShape            = false
        residencyAlignedMipSize                  = false
        residencyNonResidentStrict               = false

VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR:
------------------------------------------------------
        meshAndTaskShaderDerivatives = false

VkPhysicalDeviceConservativeRasterizationPropertiesEXT:
-------------------------------------------------------
        primitiveOverestimationSize                 = 0.00195312
        maxExtraPrimitiveOverestimationSize         = 0
        extraPrimitiveOverestimationSizeGranularity = 0
        primitiveUnderestimation                    = false
        conservativePointAndLineRasterization       = false
        degenerateTrianglesRasterized               = true
        degenerateLinesRasterized                   = false
        fullyCoveredFragmentShaderInputVariable     = false
        conservativeRasterizationPostDepthCoverage  = true

VkPhysicalDeviceCooperativeMatrixPropertiesKHR:
-----------------------------------------------
        cooperativeMatrixSupportedStages: count = 1
                SHADER_STAGE_COMPUTE_BIT

VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
        maxCustomBorderColorSamplers = 4096

VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT:
--------------------------------------------------------
        combinedImageSamplerDensityMapDescriptorSize = 0

VkPhysicalDeviceDescriptorBufferPropertiesEXT:
----------------------------------------------
        combinedImageSamplerDescriptorSingleArray            = true
        bufferlessPushDescriptors                            = true
        allowSamplerImageViewPostSubmitCreation              = true
        descriptorBufferOffsetAlignment                      = 0x00000040
        maxDescriptorBufferBindings                          = 3
        maxResourceDescriptorBufferBindings                  = 1
        maxSamplerDescriptorBufferBindings                   = 1
        maxEmbeddedImmutableSamplerBindings                  = 1
        maxEmbeddedImmutableSamplers                         = 2048
        bufferCaptureReplayDescriptorDataSize                = 8
        imageCaptureReplayDescriptorDataSize                 = 8
        imageViewCaptureReplayDescriptorDataSize             = 0
        samplerCaptureReplayDescriptorDataSize               = 4
        accelerationStructureCaptureReplayDescriptorDataSize = 0
        samplerDescriptorSize                                = 32
        combinedImageSamplerDescriptorSize                   = 128
        sampledImageDescriptorSize                           = 64
        storageImageDescriptorSize                           = 64
        uniformTexelBufferDescriptorSize                     = 64
        robustUniformTexelBufferDescriptorSize               = 64
        storageTexelBufferDescriptorSize                     = 64
        robustStorageTexelBufferDescriptorSize               = 64
        uniformBufferDescriptorSize                          = 64
        robustUniformBufferDescriptorSize                    = 64
        storageBufferDescriptorSize                          = 64
        robustStorageBufferDescriptorSize                    = 64
        inputAttachmentDescriptorSize                        = 64
        accelerationStructureDescriptorSize                  = 16
        maxSamplerDescriptorBufferRange                      = 0xbffff000
        maxResourceDescriptorBufferRange                     = 0x04000000
        samplerDescriptorBufferAddressSpaceSize              = 0xbffff000
        resourceDescriptorBufferAddressSpaceSize             = 0xbffff000
        descriptorBufferAddressSpaceSize                     = 0xbffff000

VkPhysicalDeviceDrmPropertiesEXT:
---------------------------------
        hasPrimary   = true
        hasRender    = true
        primaryMajor = 226
        primaryMinor = 1
        renderMajor  = 226
        renderMinor  = 129

VkPhysicalDeviceExtendedDynamicState3PropertiesEXT:
---------------------------------------------------
        dynamicPrimitiveTopologyUnrestricted = true

VkPhysicalDeviceExternalMemoryHostPropertiesEXT:
------------------------------------------------
        minImportedHostPointerAlignment = 0x00001000

VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT:
-----------------------------------------------------
        graphicsPipelineLibraryFastLinking                        = true
        graphicsPipelineLibraryIndependentInterpolationDecoration = true

VkPhysicalDeviceLayeredApiPropertiesListKHR:
--------------------------------------------
        layeredApiCount               = 0
        pLayeredApis                  = NULL

VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT:
----------------------------------------------------
        nativeUnalignedPerformance = true

VkPhysicalDeviceMaintenance7PropertiesKHR:
------------------------------------------
        robustFragmentShadingRateAttachmentAccess                 = true
        separateDepthStencilAttachmentAccess                      = true
        maxDescriptorSetTotalUniformBuffersDynamic                = 16
        maxDescriptorSetTotalStorageBuffersDynamic                = 16
        maxDescriptorSetTotalBuffersDynamic                       = 16
        maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic = 16
        maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic = 16
        maxDescriptorSetUpdateAfterBindTotalBuffersDynamic        = 16

VkPhysicalDeviceMapMemoryPlacedPropertiesEXT:
---------------------------------------------
        minPlacedMemoryMapAlignment = 0x00001000

VkPhysicalDeviceMultiDrawPropertiesEXT:
---------------------------------------
        maxMultiDrawCount = 2048

VkPhysicalDeviceNestedCommandBufferPropertiesEXT:
-------------------------------------------------
        maxCommandBufferNestingLevel = 4294967295

VkPhysicalDevicePCIBusInfoPropertiesEXT:
----------------------------------------
        pciDomain   = 0
        pciBus      = 0
        pciDevice   = 2
        pciFunction = 0

VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
        provokingVertexModePerPipeline                       = true
        transformFeedbackPreservesTriangleFanProvokingVertex = false

VkPhysicalDeviceRobustness2PropertiesEXT:
-----------------------------------------
        robustStorageBufferAccessSizeAlignment = 0x00000004
        robustUniformBufferAccessSizeAlignment = 0x00000040

VkPhysicalDeviceSampleLocationsPropertiesEXT:
---------------------------------------------
        sampleLocationSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT
        maxSampleLocationGridSize:
                width  = 1
                height = 1
        sampleLocationCoordinateRange: count = 2
                0
                0.9375
        sampleLocationSubPixelBits       = 4
        variableSampleLocations          = true

VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT:
----------------------------------------------------
        shaderModuleIdentifierAlgorithmUUID     = 4d455341-2d42-4c41-4b45-330000000000

VkPhysicalDeviceTransformFeedbackPropertiesEXT:
-----------------------------------------------
        maxTransformFeedbackStreams                = 4
        maxTransformFeedbackBuffers                = 4
        maxTransformFeedbackBufferSize             = 0x100000000
        maxTransformFeedbackStreamDataSize         = 512
        maxTransformFeedbackBufferDataSize         = 512
        maxTransformFeedbackBufferDataStride       = 2048
        transformFeedbackQueries                   = true
        transformFeedbackStreamsLinesTriangles     = false
        transformFeedbackRasterizationStreamSelect = false
        transformFeedbackDraw                      = true

VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
        maxVertexAttribDivisor = 268435455

VkPhysicalDeviceVulkan11Properties:
-----------------------------------
        deviceUUID                        = 86801759-0700-0000-0002-000000000000
        driverUUID                        = 744a36f9-2dca-6a44-1ba6-c65b2d1cdd65
        deviceNodeMask                    = 0
        deviceLUIDValid                   = false
        subgroupSize                      = 32
        subgroupSupportedStages: count = 6
                SHADER_STAGE_VERTEX_BIT
                SHADER_STAGE_TESSELLATION_CONTROL_BIT
                SHADER_STAGE_TESSELLATION_EVALUATION_BIT
                SHADER_STAGE_GEOMETRY_BIT
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
        subgroupSupportedOperations: count = 10
                SUBGROUP_FEATURE_BASIC_BIT
                SUBGROUP_FEATURE_VOTE_BIT
                SUBGROUP_FEATURE_ARITHMETIC_BIT
                SUBGROUP_FEATURE_BALLOT_BIT
                SUBGROUP_FEATURE_SHUFFLE_BIT
                SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
                SUBGROUP_FEATURE_CLUSTERED_BIT
                SUBGROUP_FEATURE_QUAD_BIT
                SUBGROUP_FEATURE_ROTATE_BIT
                SUBGROUP_FEATURE_ROTATE_CLUSTERED_BIT
        subgroupQuadOperationsInAllStages = true
        pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
        maxMultiviewViewCount             = 16
        maxMultiviewInstanceIndex         = 268435455
        protectedNoFault                  = false
        maxPerSetDescriptors              = 1024
        maxMemoryAllocationSize           = 0x16f122000

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
        driverID                                             = DRIVER_ID_INTEL_OPEN_SOURCE_MESA
        driverName                                           = Intel open-source Mesa driver
        driverInfo                                           = Mesa 25.1.0
        conformanceVersion:
                major    = 1
                minor    = 4
                subminor = 0
                patch    = 0
        denormBehaviorIndependence                           = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
        roundingModeIndependence                             = SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE
        shaderSignedZeroInfNanPreserveFloat16                = true
        shaderSignedZeroInfNanPreserveFloat32                = true
        shaderSignedZeroInfNanPreserveFloat64                = true
        shaderDenormPreserveFloat16                          = true
        shaderDenormPreserveFloat32                          = true
        shaderDenormPreserveFloat64                          = true
        shaderDenormFlushToZeroFloat16                       = false
        shaderDenormFlushToZeroFloat32                       = true
        shaderDenormFlushToZeroFloat64                       = true
        shaderRoundingModeRTEFloat16                         = true
        shaderRoundingModeRTEFloat32                         = true
        shaderRoundingModeRTEFloat64                         = true
        shaderRoundingModeRTZFloat16                         = true
        shaderRoundingModeRTZFloat32                         = true
        shaderRoundingModeRTZFloat64                         = true
        maxUpdateAfterBindDescriptorsInAllPools              = 201326592
        shaderUniformBufferArrayNonUniformIndexingNative     = false
        shaderSampledImageArrayNonUniformIndexingNative      = false
        shaderStorageBufferArrayNonUniformIndexingNative     = true
        shaderStorageImageArrayNonUniformIndexingNative      = false
        shaderInputAttachmentArrayNonUniformIndexingNative   = false
        robustBufferAccessUpdateAfterBind                    = true
        quadDivergentImplicitLod                             = false
        maxPerStageDescriptorUpdateAfterBindSamplers         = 402653184
        maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 201326592
        maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 201326592
        maxPerStageDescriptorUpdateAfterBindSampledImages    = 201326592
        maxPerStageDescriptorUpdateAfterBindStorageImages    = 201326592
        maxPerStageDescriptorUpdateAfterBindInputAttachments = 64
        maxPerStageUpdateAfterBindResources                  = 201326592
        maxDescriptorSetUpdateAfterBindSamplers              = 402653184
        maxDescriptorSetUpdateAfterBindUniformBuffers        = 201326592
        maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 8
        maxDescriptorSetUpdateAfterBindStorageBuffers        = 201326592
        maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
        maxDescriptorSetUpdateAfterBindSampledImages         = 201326592
        maxDescriptorSetUpdateAfterBindStorageImages         = 201326592
        maxDescriptorSetUpdateAfterBindInputAttachments      = 256
        supportedDepthResolveModes: count = 4
                RESOLVE_MODE_SAMPLE_ZERO_BIT
                RESOLVE_MODE_AVERAGE_BIT
                RESOLVE_MODE_MIN_BIT
                RESOLVE_MODE_MAX_BIT
        supportedStencilResolveModes: count = 3
                RESOLVE_MODE_SAMPLE_ZERO_BIT
                RESOLVE_MODE_MIN_BIT
                RESOLVE_MODE_MAX_BIT
        independentResolveNone                               = true
        independentResolve                                   = true
        filterMinmaxSingleComponentFormats                   = true
        filterMinmaxImageComponentMapping                    = true
        maxTimelineSemaphoreValueDifference                  = 18446744073709551615
        framebufferIntegerColorSampleCounts: count = 5
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_2_BIT
                SAMPLE_COUNT_4_BIT
                SAMPLE_COUNT_8_BIT
                SAMPLE_COUNT_16_BIT

VkPhysicalDeviceVulkan13Properties:
-----------------------------------
        minSubgroupSize                                                               = 8
        maxSubgroupSize                                                               = 32
        maxComputeWorkgroupSubgroups                                                  = 56
        requiredSubgroupSizeStages: count = 3
                SHADER_STAGE_COMPUTE_BIT
                SHADER_STAGE_TASK_BIT_EXT
                SHADER_STAGE_MESH_BIT_EXT
        maxInlineUniformBlockSize                                                     = 4096
        maxPerStageDescriptorInlineUniformBlocks                                      = 32
        maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks                       = 32
        maxDescriptorSetInlineUniformBlocks                                           = 32
        maxDescriptorSetUpdateAfterBindInlineUniformBlocks                            = 32
        maxInlineUniformTotalSize                                                     = 65535
        integerDotProduct8BitUnsignedAccelerated                                      = false
        integerDotProduct8BitSignedAccelerated                                        = false
        integerDotProduct8BitMixedSignednessAccelerated                               = false
        integerDotProduct4x8BitPackedUnsignedAccelerated                              = false
        integerDotProduct4x8BitPackedSignedAccelerated                                = false
        integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = false
        integerDotProduct16BitUnsignedAccelerated                                     = false
        integerDotProduct16BitSignedAccelerated                                       = false
        integerDotProduct16BitMixedSignednessAccelerated                              = false
        integerDotProduct32BitUnsignedAccelerated                                     = false
        integerDotProduct32BitSignedAccelerated                                       = false
        integerDotProduct32BitMixedSignednessAccelerated                              = false
        integerDotProduct64BitUnsignedAccelerated                                     = false
        integerDotProduct64BitSignedAccelerated                                       = false
        integerDotProduct64BitMixedSignednessAccelerated                              = false
        integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = false
        integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = false
        integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = false
        integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = false
        integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = false
        integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = false
        integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
        integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
        integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false
        storageTexelBufferOffsetAlignmentBytes                                        = 0x00000010
        storageTexelBufferOffsetSingleTexelAlignment                                  = true
        uniformTexelBufferOffsetAlignmentBytes                                        = 0x00000001
        uniformTexelBufferOffsetSingleTexelAlignment                                  = true
        maxBufferSize                                                                 = 0x100000000

VkPhysicalDeviceVulkan14Properties:
-----------------------------------
        lineSubPixelPrecisionBits                           = 4
        maxVertexAttribDivisor                              = 268435455
        supportsNonZeroFirstInstance                        = true
        maxPushDescriptors                                  = 32
        dynamicRenderingLocalReadDepthStencilAttachments    = true
        dynamicRenderingLocalReadMultisampledAttachments    = true
        earlyFragmentMultisampleCoverageAfterSampleCounting = false
        earlyFragmentSampleMaskTestBeforeSampleCounting     = false
        depthStencilSwizzleOneSupport                       = true
        polygonModePointSize                                = true
        nonStrictSinglePixelWideLinesUseParallelogram       = false
        nonStrictWideLinesUseParallelogram                  = false
        blockTexelViewCompatibleMultipleLayers              = true
        maxCombinedImageSamplerDescriptorCount              = 3
        fragmentShadingRateClampCombinerInputs              = true
        defaultRobustnessStorageBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED
        defaultRobustnessUniformBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED
        defaultRobustnessVertexInputs                       = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2
        defaultRobustnessImages                             = PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2
        copySrcLayoutCount                                  = 18
        pCopySrcLayouts: count = 18
                IMAGE_LAYOUT_GENERAL
                IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
                IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
                IMAGE_LAYOUT_RENDERING_LOCAL_READ
        copyDstLayoutCount                                  = 18
        pCopyDstLayouts: count = 18
                IMAGE_LAYOUT_GENERAL
                IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
                IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
                IMAGE_LAYOUT_RENDERING_LOCAL_READ
        optimalTilingLayoutUUID                             = 028f3d34-1dde-2955-63d3-4b132799d8e1
        identicalMemoryTypeRequirements                     = false

Device Extensions: count = 172
        VK_AMD_buffer_marker                          : extension revision 1
        VK_EXT_4444_formats                           : extension revision 1
        VK_EXT_attachment_feedback_loop_dynamic_state : extension revision 1
        VK_EXT_attachment_feedback_loop_layout        : extension revision 2
        VK_EXT_border_color_swizzle                   : extension revision 1
        VK_EXT_buffer_device_address                  : extension revision 2
        VK_EXT_calibrated_timestamps                  : extension revision 2
        VK_EXT_color_write_enable                     : extension revision 1
        VK_EXT_conditional_rendering                  : extension revision 2
        VK_EXT_conservative_rasterization             : extension revision 1
        VK_EXT_custom_border_color                    : extension revision 12
        VK_EXT_depth_bias_control                     : extension revision 1
        VK_EXT_depth_clamp_control                    : extension revision 1
        VK_EXT_depth_clamp_zero_one                   : extension revision 1
        VK_EXT_depth_clip_control                     : extension revision 1
        VK_EXT_depth_clip_enable                      : extension revision 1
        VK_EXT_descriptor_buffer                      : extension revision 1
        VK_EXT_descriptor_indexing                    : extension revision 2
        VK_EXT_device_memory_report                   : extension revision 2
        VK_EXT_display_control                        : extension revision 1
        VK_EXT_dynamic_rendering_unused_attachments   : extension revision 1
        VK_EXT_extended_dynamic_state                 : extension revision 1
        VK_EXT_extended_dynamic_state2                : extension revision 1
        VK_EXT_extended_dynamic_state3                : extension revision 2
        VK_EXT_external_memory_dma_buf                : extension revision 1
        VK_EXT_external_memory_host                   : extension revision 1
        VK_EXT_fragment_shader_interlock              : extension revision 1
        VK_EXT_global_priority                        : extension revision 2
        VK_EXT_global_priority_query                  : extension revision 1
        VK_EXT_graphics_pipeline_library              : extension revision 1
        VK_EXT_hdr_metadata                           : extension revision 3
        VK_EXT_host_image_copy                        : extension revision 1
        VK_EXT_host_query_reset                       : extension revision 1
        VK_EXT_image_2d_view_of_3d                    : extension revision 1
        VK_EXT_image_drm_format_modifier              : extension revision 2
        VK_EXT_image_robustness                       : extension revision 1
        VK_EXT_image_sliced_view_of_3d                : extension revision 1
        VK_EXT_image_view_min_lod                     : extension revision 1
        VK_EXT_index_type_uint8                       : extension revision 1
        VK_EXT_inline_uniform_block                   : extension revision 1
        VK_EXT_legacy_dithering                       : extension revision 2
        VK_EXT_legacy_vertex_attributes               : extension revision 1
        VK_EXT_line_rasterization                     : extension revision 1
        VK_EXT_load_store_op_none                     : extension revision 1
        VK_EXT_map_memory_placed                      : extension revision 1
        VK_EXT_memory_budget                          : extension revision 1
        VK_EXT_multi_draw                             : extension revision 1
        VK_EXT_mutable_descriptor_type                : extension revision 1
        VK_EXT_nested_command_buffer                  : extension revision 1
        VK_EXT_non_seamless_cube_map                  : extension revision 1
        VK_EXT_pci_bus_info                           : extension revision 2
        VK_EXT_physical_device_drm                    : extension revision 1
        VK_EXT_pipeline_creation_cache_control        : extension revision 3
        VK_EXT_pipeline_creation_feedback             : extension revision 1
        VK_EXT_pipeline_robustness                    : extension revision 1
        VK_EXT_post_depth_coverage                    : extension revision 1
        VK_EXT_primitive_topology_list_restart        : extension revision 1
        VK_EXT_primitives_generated_query             : extension revision 1
        VK_EXT_private_data                           : extension revision 1
        VK_EXT_provoking_vertex                       : extension revision 1
        VK_EXT_queue_family_foreign                   : extension revision 1
        VK_EXT_robustness2                            : extension revision 1
        VK_EXT_sample_locations                       : extension revision 1
        VK_EXT_sampler_filter_minmax                  : extension revision 2
        VK_EXT_scalar_block_layout                    : extension revision 1
        VK_EXT_separate_stencil_usage                 : extension revision 1
        VK_EXT_shader_atomic_float                    : extension revision 1
        VK_EXT_shader_atomic_float2                   : extension revision 1
        VK_EXT_shader_demote_to_helper_invocation     : extension revision 1
        VK_EXT_shader_image_atomic_int64              : extension revision 1
        VK_EXT_shader_module_identifier               : extension revision 1
        VK_EXT_shader_replicated_composites           : extension revision 1
        VK_EXT_shader_stencil_export                  : extension revision 1
        VK_EXT_shader_subgroup_ballot                 : extension revision 1
        VK_EXT_shader_subgroup_vote                   : extension revision 1
        VK_EXT_shader_viewport_index_layer            : extension revision 1
        VK_EXT_subgroup_size_control                  : extension revision 2
        VK_EXT_swapchain_maintenance1                 : extension revision 1
        VK_EXT_texel_buffer_alignment                 : extension revision 1
        VK_EXT_tooling_info                           : extension revision 1
        VK_EXT_transform_feedback                     : extension revision 1
        VK_EXT_vertex_attribute_divisor               : extension revision 3
        VK_EXT_vertex_input_dynamic_state             : extension revision 2
        VK_EXT_ycbcr_2plane_444_formats               : extension revision 1
        VK_EXT_ycbcr_image_arrays                     : extension revision 1
        VK_GOOGLE_decorate_string                     : extension revision 1
        VK_GOOGLE_hlsl_functionality1                 : extension revision 1
        VK_GOOGLE_user_type                           : extension revision 1
        VK_INTEL_shader_integer_functions2            : extension revision 1
        VK_KHR_16bit_storage                          : extension revision 1
        VK_KHR_8bit_storage                           : extension revision 1
        VK_KHR_bind_memory2                           : extension revision 1
        VK_KHR_buffer_device_address                  : extension revision 1
        VK_KHR_calibrated_timestamps                  : extension revision 1
        VK_KHR_compute_shader_derivatives             : extension revision 1
        VK_KHR_cooperative_matrix                     : extension revision 2
        VK_KHR_copy_commands2                         : extension revision 1
        VK_KHR_create_renderpass2                     : extension revision 1
        VK_KHR_dedicated_allocation                   : extension revision 3
        VK_KHR_deferred_host_operations               : extension revision 4
        VK_KHR_depth_stencil_resolve                  : extension revision 1
        VK_KHR_descriptor_update_template             : extension revision 1
        VK_KHR_device_group                           : extension revision 4
        VK_KHR_draw_indirect_count                    : extension revision 1
        VK_KHR_driver_properties                      : extension revision 1
        VK_KHR_dynamic_rendering                      : extension revision 1
        VK_KHR_dynamic_rendering_local_read           : extension revision 1
        VK_KHR_external_fence                         : extension revision 1
        VK_KHR_external_fence_fd                      : extension revision 1
        VK_KHR_external_memory                        : extension revision 1
        VK_KHR_external_memory_fd                     : extension revision 1
        VK_KHR_external_semaphore                     : extension revision 1
        VK_KHR_external_semaphore_fd                  : extension revision 1
        VK_KHR_format_feature_flags2                  : extension revision 2
        VK_KHR_get_memory_requirements2               : extension revision 1
        VK_KHR_global_priority                        : extension revision 1
        VK_KHR_image_format_list                      : extension revision 1
        VK_KHR_imageless_framebuffer                  : extension revision 1
        VK_KHR_incremental_present                    : extension revision 2
        VK_KHR_index_type_uint8                       : extension revision 1
        VK_KHR_line_rasterization                     : extension revision 1
        VK_KHR_load_store_op_none                     : extension revision 1
        VK_KHR_maintenance1                           : extension revision 2
        VK_KHR_maintenance2                           : extension revision 1
        VK_KHR_maintenance3                           : extension revision 1
        VK_KHR_maintenance4                           : extension revision 2
        VK_KHR_maintenance5                           : extension revision 1
        VK_KHR_maintenance6                           : extension revision 1
        VK_KHR_maintenance7                           : extension revision 1
        VK_KHR_maintenance8                           : extension revision 1
        VK_KHR_map_memory2                            : extension revision 1
        VK_KHR_multiview                              : extension revision 1
        VK_KHR_pipeline_executable_properties         : extension revision 1
        VK_KHR_pipeline_library                       : extension revision 1
        VK_KHR_present_id                             : extension revision 1
        VK_KHR_present_wait                           : extension revision 1
        VK_KHR_push_descriptor                        : extension revision 2
        VK_KHR_relaxed_block_layout                   : extension revision 1
        VK_KHR_sampler_mirror_clamp_to_edge           : extension revision 3
        VK_KHR_sampler_ycbcr_conversion               : extension revision 14
        VK_KHR_separate_depth_stencil_layouts         : extension revision 1
        VK_KHR_shader_atomic_int64                    : extension revision 1
        VK_KHR_shader_clock                           : extension revision 1
        VK_KHR_shader_draw_parameters                 : extension revision 1
        VK_KHR_shader_expect_assume                   : extension revision 1
        VK_KHR_shader_float16_int8                    : extension revision 1
        VK_KHR_shader_float_controls                  : extension revision 4
        VK_KHR_shader_float_controls2                 : extension revision 1
        VK_KHR_shader_integer_dot_product             : extension revision 1
        VK_KHR_shader_maximal_reconvergence           : extension revision 1
        VK_KHR_shader_non_semantic_info               : extension revision 1
        VK_KHR_shader_quad_control                    : extension revision 1
        VK_KHR_shader_relaxed_extended_instruction    : extension revision 1
        VK_KHR_shader_subgroup_extended_types         : extension revision 1
        VK_KHR_shader_subgroup_rotate                 : extension revision 2
        VK_KHR_shader_subgroup_uniform_control_flow   : extension revision 1
        VK_KHR_shader_terminate_invocation            : extension revision 1
        VK_KHR_spirv_1_4                              : extension revision 1
        VK_KHR_storage_buffer_storage_class           : extension revision 1
        VK_KHR_swapchain                              : extension revision 70
        VK_KHR_swapchain_mutable_format               : extension revision 1
        VK_KHR_synchronization2                       : extension revision 1
        VK_KHR_timeline_semaphore                     : extension revision 2
        VK_KHR_uniform_buffer_standard_layout         : extension revision 1
        VK_KHR_variable_pointers                      : extension revision 1
        VK_KHR_vertex_attribute_divisor               : extension revision 1
        VK_KHR_vulkan_memory_model                    : extension revision 3
        VK_KHR_workgroup_memory_explicit_layout       : extension revision 1
        VK_KHR_zero_initialize_workgroup_memory       : extension revision 1
        VK_MESA_image_alignment_control               : extension revision 1
        VK_NV_compute_shader_derivatives              : extension revision 1
        VK_VALVE_mutable_descriptor_type              : extension revision 1

VkQueueFamilyProperties:
========================
        queueProperties[0]:
        -------------------
                minImageTransferGranularity = (1,1,1)
                queueCount                  = 1
                queueFlags                  = QUEUE_GRAPHICS_BIT | QUEUE_COMPUTE_BIT | QUEUE_TRANSFER_BIT
                timestampValidBits          = 36
                present support             = true

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 1
        memoryHeaps[0]:
                size   = 6158426112 (0x16f122000) (5.74 GiB)
                budget = 3850371072 (0xe5800000) (3.59 GiB)
                usage  = 0 (0x00000000) (0.00 B)
                flags: count = 1
                        MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 6
        memoryTypes[0]:
                heapIndex     = 0
                propertyFlags = 0x0001: count = 1
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                color images
                                FORMAT_D16_UNORM
                                FORMAT_X8_D24_UNORM_PACK32
                                FORMAT_D32_SFLOAT
                                FORMAT_S8_UINT
                                FORMAT_D24_UNORM_S8_UINT
                                FORMAT_D32_SFLOAT_S8_UINT
                                (non-sparse)
                        IMAGE_TILING_LINEAR:
                                color images
                                (non-sparse)
        memoryTypes[1]:
                heapIndex     = 0
                propertyFlags = 0x0007: count = 3
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                        MEMORY_PROPERTY_HOST_VISIBLE_BIT
                        MEMORY_PROPERTY_HOST_COHERENT_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                color images
                                FORMAT_D16_UNORM
                                FORMAT_X8_D24_UNORM_PACK32
                                FORMAT_D32_SFLOAT
                                FORMAT_S8_UINT
                                FORMAT_D24_UNORM_S8_UINT
                                FORMAT_D32_SFLOAT_S8_UINT
                                (non-sparse)
                        IMAGE_TILING_LINEAR:
                                color images
                                (non-sparse)
        memoryTypes[2]:
                heapIndex     = 0
                propertyFlags = 0x000f: count = 4
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                        MEMORY_PROPERTY_HOST_VISIBLE_BIT
                        MEMORY_PROPERTY_HOST_COHERENT_BIT
                        MEMORY_PROPERTY_HOST_CACHED_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                color images
                                FORMAT_D16_UNORM
                                FORMAT_X8_D24_UNORM_PACK32
                                FORMAT_D32_SFLOAT
                                FORMAT_S8_UINT
                                FORMAT_D24_UNORM_S8_UINT
                                FORMAT_D32_SFLOAT_S8_UINT
                                (non-sparse)
                        IMAGE_TILING_LINEAR:
                                color images
                                (non-sparse)
        memoryTypes[3]:
                heapIndex     = 0
                propertyFlags = 0x0001: count = 1
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                None
                        IMAGE_TILING_LINEAR:
                                None
        memoryTypes[4]:
                heapIndex     = 0
                propertyFlags = 0x0007: count = 3
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                        MEMORY_PROPERTY_HOST_VISIBLE_BIT
                        MEMORY_PROPERTY_HOST_COHERENT_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                None
                        IMAGE_TILING_LINEAR:
                                None
        memoryTypes[5]:
                heapIndex     = 0
                propertyFlags = 0x000f: count = 4
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                        MEMORY_PROPERTY_HOST_VISIBLE_BIT
                        MEMORY_PROPERTY_HOST_COHERENT_BIT
                        MEMORY_PROPERTY_HOST_CACHED_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                None
                        IMAGE_TILING_LINEAR:
                                None

VkPhysicalDeviceFeatures:
=========================
        robustBufferAccess                      = true
        fullDrawIndexUint32                     = true
        imageCubeArray                          = true
        independentBlend                        = true
        geometryShader                          = true
        tessellationShader                      = true
        sampleRateShading                       = true
        dualSrcBlend                            = true
        logicOp                                 = true
        multiDrawIndirect                       = true
        drawIndirectFirstInstance               = true
        depthClamp                              = true
        depthBiasClamp                          = true
        fillModeNonSolid                        = true
        depthBounds                             = false
        wideLines                               = true
        largePoints                             = true
        alphaToOne                              = true
        multiViewport                           = true
        samplerAnisotropy                       = true
        textureCompressionETC2                  = true
        textureCompressionASTC_LDR              = true
        textureCompressionBC                    = true
        occlusionQueryPrecise                   = true
        pipelineStatisticsQuery                 = true
        vertexPipelineStoresAndAtomics          = true
        fragmentStoresAndAtomics                = true
        shaderTessellationAndGeometryPointSize  = true
        shaderImageGatherExtended               = true
        shaderStorageImageExtendedFormats       = true
        shaderStorageImageMultisample           = false
        shaderStorageImageReadWithoutFormat     = false
        shaderStorageImageWriteWithoutFormat    = true
        shaderUniformBufferArrayDynamicIndexing = true
        shaderSampledImageArrayDynamicIndexing  = true
        shaderStorageBufferArrayDynamicIndexing = true
        shaderStorageImageArrayDynamicIndexing  = true
        shaderClipDistance                      = true
        shaderCullDistance                      = true
        shaderFloat64                           = true
        shaderInt64                             = true
        shaderInt16                             = true
        shaderResourceResidency                 = false
        shaderResourceMinLod                    = true
        sparseBinding                           = false
        sparseResidencyBuffer                   = false
        sparseResidencyImage2D                  = false
        sparseResidencyImage3D                  = false
        sparseResidency2Samples                 = false
        sparseResidency4Samples                 = false
        sparseResidency8Samples                 = false
        sparseResidency16Samples                = false
        sparseResidencyAliased                  = false
        variableMultisampleRate                 = true
        inheritedQueries                        = true

VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
        formatA4R4G4B4 = true
        formatA4B4G4R4 = false

VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT:
--------------------------------------------------------------
        attachmentFeedbackLoopDynamicState = true

VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT:
--------------------------------------------------------
        attachmentFeedbackLoopLayout = true

VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
        borderColorSwizzle          = true
        borderColorSwizzleFromImage = true

VkPhysicalDeviceBufferDeviceAddressFeaturesEXT:
-----------------------------------------------
        bufferDeviceAddress              = true
        bufferDeviceAddressCaptureReplay = false
        bufferDeviceAddressMultiDevice   = false

VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
        colorWriteEnable = true

VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR:
----------------------------------------------------
        computeDerivativeGroupQuads  = true
        computeDerivativeGroupLinear = true

VkPhysicalDeviceConditionalRenderingFeaturesEXT:
------------------------------------------------
        conditionalRendering          = true
        inheritedConditionalRendering = true

VkPhysicalDeviceCooperativeMatrixFeaturesKHR:
---------------------------------------------
        cooperativeMatrix                   = true
        cooperativeMatrixRobustBufferAccess = false

VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
        customBorderColors             = true
        customBorderColorWithoutFormat = true

VkPhysicalDeviceDepthBiasControlFeaturesEXT:
--------------------------------------------
        depthBiasControl                                = true
        leastRepresentableValueForceUnormRepresentation = false
        floatRepresentation                             = true
        depthBiasExact                                  = true

VkPhysicalDeviceDepthClampControlFeaturesEXT:
---------------------------------------------
        depthClampControl = true

VkPhysicalDeviceDepthClampZeroOneFeaturesKHR:
---------------------------------------------
        depthClampZeroOne = true

VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
        depthClipControl = true

VkPhysicalDeviceDepthClipEnableFeaturesEXT:
-------------------------------------------
        depthClipEnable = true

VkPhysicalDeviceDescriptorBufferFeaturesEXT:
--------------------------------------------
        descriptorBuffer                   = true
        descriptorBufferCaptureReplay      = true
        descriptorBufferImageLayoutIgnored = false
        descriptorBufferPushDescriptors    = true

VkPhysicalDeviceDeviceMemoryReportFeaturesEXT:
----------------------------------------------
        deviceMemoryReport = true

VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT:
-------------------------------------------------------------
        dynamicRenderingUnusedAttachments = true

VkPhysicalDeviceExtendedDynamicState2FeaturesEXT:
-------------------------------------------------
        extendedDynamicState2                   = true
        extendedDynamicState2LogicOp            = true
        extendedDynamicState2PatchControlPoints = true

VkPhysicalDeviceExtendedDynamicState3FeaturesEXT:
-------------------------------------------------
        extendedDynamicState3TessellationDomainOrigin         = true
        extendedDynamicState3DepthClampEnable                 = true
        extendedDynamicState3PolygonMode                      = true
        extendedDynamicState3RasterizationSamples             = true
        extendedDynamicState3SampleMask                       = true
        extendedDynamicState3AlphaToCoverageEnable            = true
        extendedDynamicState3AlphaToOneEnable                 = true
        extendedDynamicState3LogicOpEnable                    = true
        extendedDynamicState3ColorBlendEnable                 = true
        extendedDynamicState3ColorBlendEquation               = true
        extendedDynamicState3ColorWriteMask                   = true
        extendedDynamicState3RasterizationStream              = true
        extendedDynamicState3ConservativeRasterizationMode    = true
        extendedDynamicState3ExtraPrimitiveOverestimationSize = false
        extendedDynamicState3DepthClipEnable                  = true
        extendedDynamicState3SampleLocationsEnable            = true
        extendedDynamicState3ColorBlendAdvanced               = false
        extendedDynamicState3ProvokingVertexMode              = true
        extendedDynamicState3LineRasterizationMode            = true
        extendedDynamicState3LineStippleEnable                = true
        extendedDynamicState3DepthClipNegativeOneToOne        = true
        extendedDynamicState3ViewportWScalingEnable           = false
        extendedDynamicState3ViewportSwizzle                  = false
        extendedDynamicState3CoverageToColorEnable            = false
        extendedDynamicState3CoverageToColorLocation          = false
        extendedDynamicState3CoverageModulationMode           = false
        extendedDynamicState3CoverageModulationTableEnable    = false
        extendedDynamicState3CoverageModulationTable          = false
        extendedDynamicState3CoverageReductionMode            = false
        extendedDynamicState3RepresentativeFragmentTestEnable = false
        extendedDynamicState3ShadingRateImageEnable           = false

VkPhysicalDeviceExtendedDynamicStateFeaturesEXT:
------------------------------------------------
        extendedDynamicState = true

VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT:
---------------------------------------------------
        fragmentShaderSampleInterlock      = true
        fragmentShaderPixelInterlock       = true
        fragmentShaderShadingRateInterlock = false

VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT:
---------------------------------------------------
        graphicsPipelineLibrary = true

VkPhysicalDeviceImage2DViewOf3DFeaturesEXT:
-------------------------------------------
        image2DViewOf3D   = true
        sampler2DViewOf3D = true

VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT:
-----------------------------------------------
        imageSlicedViewOf3D = true

VkPhysicalDeviceImageViewMinLodFeaturesEXT:
-------------------------------------------
        minLod = true

VkPhysicalDeviceLegacyDitheringFeaturesEXT:
-------------------------------------------
        legacyDithering = true

VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT:
--------------------------------------------------
        legacyVertexAttributes = true

VkPhysicalDeviceMaintenance7FeaturesKHR:
----------------------------------------
        maintenance7 = true

VkPhysicalDeviceMaintenance8FeaturesKHR:
----------------------------------------
        maintenance8 = true

VkPhysicalDeviceMapMemoryPlacedFeaturesEXT:
-------------------------------------------
        memoryMapPlaced      = true
        memoryMapRangePlaced = false
        memoryUnmapReserve   = true

VkPhysicalDeviceMultiDrawFeaturesEXT:
-------------------------------------
        multiDraw = true

VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT:
-------------------------------------------------
        mutableDescriptorType = true

VkPhysicalDeviceNestedCommandBufferFeaturesEXT:
-----------------------------------------------
        nestedCommandBuffer                = true
        nestedCommandBufferRendering       = true
        nestedCommandBufferSimultaneousUse = false

VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT:
----------------------------------------------
        nonSeamlessCubeMap = true

VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
--------------------------------------------------------
        pipelineExecutableInfo = true

VkPhysicalDevicePresentIdFeaturesKHR:
-------------------------------------
        presentId = true

VkPhysicalDevicePresentWaitFeaturesKHR:
---------------------------------------
        presentWait = true

VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
        primitiveTopologyListRestart      = true
        primitiveTopologyPatchListRestart = true

VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT:
----------------------------------------------------
        primitivesGeneratedQuery                      = true
        primitivesGeneratedQueryWithRasterizerDiscard = false
        primitivesGeneratedQueryWithNonZeroStreams    = false

VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
        provokingVertexLast                       = true
        transformFeedbackPreservesProvokingVertex = true

VkPhysicalDeviceRobustness2FeaturesEXT:
---------------------------------------
        robustBufferAccess2 = true
        robustImageAccess2  = true
        nullDescriptor      = true

VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT:
----------------------------------------------
        shaderBufferFloat16Atomics      = false
        shaderBufferFloat16AtomicAdd    = false
        shaderBufferFloat16AtomicMinMax = false
        shaderBufferFloat32AtomicMinMax = true
        shaderBufferFloat64AtomicMinMax = false
        shaderSharedFloat16Atomics      = false
        shaderSharedFloat16AtomicAdd    = false
        shaderSharedFloat16AtomicMinMax = false
        shaderSharedFloat32AtomicMinMax = true
        shaderSharedFloat64AtomicMinMax = false
        shaderImageFloat32AtomicMinMax  = false
        sparseImageFloat32AtomicMinMax  = false

VkPhysicalDeviceShaderAtomicFloatFeaturesEXT:
---------------------------------------------
        shaderBufferFloat32Atomics   = true
        shaderBufferFloat32AtomicAdd = false
        shaderBufferFloat64Atomics   = false
        shaderBufferFloat64AtomicAdd = false
        shaderSharedFloat32Atomics   = true
        shaderSharedFloat32AtomicAdd = false
        shaderSharedFloat64Atomics   = false
        shaderSharedFloat64AtomicAdd = false
        shaderImageFloat32Atomics    = true
        shaderImageFloat32AtomicAdd  = false
        sparseImageFloat32Atomics    = false
        sparseImageFloat32AtomicAdd  = false

VkPhysicalDeviceShaderClockFeaturesKHR:
---------------------------------------
        shaderSubgroupClock = true
        shaderDeviceClock   = false

VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT:
--------------------------------------------------
        shaderImageInt64Atomics = true
        sparseImageInt64Atomics = false

VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR:
------------------------------------------------------
        shaderMaximalReconvergence = true

VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT:
--------------------------------------------------
        shaderModuleIdentifier = true

VkPhysicalDeviceShaderQuadControlFeaturesKHR:
---------------------------------------------
        shaderQuadControl = true

VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR:
------------------------------------------------------------
        shaderRelaxedExtendedInstruction = true

VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT:
------------------------------------------------------
        shaderReplicatedComposites = true

VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR:
------------------------------------------------------------
        shaderSubgroupUniformControlFlow = true

VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT:
-------------------------------------------------
        swapchainMaintenance1 = true

VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
        texelBufferAlignment = true

VkPhysicalDeviceTransformFeedbackFeaturesEXT:
---------------------------------------------
        transformFeedback = true
        geometryStreams   = true

VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT:
---------------------------------------------------
        vertexInputDynamicState = true

VkPhysicalDeviceVulkan11Features:
---------------------------------
        storageBuffer16BitAccess           = true
        uniformAndStorageBuffer16BitAccess = true
        storagePushConstant16              = true
        storageInputOutput16               = false
        multiview                          = true
        multiviewGeometryShader            = true
        multiviewTessellationShader        = true
        variablePointersStorageBuffer      = true
        variablePointers                   = true
        protectedMemory                    = false
        samplerYcbcrConversion             = true
        shaderDrawParameters               = true

VkPhysicalDeviceVulkan12Features:
---------------------------------
        samplerMirrorClampToEdge                           = true
        drawIndirectCount                                  = true
        storageBuffer8BitAccess                            = true
        uniformAndStorageBuffer8BitAccess                  = true
        storagePushConstant8                               = true
        shaderBufferInt64Atomics                           = true
        shaderSharedInt64Atomics                           = false
        shaderFloat16                                      = true
        shaderInt8                                         = true
        descriptorIndexing                                 = true
        shaderInputAttachmentArrayDynamicIndexing          = false
        shaderUniformTexelBufferArrayDynamicIndexing       = true
        shaderStorageTexelBufferArrayDynamicIndexing       = true
        shaderUniformBufferArrayNonUniformIndexing         = true
        shaderSampledImageArrayNonUniformIndexing          = true
        shaderStorageBufferArrayNonUniformIndexing         = true
        shaderStorageImageArrayNonUniformIndexing          = true
        shaderInputAttachmentArrayNonUniformIndexing       = false
        shaderUniformTexelBufferArrayNonUniformIndexing    = true
        shaderStorageTexelBufferArrayNonUniformIndexing    = true
        descriptorBindingUniformBufferUpdateAfterBind      = true
        descriptorBindingSampledImageUpdateAfterBind       = true
        descriptorBindingStorageImageUpdateAfterBind       = true
        descriptorBindingStorageBufferUpdateAfterBind      = true
        descriptorBindingUniformTexelBufferUpdateAfterBind = true
        descriptorBindingStorageTexelBufferUpdateAfterBind = true
        descriptorBindingUpdateUnusedWhilePending          = true
        descriptorBindingPartiallyBound                    = true
        descriptorBindingVariableDescriptorCount           = true
        runtimeDescriptorArray                             = true
        samplerFilterMinmax                                = true
        scalarBlockLayout                                  = true
        imagelessFramebuffer                               = true
        uniformBufferStandardLayout                        = true
        shaderSubgroupExtendedTypes                        = true
        separateDepthStencilLayouts                        = true
        hostQueryReset                                     = true
        timelineSemaphore                                  = true
        bufferDeviceAddress                                = true
        bufferDeviceAddressCaptureReplay                   = true
        bufferDeviceAddressMultiDevice                     = false
        vulkanMemoryModel                                  = true
        vulkanMemoryModelDeviceScope                       = true
        vulkanMemoryModelAvailabilityVisibilityChains      = true
        shaderOutputViewportIndex                          = true
        shaderOutputLayer                                  = true
        subgroupBroadcastDynamicId                         = true

VkPhysicalDeviceVulkan13Features:
---------------------------------
        robustImageAccess                                  = true
        inlineUniformBlock                                 = true
        descriptorBindingInlineUniformBlockUpdateAfterBind = true
        pipelineCreationCacheControl                       = true
        privateData                                        = true
        shaderDemoteToHelperInvocation                     = true
        shaderTerminateInvocation                          = true
        subgroupSizeControl                                = true
        computeFullSubgroups                               = true
        synchronization2                                   = true
        textureCompressionASTC_HDR                         = false
        shaderZeroInitializeWorkgroupMemory                = true
        dynamicRendering                                   = true
        shaderIntegerDotProduct                            = true
        maintenance4                                       = true

VkPhysicalDeviceVulkan14Features:
---------------------------------
        globalPriorityQuery                    = true
        shaderSubgroupRotate                   = true
        shaderSubgroupRotateClustered          = true
        shaderFloatControls2                   = true
        shaderExpectAssume                     = true
        rectangularLines                       = false
        bresenhamLines                         = true
        smoothLines                            = true
        stippledRectangularLines               = false
        stippledBresenhamLines                 = true
        stippledSmoothLines                    = false
        vertexAttributeInstanceRateDivisor     = true
        vertexAttributeInstanceRateZeroDivisor = true
        indexTypeUint8                         = true
        dynamicRenderingLocalRead              = true
        maintenance5                           = true
        maintenance6                           = true
        pipelineProtectedAccess                = false
        pipelineRobustness                     = true
        hostImageCopy                          = true
        pushDescriptor                         = true

VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR:
---------------------------------------------------------
        workgroupMemoryExplicitLayout                  = true
        workgroupMemoryExplicitLayoutScalarBlockLayout = true
        workgroupMemoryExplicitLayout8BitAccess        = true
        workgroupMemoryExplicitLayout16BitAccess       = true

VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT:
-------------------------------------------------
        ycbcr2plane444Formats = true

VkPhysicalDeviceYcbcrImageArraysFeaturesEXT:
--------------------------------------------
        ycbcrImageArrays = true


GPU1:
VkPhysicalDeviceProperties:
---------------------------
        apiVersion        = 1.4.311 (4210999)
        driverVersion     = 25.1.0 (104861696)
        vendorID          = 0x10005
        deviceID          = 0x0000
        deviceType        = PHYSICAL_DEVICE_TYPE_CPU
        deviceName        = llvmpipe (LLVM 20.1.4, 256 bits)
        pipelineCacheUUID = 32352e31-2e30-6161-6161-616161616161

VkPhysicalDeviceLimits:
-----------------------
        maxImageDimension1D                             = 16384
        maxImageDimension2D                             = 16384
        maxImageDimension3D                             = 4096
        maxImageDimensionCube                           = 32768
        maxImageArrayLayers                             = 2048
        maxTexelBufferElements                          = 134217728
        maxUniformBufferRange                           = 65536
        maxStorageBufferRange                           = 134217728
        maxPushConstantsSize                            = 256
        maxMemoryAllocationCount                        = 4294967295
        maxSamplerAllocationCount                       = 32768
        bufferImageGranularity                          = 0x00000040
        sparseAddressSpaceSize                          = 0x80000000
        maxBoundDescriptorSets                          = 8
        maxPerStageDescriptorSamplers                   = 1000000
        maxPerStageDescriptorUniformBuffers             = 1000000
        maxPerStageDescriptorStorageBuffers             = 1000000
        maxPerStageDescriptorSampledImages              = 1000000
        maxPerStageDescriptorStorageImages              = 1000000
        maxPerStageDescriptorInputAttachments           = 1000000
        maxPerStageResources                            = 1000000
        maxDescriptorSetSamplers                        = 1000000
        maxDescriptorSetUniformBuffers                  = 1000000
        maxDescriptorSetUniformBuffersDynamic           = 500000
        maxDescriptorSetStorageBuffers                  = 1000000
        maxDescriptorSetStorageBuffersDynamic           = 500000
        maxDescriptorSetSampledImages                   = 1000000
        maxDescriptorSetStorageImages                   = 1000000
        maxDescriptorSetInputAttachments                = 1000000
        maxVertexInputAttributes                        = 32
        maxVertexInputBindings                          = 32
        maxVertexInputAttributeOffset                   = 2047
        maxVertexInputBindingStride                     = 2048
        maxVertexOutputComponents                       = 128
        maxTessellationGenerationLevel                  = 64
        maxTessellationPatchSize                        = 32
        maxTessellationControlPerVertexInputComponents  = 128
        maxTessellationControlPerVertexOutputComponents = 128
        maxTessellationControlPerPatchOutputComponents  = 128
        maxTessellationControlTotalOutputComponents     = 4096
        maxTessellationEvaluationInputComponents        = 128
        maxTessellationEvaluationOutputComponents       = 128
        maxGeometryShaderInvocations                    = 32
        maxGeometryInputComponents                      = 64
        maxGeometryOutputComponents                     = 128
        maxGeometryOutputVertices                       = 1024
        maxGeometryTotalOutputComponents                = 1024
        maxFragmentInputComponents                      = 128
        maxFragmentOutputAttachments                    = 8
        maxFragmentDualSrcAttachments                   = 2
        maxFragmentCombinedOutputResources              = 104
        maxComputeSharedMemorySize                      = 32768
        maxComputeWorkGroupCount: count = 3
                65535
                65535
                65535
        maxComputeWorkGroupInvocations                  = 1024
        maxComputeWorkGroupSize: count = 3
                1024
                1024
                1024
        subPixelPrecisionBits                           = 8
        subTexelPrecisionBits                           = 8
        mipmapPrecisionBits                             = 6
        maxDrawIndexedIndexValue                        = 4294967295
        maxDrawIndirectCount                            = 4294967295
        maxSamplerLodBias                               = 16
        maxSamplerAnisotropy                            = 16
        maxViewports                                    = 16
        maxViewportDimensions: count = 2
                16384
                16384
        viewportBoundsRange: count = 2
                -32768
                32768
        viewportSubPixelBits                            = 0
        minMemoryMapAlignment                           = 64
        minTexelBufferOffsetAlignment                   = 0x00000010
        minUniformBufferOffsetAlignment                 = 0x00000010
        minStorageBufferOffsetAlignment                 = 0x00000010
        minTexelOffset                                  = -32
        maxTexelOffset                                  = 31
        minTexelGatherOffset                            = -32
        maxTexelGatherOffset                            = 31
        minInterpolationOffset                          = -2
        maxInterpolationOffset                          = 2
        subPixelInterpolationOffsetBits                 = 8
        maxFramebufferWidth                             = 16384
        maxFramebufferHeight                            = 16384
        maxFramebufferLayers                            = 2048
        framebufferColorSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        framebufferDepthSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        framebufferStencilSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        framebufferNoAttachmentsSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        maxColorAttachments                             = 8
        sampledImageColorSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        sampledImageIntegerSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        sampledImageDepthSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        sampledImageStencilSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        storageImageSampleCounts: count = 2
                SAMPLE_COUNT_1_BIT
                SAMPLE_COUNT_4_BIT
        maxSampleMaskWords                              = 1
        timestampComputeAndGraphics                     = true
        timestampPeriod                                 = 1
        maxClipDistances                                = 8
        maxCullDistances                                = 8
        maxCombinedClipAndCullDistances                 = 8
        discreteQueuePriorities                         = 2
        pointSizeRange: count = 2
                0
                256
        lineWidthRange: count = 2
                1
                255
        pointSizeGranularity                            = 0.125
        lineWidthGranularity                            = 0.0078125
        strictLines                                     = true
        standardSampleLocations                         = true
        optimalBufferCopyOffsetAlignment                = 0x00000080
        optimalBufferCopyRowPitchAlignment              = 0x00000080
        nonCoherentAtomSize                             = 0x00000040

VkPhysicalDeviceSparseProperties:
---------------------------------
        residencyStandard2DBlockShape            = true
        residencyStandard2DMultisampleBlockShape = true
        residencyStandard3DBlockShape            = true
        residencyAlignedMipSize                  = false
        residencyNonResidentStrict               = false

VkPhysicalDeviceAccelerationStructurePropertiesKHR:
---------------------------------------------------
        maxGeometryCount                                           = 16777215
        maxInstanceCount                                           = 16777215
        maxPrimitiveCount                                          = 16777215
        maxPerStageDescriptorAccelerationStructures                = 1000000
        maxPerStageDescriptorUpdateAfterBindAccelerationStructures = 1000000
        maxDescriptorSetAccelerationStructures                     = 1000000
        maxDescriptorSetUpdateAfterBindAccelerationStructures      = 1000000
        minAccelerationStructureScratchOffsetAlignment             = 8

VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR:
------------------------------------------------------
        meshAndTaskShaderDerivatives = true

VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
        maxCustomBorderColorSamplers = 32768

VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT:
--------------------------------------------------------
        combinedImageSamplerDensityMapDescriptorSize = 0

VkPhysicalDeviceDescriptorBufferPropertiesEXT:
----------------------------------------------
        combinedImageSamplerDescriptorSingleArray            = true
        bufferlessPushDescriptors                            = true
        allowSamplerImageViewPostSubmitCreation              = false
        descriptorBufferOffsetAlignment                      = 0x00000004
        maxDescriptorBufferBindings                          = 8
        maxResourceDescriptorBufferBindings                  = 8
        maxSamplerDescriptorBufferBindings                   = 8
        maxEmbeddedImmutableSamplerBindings                  = 8
        maxEmbeddedImmutableSamplers                         = 2032
        bufferCaptureReplayDescriptorDataSize                = 0
        imageCaptureReplayDescriptorDataSize                 = 0
        imageViewCaptureReplayDescriptorDataSize             = 0
        samplerCaptureReplayDescriptorDataSize               = 0
        accelerationStructureCaptureReplayDescriptorDataSize = 0
        samplerDescriptorSize                                = 256
        combinedImageSamplerDescriptorSize                   = 256
        sampledImageDescriptorSize                           = 256
        storageImageDescriptorSize                           = 256
        uniformTexelBufferDescriptorSize                     = 256
        robustUniformTexelBufferDescriptorSize               = 256
        storageTexelBufferDescriptorSize                     = 256
        robustStorageTexelBufferDescriptorSize               = 256
        uniformBufferDescriptorSize                          = 256
        robustUniformBufferDescriptorSize                    = 256
        storageBufferDescriptorSize                          = 256
        robustStorageBufferDescriptorSize                    = 256
        inputAttachmentDescriptorSize                        = 256
        accelerationStructureDescriptorSize                  = 256
        maxSamplerDescriptorBufferRange                      = 0xffffffff
        maxResourceDescriptorBufferRange                     = 0xffffffff
        samplerDescriptorBufferAddressSpaceSize              = 0xffffffff
        resourceDescriptorBufferAddressSpaceSize             = 0xffffffff
        descriptorBufferAddressSpaceSize                     = 0xffffffff

VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT:
-----------------------------------------------------
        maxIndirectPipelineCount                      = 4096
        maxIndirectShaderObjectCount                  = 4096
        maxIndirectSequenceCount                      = 1048576
        maxIndirectCommandsTokenCount                 = 16
        maxIndirectCommandsTokenOffset                = 2047
        maxIndirectCommandsIndirectStride             = 2048
        supportedIndirectCommandsInputModes: count = 2
                INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT
                INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT
        supportedIndirectCommandsShaderStages: count = 16
                SHADER_STAGE_VERTEX_BIT
                SHADER_STAGE_TESSELLATION_CONTROL_BIT
                SHADER_STAGE_TESSELLATION_EVALUATION_BIT
                SHADER_STAGE_GEOMETRY_BIT
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
                SHADER_STAGE_RAYGEN_BIT_KHR
                SHADER_STAGE_ANY_HIT_BIT_KHR
                SHADER_STAGE_CLOSEST_HIT_BIT_KHR
                SHADER_STAGE_MISS_BIT_KHR
                SHADER_STAGE_INTERSECTION_BIT_KHR
                SHADER_STAGE_CALLABLE_BIT_KHR
                SHADER_STAGE_TASK_BIT_EXT
                SHADER_STAGE_MESH_BIT_EXT
                SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI
                SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI
        supportedIndirectCommandsShaderStagesPipelineBinding: count = 16
                SHADER_STAGE_VERTEX_BIT
                SHADER_STAGE_TESSELLATION_CONTROL_BIT
                SHADER_STAGE_TESSELLATION_EVALUATION_BIT
                SHADER_STAGE_GEOMETRY_BIT
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
                SHADER_STAGE_RAYGEN_BIT_KHR
                SHADER_STAGE_ANY_HIT_BIT_KHR
                SHADER_STAGE_CLOSEST_HIT_BIT_KHR
                SHADER_STAGE_MISS_BIT_KHR
                SHADER_STAGE_INTERSECTION_BIT_KHR
                SHADER_STAGE_CALLABLE_BIT_KHR
                SHADER_STAGE_TASK_BIT_EXT
                SHADER_STAGE_MESH_BIT_EXT
                SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI
                SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI
        supportedIndirectCommandsShaderStagesShaderBinding: count = 16
                SHADER_STAGE_VERTEX_BIT
                SHADER_STAGE_TESSELLATION_CONTROL_BIT
                SHADER_STAGE_TESSELLATION_EVALUATION_BIT
                SHADER_STAGE_GEOMETRY_BIT
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
                SHADER_STAGE_RAYGEN_BIT_KHR
                SHADER_STAGE_ANY_HIT_BIT_KHR
                SHADER_STAGE_CLOSEST_HIT_BIT_KHR
                SHADER_STAGE_MISS_BIT_KHR
                SHADER_STAGE_INTERSECTION_BIT_KHR
                SHADER_STAGE_CALLABLE_BIT_KHR
                SHADER_STAGE_TASK_BIT_EXT
                SHADER_STAGE_MESH_BIT_EXT
                SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI
                SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI
        deviceGeneratedCommandsTransformFeedback      = true
        deviceGeneratedCommandsMultiDrawIndirectCount = true

VkPhysicalDeviceExtendedDynamicState3PropertiesEXT:
---------------------------------------------------
        dynamicPrimitiveTopologyUnrestricted = true

VkPhysicalDeviceExternalMemoryHostPropertiesEXT:
------------------------------------------------
        minImportedHostPointerAlignment = 0x00001000

VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT:
-----------------------------------------------------
        graphicsPipelineLibraryFastLinking                        = true
        graphicsPipelineLibraryIndependentInterpolationDecoration = true

VkPhysicalDeviceLayeredApiPropertiesListKHR:
--------------------------------------------
        layeredApiCount               = 0
        pLayeredApis                  = NULL

VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT:
----------------------------------------------------
        nativeUnalignedPerformance = true

VkPhysicalDeviceMaintenance7PropertiesKHR:
------------------------------------------
        robustFragmentShadingRateAttachmentAccess                 = false
        separateDepthStencilAttachmentAccess                      = true
        maxDescriptorSetTotalUniformBuffersDynamic                = 1000000
        maxDescriptorSetTotalStorageBuffersDynamic                = 1000000
        maxDescriptorSetTotalBuffersDynamic                       = 1000000
        maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic = 500000
        maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic = 500000
        maxDescriptorSetUpdateAfterBindTotalBuffersDynamic        = 1000000

VkPhysicalDeviceMeshShaderPropertiesEXT:
----------------------------------------
        maxTaskWorkGroupTotalCount            = 4194304
        maxTaskWorkGroupCount: count = 3
                65536
                65536
                65536
        maxTaskWorkGroupInvocations           = 1024
        maxTaskWorkGroupSize: count = 3
                1024
                1024
                1024
        maxTaskPayloadSize                    = 16384
        maxTaskSharedMemorySize               = 32768
        maxTaskPayloadAndSharedMemorySize     = 32768
        maxMeshWorkGroupTotalCount            = 4194304
        maxMeshWorkGroupCount: count = 3
                65536
                65536
                65536
        maxMeshWorkGroupInvocations           = 1024
        maxMeshWorkGroupSize: count = 3
                1024
                1024
                1024
        maxMeshSharedMemorySize               = 28672
        maxMeshPayloadAndSharedMemorySize     = 45056
        maxMeshOutputMemorySize               = 32768
        maxMeshPayloadAndOutputMemorySize     = 49152
        maxMeshOutputComponents               = 128
        maxMeshOutputVertices                 = 256
        maxMeshOutputPrimitives               = 256
        maxMeshOutputLayers                   = 8
        maxMeshMultiviewViewCount             = 0
        meshOutputPerVertexGranularity        = 1
        meshOutputPerPrimitiveGranularity     = 1
        maxPreferredTaskWorkGroupInvocations  = 64
        maxPreferredMeshWorkGroupInvocations  = 128
        prefersLocalInvocationVertexOutput    = true
        prefersLocalInvocationPrimitiveOutput = true
        prefersCompactVertexOutput            = true
        prefersCompactPrimitiveOutput         = false

VkPhysicalDeviceMultiDrawPropertiesEXT:
---------------------------------------
        maxMultiDrawCount = 2048

VkPhysicalDeviceNestedCommandBufferPropertiesEXT:
-------------------------------------------------
        maxCommandBufferNestingLevel = 4294967295

VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
        provokingVertexModePerPipeline                       = true
        transformFeedbackPreservesTriangleFanProvokingVertex = true

VkPhysicalDeviceRayTracingPipelinePropertiesKHR:
------------------------------------------------
        shaderGroupHandleSize              = 32
        maxRayRecursionDepth               = 31
        maxShaderGroupStride               = 16384
        shaderGroupBaseAlignment           = 32
        shaderGroupHandleCaptureReplaySize = 0
        maxRayDispatchInvocationCount      = 67108864
        shaderGroupHandleAlignment         = 16
        maxRayHitAttributeSize             = 32

VkPhysicalDeviceRobustness2PropertiesEXT:
-----------------------------------------
        robustStorageBufferAccessSizeAlignment = 0x00000001
        robustUniformBufferAccessSizeAlignment = 0x00000001

VkPhysicalDeviceShaderObjectPropertiesEXT:
------------------------------------------
        shaderBinaryUUID     = 32352e31-2e30-6161-6161-616161616161
        shaderBinaryVersion  = 1

VkPhysicalDeviceTransformFeedbackPropertiesEXT:
-----------------------------------------------
        maxTransformFeedbackStreams                = 4
        maxTransformFeedbackBuffers                = 4
        maxTransformFeedbackBufferSize             = 0xffffffff
        maxTransformFeedbackStreamDataSize         = 512
        maxTransformFeedbackBufferDataSize         = 512
        maxTransformFeedbackBufferDataStride       = 512
        transformFeedbackQueries                   = true
        transformFeedbackStreamsLinesTriangles     = false
        transformFeedbackRasterizationStreamSelect = false
        transformFeedbackDraw                      = true

VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
        maxVertexAttribDivisor = 4294967295

VkPhysicalDeviceVulkan11Properties:
-----------------------------------
        deviceUUID                        = 6d657361-3235-2e31-2e30-000000000000
        driverUUID                        = 6c6c766d-7069-7065-5555-494400000000
        deviceNodeMask                    = 0
        deviceLUIDValid                   = false
        subgroupSize                      = 8
        subgroupSupportedStages: count = 4
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
                SHADER_STAGE_TASK_BIT_EXT
                SHADER_STAGE_MESH_BIT_EXT
        subgroupSupportedOperations: count = 10
                SUBGROUP_FEATURE_BASIC_BIT
                SUBGROUP_FEATURE_VOTE_BIT
                SUBGROUP_FEATURE_ARITHMETIC_BIT
                SUBGROUP_FEATURE_BALLOT_BIT
                SUBGROUP_FEATURE_SHUFFLE_BIT
                SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
                SUBGROUP_FEATURE_CLUSTERED_BIT
                SUBGROUP_FEATURE_QUAD_BIT
                SUBGROUP_FEATURE_ROTATE_BIT
                SUBGROUP_FEATURE_ROTATE_CLUSTERED_BIT
        subgroupQuadOperationsInAllStages = true
        pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
        maxMultiviewViewCount             = 6
        maxMultiviewInstanceIndex         = 2147483647
        protectedNoFault                  = false
        maxPerSetDescriptors              = 1000000
        maxMemoryAllocationSize           = 0x80000000

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
        driverID                                             = DRIVER_ID_MESA_LLVMPIPE
        driverName                                           = llvmpipe
        driverInfo                                           = Mesa 25.1.0 (LLVM 20.1.4)
        conformanceVersion:
                major    = 1
                minor    = 3
                subminor = 1
                patch    = 1
        denormBehaviorIndependence                           = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
        roundingModeIndependence                             = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
        shaderSignedZeroInfNanPreserveFloat16                = true
        shaderSignedZeroInfNanPreserveFloat32                = true
        shaderSignedZeroInfNanPreserveFloat64                = true
        shaderDenormPreserveFloat16                          = false
        shaderDenormPreserveFloat32                          = false
        shaderDenormPreserveFloat64                          = false
        shaderDenormFlushToZeroFloat16                       = false
        shaderDenormFlushToZeroFloat32                       = false
        shaderDenormFlushToZeroFloat64                       = false
        shaderRoundingModeRTEFloat16                         = true
        shaderRoundingModeRTEFloat32                         = true
        shaderRoundingModeRTEFloat64                         = true
        shaderRoundingModeRTZFloat16                         = false
        shaderRoundingModeRTZFloat32                         = false
        shaderRoundingModeRTZFloat64                         = false
        maxUpdateAfterBindDescriptorsInAllPools              = 4294967295
        shaderUniformBufferArrayNonUniformIndexingNative     = true
        shaderSampledImageArrayNonUniformIndexingNative      = true
        shaderStorageBufferArrayNonUniformIndexingNative     = true
        shaderStorageImageArrayNonUniformIndexingNative      = true
        shaderInputAttachmentArrayNonUniformIndexingNative   = true
        robustBufferAccessUpdateAfterBind                    = true
        quadDivergentImplicitLod                             = true
        maxPerStageDescriptorUpdateAfterBindSamplers         = 1000000
        maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 1000000
        maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 1000000
        maxPerStageDescriptorUpdateAfterBindSampledImages    = 1000000
        maxPerStageDescriptorUpdateAfterBindStorageImages    = 1000000
        maxPerStageDescriptorUpdateAfterBindInputAttachments = 1000000
        maxPerStageUpdateAfterBindResources                  = 1000000
        maxDescriptorSetUpdateAfterBindSamplers              = 1000000
        maxDescriptorSetUpdateAfterBindUniformBuffers        = 1000000
        maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 500000
        maxDescriptorSetUpdateAfterBindStorageBuffers        = 1000000
        maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 500000
        maxDescriptorSetUpdateAfterBindSampledImages         = 1000000
        maxDescriptorSetUpdateAfterBindStorageImages         = 1000000
        maxDescriptorSetUpdateAfterBindInputAttachments      = 1000000
        supportedDepthResolveModes: count = 2
                RESOLVE_MODE_SAMPLE_ZERO_BIT
                RESOLVE_MODE_AVERAGE_BIT
        supportedStencilResolveModes: count = 1
                RESOLVE_MODE_SAMPLE_ZERO_BIT
        independentResolveNone                               = false
        independentResolve                                   = false
        filterMinmaxSingleComponentFormats                   = true
        filterMinmaxImageComponentMapping                    = true
        maxTimelineSemaphoreValueDifference                  = 18446744073709551615
        framebufferIntegerColorSampleCounts: count = 1
                SAMPLE_COUNT_1_BIT

VkPhysicalDeviceVulkan13Properties:
-----------------------------------
        minSubgroupSize                                                               = 8
        maxSubgroupSize                                                               = 8
        maxComputeWorkgroupSubgroups                                                  = 32
        requiredSubgroupSizeStages: count = 2
                SHADER_STAGE_FRAGMENT_BIT
                SHADER_STAGE_COMPUTE_BIT
        maxInlineUniformBlockSize                                                     = 4096
        maxPerStageDescriptorInlineUniformBlocks                                      = 8
        maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks                       = 8
        maxDescriptorSetInlineUniformBlocks                                           = 8
        maxDescriptorSetUpdateAfterBindInlineUniformBlocks                            = 8
        maxInlineUniformTotalSize                                                     = 262144
        integerDotProduct8BitUnsignedAccelerated                                      = false
        integerDotProduct8BitSignedAccelerated                                        = false
        integerDotProduct8BitMixedSignednessAccelerated                               = false
        integerDotProduct4x8BitPackedUnsignedAccelerated                              = false
        integerDotProduct4x8BitPackedSignedAccelerated                                = false
        integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = false
        integerDotProduct16BitUnsignedAccelerated                                     = false
        integerDotProduct16BitSignedAccelerated                                       = false
        integerDotProduct16BitMixedSignednessAccelerated                              = false
        integerDotProduct32BitUnsignedAccelerated                                     = false
        integerDotProduct32BitSignedAccelerated                                       = false
        integerDotProduct32BitMixedSignednessAccelerated                              = false
        integerDotProduct64BitUnsignedAccelerated                                     = false
        integerDotProduct64BitSignedAccelerated                                       = false
        integerDotProduct64BitMixedSignednessAccelerated                              = false
        integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = false
        integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = false
        integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = false
        integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = false
        integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = false
        integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = false
        integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
        integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
        integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
        integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
        integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false
        storageTexelBufferOffsetAlignmentBytes                                        = 0x00000010
        storageTexelBufferOffsetSingleTexelAlignment                                  = true
        uniformTexelBufferOffsetAlignmentBytes                                        = 0x00000010
        uniformTexelBufferOffsetSingleTexelAlignment                                  = true
        maxBufferSize                                                                 = 0xffffffff

VkPhysicalDeviceVulkan14Properties:
-----------------------------------
        lineSubPixelPrecisionBits                           = 8
        maxVertexAttribDivisor                              = 4294967295
        supportsNonZeroFirstInstance                        = false
        maxPushDescriptors                                  = 32
        dynamicRenderingLocalReadDepthStencilAttachments    = false
        dynamicRenderingLocalReadMultisampledAttachments    = false
        earlyFragmentMultisampleCoverageAfterSampleCounting = true
        earlyFragmentSampleMaskTestBeforeSampleCounting     = false
        depthStencilSwizzleOneSupport                       = false
        polygonModePointSize                                = true
        nonStrictSinglePixelWideLinesUseParallelogram       = false
        nonStrictWideLinesUseParallelogram                  = false
        blockTexelViewCompatibleMultipleLayers              = true
        maxCombinedImageSamplerDescriptorCount              = 3
        fragmentShadingRateClampCombinerInputs              = false
        defaultRobustnessStorageBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2
        defaultRobustnessUniformBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2
        defaultRobustnessVertexInputs                       = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2
        defaultRobustnessImages                             = PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2
        copySrcLayoutCount                                  = 23
        pCopySrcLayouts: count = 23
                IMAGE_LAYOUT_GENERAL
                IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
                IMAGE_LAYOUT_PREINITIALIZED
                IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_PRESENT_SRC_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR
                IMAGE_LAYOUT_SHARED_PRESENT_KHR
                IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT
                IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
        copyDstLayoutCount                                  = 23
        pCopyDstLayouts: count = 23
                IMAGE_LAYOUT_GENERAL
                IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
                IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
                IMAGE_LAYOUT_PREINITIALIZED
                IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_READ_ONLY_OPTIMAL
                IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
                IMAGE_LAYOUT_PRESENT_SRC_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR
                IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR
                IMAGE_LAYOUT_SHARED_PRESENT_KHR
                IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT
                IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
        optimalTilingLayoutUUID                             = 32352e31-2e30-6161-6161-616161616161
        identicalMemoryTypeRequirements                     = false

Device Extensions: count = 154
        VK_AMDX_shader_enqueue                             : extension revision 2
        VK_ANDROID_external_memory_android_hardware_buffer : extension revision 5
        VK_ARM_rasterization_order_attachment_access       : extension revision 1
        VK_EXT_4444_formats                                : extension revision 1
        VK_EXT_attachment_feedback_loop_dynamic_state      : extension revision 1
        VK_EXT_attachment_feedback_loop_layout             : extension revision 2
        VK_EXT_border_color_swizzle                        : extension revision 1
        VK_EXT_calibrated_timestamps                       : extension revision 2
        VK_EXT_color_write_enable                          : extension revision 1
        VK_EXT_conditional_rendering                       : extension revision 2
        VK_EXT_custom_border_color                         : extension revision 12
        VK_EXT_depth_clip_control                          : extension revision 1
        VK_EXT_depth_clip_enable                           : extension revision 1
        VK_EXT_depth_range_unrestricted                    : extension revision 1
        VK_EXT_descriptor_buffer                           : extension revision 1
        VK_EXT_descriptor_indexing                         : extension revision 2
        VK_EXT_device_generated_commands                   : extension revision 1
        VK_EXT_dynamic_rendering_unused_attachments        : extension revision 1
        VK_EXT_extended_dynamic_state                      : extension revision 1
        VK_EXT_extended_dynamic_state2                     : extension revision 1
        VK_EXT_extended_dynamic_state3                     : extension revision 2
        VK_EXT_external_memory_dma_buf                     : extension revision 1
        VK_EXT_external_memory_host                        : extension revision 1
        VK_EXT_graphics_pipeline_library                   : extension revision 1
        VK_EXT_hdr_metadata                                : extension revision 3
        VK_EXT_host_image_copy                             : extension revision 1
        VK_EXT_host_query_reset                            : extension revision 1
        VK_EXT_image_2d_view_of_3d                         : extension revision 1
        VK_EXT_image_robustness                            : extension revision 1
        VK_EXT_image_sliced_view_of_3d                     : extension revision 1
        VK_EXT_index_type_uint8                            : extension revision 1
        VK_EXT_inline_uniform_block                        : extension revision 1
        VK_EXT_legacy_vertex_attributes                    : extension revision 1
        VK_EXT_line_rasterization                          : extension revision 1
        VK_EXT_load_store_op_none                          : extension revision 1
        VK_EXT_memory_budget                               : extension revision 1
        VK_EXT_memory_priority                             : extension revision 1
        VK_EXT_mesh_shader                                 : extension revision 1
        VK_EXT_multi_draw                                  : extension revision 1
        VK_EXT_multisampled_render_to_single_sampled       : extension revision 1
        VK_EXT_mutable_descriptor_type                     : extension revision 1
        VK_EXT_nested_command_buffer                       : extension revision 1
        VK_EXT_non_seamless_cube_map                       : extension revision 1
        VK_EXT_pageable_device_local_memory                : extension revision 1
        VK_EXT_pipeline_creation_cache_control             : extension revision 3
        VK_EXT_pipeline_creation_feedback                  : extension revision 1
        VK_EXT_pipeline_library_group_handles              : extension revision 1
        VK_EXT_pipeline_protected_access                   : extension revision 1
        VK_EXT_pipeline_robustness                         : extension revision 1
        VK_EXT_post_depth_coverage                         : extension revision 1
        VK_EXT_primitive_topology_list_restart             : extension revision 1
        VK_EXT_primitives_generated_query                  : extension revision 1
        VK_EXT_private_data                                : extension revision 1
        VK_EXT_provoking_vertex                            : extension revision 1
        VK_EXT_queue_family_foreign                        : extension revision 1
        VK_EXT_rasterization_order_attachment_access       : extension revision 1
        VK_EXT_robustness2                                 : extension revision 1
        VK_EXT_sampler_filter_minmax                       : extension revision 2
        VK_EXT_scalar_block_layout                         : extension revision 1
        VK_EXT_separate_stencil_usage                      : extension revision 1
        VK_EXT_shader_atomic_float                         : extension revision 1
        VK_EXT_shader_atomic_float2                        : extension revision 1
        VK_EXT_shader_demote_to_helper_invocation          : extension revision 1
        VK_EXT_shader_object                               : extension revision 1
        VK_EXT_shader_replicated_composites                : extension revision 1
        VK_EXT_shader_stencil_export                       : extension revision 1
        VK_EXT_shader_subgroup_ballot                      : extension revision 1
        VK_EXT_shader_subgroup_vote                        : extension revision 1
        VK_EXT_shader_viewport_index_layer                 : extension revision 1
        VK_EXT_subgroup_size_control                       : extension revision 2
        VK_EXT_swapchain_maintenance1                      : extension revision 1
        VK_EXT_texel_buffer_alignment                      : extension revision 1
        VK_EXT_transform_feedback                          : extension revision 1
        VK_EXT_vertex_attribute_divisor                    : extension revision 3
        VK_EXT_vertex_input_dynamic_state                  : extension revision 2
        VK_EXT_ycbcr_2plane_444_formats                    : extension revision 1
        VK_EXT_ycbcr_image_arrays                          : extension revision 1
        VK_GOOGLE_decorate_string                          : extension revision 1
        VK_GOOGLE_hlsl_functionality1                      : extension revision 1
        VK_KHR_16bit_storage                               : extension revision 1
        VK_KHR_8bit_storage                                : extension revision 1
        VK_KHR_acceleration_structure                      : extension revision 13
        VK_KHR_bind_memory2                                : extension revision 1
        VK_KHR_buffer_device_address                       : extension revision 1
        VK_KHR_compute_shader_derivatives                  : extension revision 1
        VK_KHR_copy_commands2                              : extension revision 1
        VK_KHR_create_renderpass2                          : extension revision 1
        VK_KHR_dedicated_allocation                        : extension revision 3
        VK_KHR_deferred_host_operations                    : extension revision 4
        VK_KHR_depth_stencil_resolve                       : extension revision 1
        VK_KHR_descriptor_update_template                  : extension revision 1
        VK_KHR_device_group                                : extension revision 4
        VK_KHR_draw_indirect_count                         : extension revision 1
        VK_KHR_driver_properties                           : extension revision 1
        VK_KHR_dynamic_rendering                           : extension revision 1
        VK_KHR_dynamic_rendering_local_read                : extension revision 1
        VK_KHR_external_fence                              : extension revision 1
        VK_KHR_external_memory                             : extension revision 1
        VK_KHR_external_memory_fd                          : extension revision 1
        VK_KHR_external_semaphore                          : extension revision 1
        VK_KHR_format_feature_flags2                       : extension revision 2
        VK_KHR_get_memory_requirements2                    : extension revision 1
        VK_KHR_global_priority                             : extension revision 1
        VK_KHR_image_format_list                           : extension revision 1
        VK_KHR_imageless_framebuffer                       : extension revision 1
        VK_KHR_incremental_present                         : extension revision 2
        VK_KHR_index_type_uint8                            : extension revision 1
        VK_KHR_line_rasterization                          : extension revision 1
        VK_KHR_load_store_op_none                          : extension revision 1
        VK_KHR_maintenance1                                : extension revision 2
        VK_KHR_maintenance2                                : extension revision 1
        VK_KHR_maintenance3                                : extension revision 1
        VK_KHR_maintenance4                                : extension revision 2
        VK_KHR_maintenance5                                : extension revision 1
        VK_KHR_maintenance6                                : extension revision 1
        VK_KHR_maintenance7                                : extension revision 1
        VK_KHR_maintenance8                                : extension revision 1
        VK_KHR_map_memory2                                 : extension revision 1
        VK_KHR_multiview                                   : extension revision 1
        VK_KHR_pipeline_library                            : extension revision 1
        VK_KHR_push_descriptor                             : extension revision 2
        VK_KHR_ray_query                                   : extension revision 1
        VK_KHR_ray_tracing_maintenance1                    : extension revision 1
        VK_KHR_ray_tracing_pipeline                        : extension revision 1
        VK_KHR_ray_tracing_position_fetch                  : extension revision 1
        VK_KHR_relaxed_block_layout                        : extension revision 1
        VK_KHR_sampler_mirror_clamp_to_edge                : extension revision 3
        VK_KHR_sampler_ycbcr_conversion                    : extension revision 14
        VK_KHR_separate_depth_stencil_layouts              : extension revision 1
        VK_KHR_shader_atomic_int64                         : extension revision 1
        VK_KHR_shader_clock                                : extension revision 1
        VK_KHR_shader_draw_parameters                      : extension revision 1
        VK_KHR_shader_expect_assume                        : extension revision 1
        VK_KHR_shader_float16_int8                         : extension revision 1
        VK_KHR_shader_float_controls                       : extension revision 4
        VK_KHR_shader_float_controls2                      : extension revision 1
        VK_KHR_shader_integer_dot_product                  : extension revision 1
        VK_KHR_shader_maximal_reconvergence                : extension revision 1
        VK_KHR_shader_non_semantic_info                    : extension revision 1
        VK_KHR_shader_relaxed_extended_instruction         : extension revision 1
        VK_KHR_shader_subgroup_extended_types              : extension revision 1
        VK_KHR_shader_subgroup_rotate                      : extension revision 2
        VK_KHR_shader_terminate_invocation                 : extension revision 1
        VK_KHR_spirv_1_4                                   : extension revision 1
        VK_KHR_storage_buffer_storage_class                : extension revision 1
        VK_KHR_swapchain                                   : extension revision 70
        VK_KHR_swapchain_mutable_format                    : extension revision 1
        VK_KHR_synchronization2                            : extension revision 1
        VK_KHR_timeline_semaphore                          : extension revision 2
        VK_KHR_uniform_buffer_standard_layout              : extension revision 1
        VK_KHR_variable_pointers                           : extension revision 1
        VK_KHR_vertex_attribute_divisor                    : extension revision 1
        VK_KHR_vulkan_memory_model                         : extension revision 3
        VK_KHR_zero_initialize_workgroup_memory            : extension revision 1

VkQueueFamilyProperties:
========================
        queueProperties[0]:
        -------------------
                minImageTransferGranularity = (1,1,1)
                queueCount                  = 1
                queueFlags                  = QUEUE_GRAPHICS_BIT | QUEUE_COMPUTE_BIT | QUEUE_TRANSFER_BIT | QUEUE_SPARSE_BINDING_BIT
                timestampValidBits          = 64
                present support             = true

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 1
        memoryHeaps[0]:
                size   = 8211234816 (0x1e96d8000) (7.65 GiB)
                budget = 8211234816 (0x1e96d8000) (7.65 GiB)
                usage  = 3932286976 (0xea61f000) (3.66 GiB)
                flags: count = 1
                        MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 1
        memoryTypes[0]:
                heapIndex     = 0
                propertyFlags = 0x000f: count = 4
                        MEMORY_PROPERTY_DEVICE_LOCAL_BIT
                        MEMORY_PROPERTY_HOST_VISIBLE_BIT
                        MEMORY_PROPERTY_HOST_COHERENT_BIT
                        MEMORY_PROPERTY_HOST_CACHED_BIT
                usable for:
                        IMAGE_TILING_OPTIMAL:
                                color images
                                FORMAT_D16_UNORM
                                FORMAT_X8_D24_UNORM_PACK32
                                FORMAT_D32_SFLOAT
                                FORMAT_S8_UINT
                                FORMAT_D24_UNORM_S8_UINT
                                FORMAT_D32_SFLOAT_S8_UINT
                        IMAGE_TILING_LINEAR:
                                color images

VkPhysicalDeviceFeatures:
=========================
        robustBufferAccess                      = true
        fullDrawIndexUint32                     = true
        imageCubeArray                          = true
        independentBlend                        = true
        geometryShader                          = true
        tessellationShader                      = true
        sampleRateShading                       = true
        dualSrcBlend                            = true
        logicOp                                 = true
        multiDrawIndirect                       = true
        drawIndirectFirstInstance               = true
        depthClamp                              = true
        depthBiasClamp                          = true
        fillModeNonSolid                        = true
        depthBounds                             = false
        wideLines                               = true
        largePoints                             = true
        alphaToOne                              = true
        multiViewport                           = true
        samplerAnisotropy                       = true
        textureCompressionETC2                  = false
        textureCompressionASTC_LDR              = false
        textureCompressionBC                    = true
        occlusionQueryPrecise                   = true
        pipelineStatisticsQuery                 = true
        vertexPipelineStoresAndAtomics          = true
        fragmentStoresAndAtomics                = true
        shaderTessellationAndGeometryPointSize  = true
        shaderImageGatherExtended               = true
        shaderStorageImageExtendedFormats       = true
        shaderStorageImageMultisample           = true
        shaderStorageImageReadWithoutFormat     = true
        shaderStorageImageWriteWithoutFormat    = true
        shaderUniformBufferArrayDynamicIndexing = true
        shaderSampledImageArrayDynamicIndexing  = true
        shaderStorageBufferArrayDynamicIndexing = true
        shaderStorageImageArrayDynamicIndexing  = true
        shaderClipDistance                      = true
        shaderCullDistance                      = true
        shaderFloat64                           = true
        shaderInt64                             = true
        shaderInt16                             = true
        shaderResourceResidency                 = true
        shaderResourceMinLod                    = false
        sparseBinding                           = true
        sparseResidencyBuffer                   = true
        sparseResidencyImage2D                  = true
        sparseResidencyImage3D                  = true
        sparseResidency2Samples                 = false
        sparseResidency4Samples                 = false
        sparseResidency8Samples                 = false
        sparseResidency16Samples                = false
        sparseResidencyAliased                  = true
        variableMultisampleRate                 = false
        inheritedQueries                        = false

VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
        formatA4R4G4B4 = true
        formatA4B4G4R4 = true

VkPhysicalDeviceAccelerationStructureFeaturesKHR:
-------------------------------------------------
        accelerationStructure                                 = true
        accelerationStructureCaptureReplay                    = false
        accelerationStructureIndirectBuild                    = false
        accelerationStructureHostCommands                     = false
        descriptorBindingAccelerationStructureUpdateAfterBind = true

VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT:
--------------------------------------------------------------
        attachmentFeedbackLoopDynamicState = true

VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT:
--------------------------------------------------------
        attachmentFeedbackLoopLayout = true

VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
        borderColorSwizzle          = true
        borderColorSwizzleFromImage = true

VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
        colorWriteEnable = true

VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR:
----------------------------------------------------
        computeDerivativeGroupQuads  = true
        computeDerivativeGroupLinear = true

VkPhysicalDeviceConditionalRenderingFeaturesEXT:
------------------------------------------------
        conditionalRendering          = true
        inheritedConditionalRendering = false

VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
        customBorderColors             = true
        customBorderColorWithoutFormat = true

VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
        depthClipControl = true

VkPhysicalDeviceDepthClipEnableFeaturesEXT:
-------------------------------------------
        depthClipEnable = true

VkPhysicalDeviceDescriptorBufferFeaturesEXT:
--------------------------------------------
        descriptorBuffer                   = true
        descriptorBufferCaptureReplay      = false
        descriptorBufferImageLayoutIgnored = true
        descriptorBufferPushDescriptors    = true

VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT:
---------------------------------------------------
        deviceGeneratedCommands        = true
        dynamicGeneratedPipelineLayout = true

VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT:
-------------------------------------------------------------
        dynamicRenderingUnusedAttachments = true

VkPhysicalDeviceExtendedDynamicState2FeaturesEXT:
-------------------------------------------------
        extendedDynamicState2                   = true
        extendedDynamicState2LogicOp            = true
        extendedDynamicState2PatchControlPoints = true

VkPhysicalDeviceExtendedDynamicState3FeaturesEXT:
-------------------------------------------------
        extendedDynamicState3TessellationDomainOrigin         = true
        extendedDynamicState3DepthClampEnable                 = true
        extendedDynamicState3PolygonMode                      = true
        extendedDynamicState3RasterizationSamples             = true
        extendedDynamicState3SampleMask                       = true
        extendedDynamicState3AlphaToCoverageEnable            = true
        extendedDynamicState3AlphaToOneEnable                 = true
        extendedDynamicState3LogicOpEnable                    = true
        extendedDynamicState3ColorBlendEnable                 = true
        extendedDynamicState3ColorBlendEquation               = true
        extendedDynamicState3ColorWriteMask                   = true
        extendedDynamicState3RasterizationStream              = false
        extendedDynamicState3ConservativeRasterizationMode    = false
        extendedDynamicState3ExtraPrimitiveOverestimationSize = false
        extendedDynamicState3DepthClipEnable                  = true
        extendedDynamicState3SampleLocationsEnable            = false
        extendedDynamicState3ColorBlendAdvanced               = false
        extendedDynamicState3ProvokingVertexMode              = true
        extendedDynamicState3LineRasterizationMode            = true
        extendedDynamicState3LineStippleEnable                = true
        extendedDynamicState3DepthClipNegativeOneToOne        = true
        extendedDynamicState3ViewportWScalingEnable           = false
        extendedDynamicState3ViewportSwizzle                  = false
        extendedDynamicState3CoverageToColorEnable            = false
        extendedDynamicState3CoverageToColorLocation          = false
        extendedDynamicState3CoverageModulationMode           = false
        extendedDynamicState3CoverageModulationTableEnable    = false
        extendedDynamicState3CoverageModulationTable          = false
        extendedDynamicState3CoverageReductionMode            = false
        extendedDynamicState3RepresentativeFragmentTestEnable = false
        extendedDynamicState3ShadingRateImageEnable           = false

VkPhysicalDeviceExtendedDynamicStateFeaturesEXT:
------------------------------------------------
        extendedDynamicState = true

VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT:
---------------------------------------------------
        graphicsPipelineLibrary = true

VkPhysicalDeviceImage2DViewOf3DFeaturesEXT:
-------------------------------------------
        image2DViewOf3D   = true
        sampler2DViewOf3D = true

VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT:
-----------------------------------------------
        imageSlicedViewOf3D = true

VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT:
--------------------------------------------------
        legacyVertexAttributes = true

VkPhysicalDeviceMaintenance7FeaturesKHR:
----------------------------------------
        maintenance7 = true

VkPhysicalDeviceMaintenance8FeaturesKHR:
----------------------------------------
        maintenance8 = true

VkPhysicalDeviceMemoryPriorityFeaturesEXT:
------------------------------------------
        memoryPriority = true

VkPhysicalDeviceMeshShaderFeaturesEXT:
--------------------------------------
        taskShader                             = true
        meshShader                             = true
        multiviewMeshShader                    = false
        primitiveFragmentShadingRateMeshShader = false
        meshShaderQueries                      = true

VkPhysicalDeviceMultiDrawFeaturesEXT:
-------------------------------------
        multiDraw = true

VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT:
-------------------------------------------------------------
        multisampledRenderToSingleSampled = true

VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT:
-------------------------------------------------
        mutableDescriptorType = true

VkPhysicalDeviceNestedCommandBufferFeaturesEXT:
-----------------------------------------------
        nestedCommandBuffer                = true
        nestedCommandBufferRendering       = true
        nestedCommandBufferSimultaneousUse = true

VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT:
----------------------------------------------
        nonSeamlessCubeMap = true

VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT:
-----------------------------------------------------
        pageableDeviceLocalMemory = true

VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT:
-------------------------------------------------------
        pipelineLibraryGroupHandles = true

VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
        primitiveTopologyListRestart      = true
        primitiveTopologyPatchListRestart = true

VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT:
----------------------------------------------------
        primitivesGeneratedQuery                      = true
        primitivesGeneratedQueryWithRasterizerDiscard = true
        primitivesGeneratedQueryWithNonZeroStreams    = true

VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
        provokingVertexLast                       = true
        transformFeedbackPreservesProvokingVertex = true

VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT:
--------------------------------------------------------------
        rasterizationOrderColorAttachmentAccess   = true
        rasterizationOrderDepthAttachmentAccess   = true
        rasterizationOrderStencilAttachmentAccess = true

VkPhysicalDeviceRayQueryFeaturesKHR:
------------------------------------
        rayQuery = true

VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR:
--------------------------------------------------
        rayTracingMaintenance1               = true
        rayTracingPipelineTraceRaysIndirect2 = true

VkPhysicalDeviceRayTracingPipelineFeaturesKHR:
----------------------------------------------
        rayTracingPipeline                                    = true
        rayTracingPipelineShaderGroupHandleCaptureReplay      = false
        rayTracingPipelineShaderGroupHandleCaptureReplayMixed = false
        rayTracingPipelineTraceRaysIndirect                   = true
        rayTraversalPrimitiveCulling                          = true

VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR:
---------------------------------------------------
        rayTracingPositionFetch = true

VkPhysicalDeviceRobustness2FeaturesEXT:
---------------------------------------
        robustBufferAccess2 = true
        robustImageAccess2  = true
        nullDescriptor      = true

VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT:
----------------------------------------------
        shaderBufferFloat16Atomics      = false
        shaderBufferFloat16AtomicAdd    = false
        shaderBufferFloat16AtomicMinMax = false
        shaderBufferFloat32AtomicMinMax = true
        shaderBufferFloat64AtomicMinMax = false
        shaderSharedFloat16Atomics      = false
        shaderSharedFloat16AtomicAdd    = false
        shaderSharedFloat16AtomicMinMax = false
        shaderSharedFloat32AtomicMinMax = true
        shaderSharedFloat64AtomicMinMax = false
        shaderImageFloat32AtomicMinMax  = true
        sparseImageFloat32AtomicMinMax  = false

VkPhysicalDeviceShaderAtomicFloatFeaturesEXT:
---------------------------------------------
        shaderBufferFloat32Atomics   = true
        shaderBufferFloat32AtomicAdd = true
        shaderBufferFloat64Atomics   = false
        shaderBufferFloat64AtomicAdd = false
        shaderSharedFloat32Atomics   = true
        shaderSharedFloat32AtomicAdd = true
        shaderSharedFloat64Atomics   = false
        shaderSharedFloat64AtomicAdd = false
        shaderImageFloat32Atomics    = true
        shaderImageFloat32AtomicAdd  = true
        sparseImageFloat32Atomics    = true
        sparseImageFloat32AtomicAdd  = true

VkPhysicalDeviceShaderClockFeaturesKHR:
---------------------------------------
        shaderSubgroupClock = true
        shaderDeviceClock   = true

VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR:
------------------------------------------------------
        shaderMaximalReconvergence = true

VkPhysicalDeviceShaderObjectFeaturesEXT:
----------------------------------------
        shaderObject = true

VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR:
------------------------------------------------------------
        shaderRelaxedExtendedInstruction = true

VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT:
------------------------------------------------------
        shaderReplicatedComposites = true

VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT:
-------------------------------------------------
        swapchainMaintenance1 = true

VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
        texelBufferAlignment = true

VkPhysicalDeviceTransformFeedbackFeaturesEXT:
---------------------------------------------
        transformFeedback = true
        geometryStreams   = true

VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT:
---------------------------------------------------
        vertexInputDynamicState = true

VkPhysicalDeviceVulkan11Features:
---------------------------------
        storageBuffer16BitAccess           = true
        uniformAndStorageBuffer16BitAccess = true
        storagePushConstant16              = true
        storageInputOutput16               = false
        multiview                          = true
        multiviewGeometryShader            = true
        multiviewTessellationShader        = true
        variablePointersStorageBuffer      = true
        variablePointers                   = true
        protectedMemory                    = false
        samplerYcbcrConversion             = true
        shaderDrawParameters               = true

VkPhysicalDeviceVulkan12Features:
---------------------------------
        samplerMirrorClampToEdge                           = true
        drawIndirectCount                                  = true
        storageBuffer8BitAccess                            = true
        uniformAndStorageBuffer8BitAccess                  = true
        storagePushConstant8                               = true
        shaderBufferInt64Atomics                           = true
        shaderSharedInt64Atomics                           = true
        shaderFloat16                                      = true
        shaderInt8                                         = true
        descriptorIndexing                                 = true
        shaderInputAttachmentArrayDynamicIndexing          = true
        shaderUniformTexelBufferArrayDynamicIndexing       = true
        shaderStorageTexelBufferArrayDynamicIndexing       = true
        shaderUniformBufferArrayNonUniformIndexing         = true
        shaderSampledImageArrayNonUniformIndexing          = true
        shaderStorageBufferArrayNonUniformIndexing         = true
        shaderStorageImageArrayNonUniformIndexing          = true
        shaderInputAttachmentArrayNonUniformIndexing       = true
        shaderUniformTexelBufferArrayNonUniformIndexing    = true
        shaderStorageTexelBufferArrayNonUniformIndexing    = true
        descriptorBindingUniformBufferUpdateAfterBind      = true
        descriptorBindingSampledImageUpdateAfterBind       = true
        descriptorBindingStorageImageUpdateAfterBind       = true
        descriptorBindingStorageBufferUpdateAfterBind      = true
        descriptorBindingUniformTexelBufferUpdateAfterBind = true
        descriptorBindingStorageTexelBufferUpdateAfterBind = true
        descriptorBindingUpdateUnusedWhilePending          = true
        descriptorBindingPartiallyBound                    = true
        descriptorBindingVariableDescriptorCount           = true
        runtimeDescriptorArray                             = true
        samplerFilterMinmax                                = true
        scalarBlockLayout                                  = true
        imagelessFramebuffer                               = true
        uniformBufferStandardLayout                        = true
        shaderSubgroupExtendedTypes                        = true
        separateDepthStencilLayouts                        = true
        hostQueryReset                                     = true
        timelineSemaphore                                  = true
        bufferDeviceAddress                                = true
        bufferDeviceAddressCaptureReplay                   = false
        bufferDeviceAddressMultiDevice                     = false
        vulkanMemoryModel                                  = true
        vulkanMemoryModelDeviceScope                       = true
        vulkanMemoryModelAvailabilityVisibilityChains      = true
        shaderOutputViewportIndex                          = true
        shaderOutputLayer                                  = true
        subgroupBroadcastDynamicId                         = true

VkPhysicalDeviceVulkan13Features:
---------------------------------
        robustImageAccess                                  = true
        inlineUniformBlock                                 = true
        descriptorBindingInlineUniformBlockUpdateAfterBind = true
        pipelineCreationCacheControl                       = true
        privateData                                        = true
        shaderDemoteToHelperInvocation                     = true
        shaderTerminateInvocation                          = true
        subgroupSizeControl                                = true
        computeFullSubgroups                               = true
        synchronization2                                   = true
        textureCompressionASTC_HDR                         = false
        shaderZeroInitializeWorkgroupMemory                = true
        dynamicRendering                                   = true
        shaderIntegerDotProduct                            = true
        maintenance4                                       = true

VkPhysicalDeviceVulkan14Features:
---------------------------------
        globalPriorityQuery                    = true
        shaderSubgroupRotate                   = true
        shaderSubgroupRotateClustered          = true
        shaderFloatControls2                   = true
        shaderExpectAssume                     = true
        rectangularLines                       = true
        bresenhamLines                         = true
        smoothLines                            = true
        stippledRectangularLines               = true
        stippledBresenhamLines                 = true
        stippledSmoothLines                    = true
        vertexAttributeInstanceRateDivisor     = true
        vertexAttributeInstanceRateZeroDivisor = true
        indexTypeUint8                         = true
        dynamicRenderingLocalRead              = true
        maintenance5                           = true
        maintenance6                           = true
        pipelineProtectedAccess                = true
        pipelineRobustness                     = true
        hostImageCopy                          = true
        pushDescriptor                         = true

VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT:
-------------------------------------------------
        ycbcr2plane444Formats = true

VkPhysicalDeviceYcbcrImageArraysFeaturesEXT:
--------------------------------------------
        ycbcrImageArrays = true
