zed-industries / zed

Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
https://zed.dev
Other
47.33k stars 2.74k forks source link

Zed GUI doesn't start on Ubuntu 20.04 #14237

Open Isinlor opened 2 months ago

Isinlor commented 2 months ago

Check for existing issues

Describe the bug / provide steps to reproduce it

I did following and I don't get GUI at all:

isinlor@xps15:~/Projects$ curl https://zed.dev/install.sh | sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4220  100  4220    0     0   7800      0 --:--:-- --:--:-- --:--:--  7800
Downloading Zed
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   565    0   565    0     0    366      0 --:--:--  0:00:01 --:--:--   366
100 53.0M  100 53.0M    0     0  8030k      0  0:00:06  0:00:06 --:--:-- 11.6M
Zed has been installed. Run with 'zed'
isinlor@xps15:~/Projects$ zed
isinlor@xps15:~/Projects$ zed --foreground
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

^C
isinlor@xps15:~/Projects$ sudo sysctl dev.i915.perf_stream_paranoid=0
[sudo] password for isinlor: 
dev.i915.perf_stream_paranoid = 0
isinlor@xps15:~/Projects$ zed --foreground

And:

isinlor@xps15:~/Projects$ ps aux | grep zed
isinlor  1513641  0.0  0.0  71356  2848 pts/0    S+   21:27   0:00 zed --foreground
isinlor  1513643  0.5  0.4 13189440 134368 pts/0 Sl+  21:27   0:00 /home/isinlor/.local/zed.app/libexec/zed-editor zed-cli:///tmp/.tmpJ5XRvz/socket
isinlor  1513742  0.8  0.2 791492 75432 pts/0    Sl+  21:27   0:00 /home/isinlor/.local/share/zed/node/node-v18.15.0-linux-x64/bin/node /home/isinlor/.local/share/zed/copilot/copilot-v0.5.0/dist/agent.js --stdio
isinlor  1514578  0.0  0.0  11572   660 pts/1    S+   21:29   0:00 grep --color=auto zed

Also:

isinlor@xps15:~/Projects$ /home/isinlor/.local/zed.app/libexec/zed-editor
Zed failed to open a window: NoSupportedDeviceFound

Environment

Dell XPS 9560 Operating System: Ubuntu 20.04.3 LTS Kernel: Linux 5.15.0-107-generic

Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz

lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04)

glxinfo | grep "OpenGL version" OpenGL version string: 4.6 (Compatibility Profile) Mesa 21.2.6

If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.

isinlor@xps15:~/Projects$ cat ~/Library/Logs/Zed/Zed.log cat: /home/isinlor/Library/Logs/Zed/Zed.log: No such file or directory

katesclau commented 2 months ago

I also could not start zed on 6.5.0-41-generic #41~22.04.2-Ubuntu, AMD Ryzen 2700, 06:00.0 VGA compatible controller: NVIDIA Corporation TU106 [GeForce RTX 2060 SUPER] (rev a1)

No logs created.

rebootl commented 2 months ago

I can confirm the same issue here on an EndevourOS (Arch Linux) w/ GNOME desktop environment (v. 46.3).

03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 14 [Radeon RX 5500/5500M / Pro 5500M] (rev 43)

$ .local/zed.app/libexec/zed-editor 
[2024-07-11T20:58:57+02:00 ERROR blade_graphics::hal::init] Instance extension "VK_KHR_get_physical_device_properties2" is not supported
Zed failed to open a window: NoSupportedDeviceFound

Edit: fixed by installing vulkan-intel. :+1:

naurissteins commented 2 months ago

Similar issue here. I see zed-editor is running in the background, but GUI won't show up. Arch Linux, X11, AMD Ryzen

ConradIrwin commented 2 months ago

It sounds like this might be caused by Vulkan failing to start correctly on your systems.

When you get a moment could you please let me know what vkcube outputs? https://zed.dev/docs/linux#troubleshooting has some more instructions.

iliesh commented 2 months ago

I have the same issue,

underwent 1s65msx vkcube
vkEnumeratePhysicalDevices reported zero accessible devices.

Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information

It seems that it's because of the permissions, I was able to launch zed editor as root

sudo .local/zed.app/libexec/zed-editor
Isinlor commented 2 months ago

vkcube starts fine:

image

sudo doesn't help:

isinlor@xps15:~/Projects$ vkcube
^C
isinlor@xps15:~/Projects$ sudo zed
sudo: zed: command not found
isinlor@xps15:~/Projects$ sudo ~/.local/zed.app/libexec/zed-editor
Zed failed to open a window: NoSupportedDeviceFound
isinlor@xps15:~/Projects$ ~/.local/zed.app/libexec/zed-editor
Zed failed to open a window: NoSupportedDeviceFound
RanFR commented 2 months ago

same issue here, vkcube can run well but zed GUI doesn't open. ps aux | grep zed can see that zed is running in the background.

stalkerg commented 2 months ago

Can you show your vulkaninfo? And honestly 20.04 probably too old, you should try with 24.04 - for last 4 years Mesa GL/VK drivers is dramatically changed.

For latest state you can check extensions here https://mesamatrix.net/

Isinlor commented 2 months ago
vulkaninfo output
ERROR: [Loader Message] Code 0 : loader_scanned_icd_add: Could not get 'vkCreateInstance' via 'vk_icdGetInstanceProcAddr' for ICD libGLX_nvidia.so.0
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_lvp.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_radeon.so: wrong ELF class: ELFCLASS32
ERROR: [Loader Message] Code 0 : /usr/lib/i386-linux-gnu/libvulkan_intel.so: wrong ELF class: ELFCLASS32
WARNING: lavapipe is not a conformant vulkan implementation, testing use only.
==========
VULKANINFO
==========

Vulkan Instance Version: 1.2.131

Instance Extensions: count = 18
====================
    VK_EXT_acquire_xlib_display            : extension revision 1
    VK_EXT_debug_report                    : extension revision 10
    VK_EXT_debug_utils                     : extension revision 1
    VK_EXT_direct_mode_display             : extension revision 1
    VK_EXT_display_surface_counter         : extension revision 1
    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_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

Layers: count = 8
=======
VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation Layer) Vulkan version 1.0.131, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

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

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

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

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

VK_LAYER_NV_optimus (NVIDIA Optimus layer) Vulkan version 1.2.186, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

VK_LAYER_VALVE_steam_fossilize_32 (Steam Pipeline Caching Layer) Vulkan version 1.2.136, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

VK_LAYER_VALVE_steam_fossilize_64 (Steam Pipeline Caching Layer) Vulkan version 1.2.136, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.2.136, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.2.136, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 2
        GPU id  : 0 (Intel(R) HD Graphics 630 (KBL GT2))
        Layer-Device Extensions: count = 0

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

Presentable Surfaces:
=====================
GPU id : 0 (Intel(R) HD Graphics 630 (KBL GT2)):
    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:
            SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        currentTransform:
            SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        supportedCompositeAlpha:
            COMPOSITE_ALPHA_OPAQUE_BIT_KHR
            COMPOSITE_ALPHA_INHERIT_BIT_KHR
        supportedUsageFlags:
            IMAGE_USAGE_TRANSFER_SRC_BIT
            IMAGE_USAGE_TRANSFER_DST_BIT
            IMAGE_USAGE_SAMPLED_BIT
            IMAGE_USAGE_STORAGE_BIT
            IMAGE_USAGE_COLOR_ATTACHMENT_BIT
    VkSurfaceCapabilities2EXT:
    --------------------------
        supportedSurfaceCounters:
            None
    VkSurfaceProtectedCapabilitiesKHR:
    ----------------------------------
        supportsProtected = false

GPU id : 1 (llvmpipe (LLVM 12.0.0, 256 bits)):
    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:
            SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        currentTransform:
            SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        supportedCompositeAlpha:
            COMPOSITE_ALPHA_OPAQUE_BIT_KHR
            COMPOSITE_ALPHA_INHERIT_BIT_KHR
        supportedUsageFlags:
            IMAGE_USAGE_TRANSFER_SRC_BIT
            IMAGE_USAGE_TRANSFER_DST_BIT
            IMAGE_USAGE_SAMPLED_BIT
            IMAGE_USAGE_STORAGE_BIT
            IMAGE_USAGE_COLOR_ATTACHMENT_BIT
    VkSurfaceCapabilities2EXT:
    --------------------------
        supportedSurfaceCounters:
            None
    VkSurfaceProtectedCapabilitiesKHR:
    ----------------------------------
        supportsProtected = false

Groups:
=======
    Device Group Properties (Group 0):
        physicalDeviceCount: count = 1
            Intel(R) HD Graphics 630 (KBL GT2) (ID: 0)
        subsetAllocation = 0

    Device Group Present Capabilities (Group 0):
        Intel(R) HD Graphics 630 (KBL GT2) (ID: 0)
        Can present images from the following devices:
            Intel(R) HD Graphics 630 (KBL GT2) (ID: 0)
        Present modes:
            DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR

    Device Group Properties (Group 1):
        physicalDeviceCount: count = 1
            llvmpipe (LLVM 12.0.0, 256 bits) (ID: 0)
        subsetAllocation = 0

    Device Group Present Capabilities (Group 1):
WARNING: lavapipe is not a conformant vulkan implementation, testing use only.
        llvmpipe (LLVM 12.0.0, 256 bits) (ID: 0)
        Can present images from the following devices:
            llvmpipe (LLVM 12.0.0, 256 bits) (ID: 0)
        Present modes:
            DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR

Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
    apiVersion     = 4202678 (1.2.182)
    driverVersion  = 88088582 (0x5402006)
    vendorID       = 0x8086
    deviceID       = 0x591b
    deviceType     = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
    deviceName     = Intel(R) HD Graphics 630 (KBL GT2)

VkPhysicalDeviceLimits:
-----------------------
    maxImageDimension1D                             = 16384
    maxImageDimension2D                             = 16384
    maxImageDimension3D                             = 2048
    maxImageDimensionCube                           = 16384
    maxImageArrayLayers                             = 2048
    maxTexelBufferElements                          = 134217728
    maxUniformBufferRange                           = 134217728
    maxStorageBufferRange                           = 1073741824
    maxPushConstantsSize                            = 128
    maxMemoryAllocationCount                        = 4294967295
    maxSamplerAllocationCount                       = 65536
    bufferImageGranularity                          = 0x00000040
    sparseAddressSpaceSize                          = 0x00000000
    maxBoundDescriptorSets                          = 8
    maxPerStageDescriptorSamplers                   = 65535
    maxPerStageDescriptorUniformBuffers             = 64
    maxPerStageDescriptorStorageBuffers             = 65535
    maxPerStageDescriptorSampledImages              = 65535
    maxPerStageDescriptorStorageImages              = 65535
    maxPerStageDescriptorInputAttachments           = 64
    maxPerStageResources                            = 4294967295
    maxDescriptorSetSamplers                        = 393210
    maxDescriptorSetUniformBuffers                  = 384
    maxDescriptorSetUniformBuffersDynamic           = 8
    maxDescriptorSetStorageBuffers                  = 393210
    maxDescriptorSetStorageBuffersDynamic           = 8
    maxDescriptorSetSampledImages                   = 393210
    maxDescriptorSetStorageImages                   = 393210
    maxDescriptorSetInputAttachments                = 256
    maxVertexInputAttributes                        = 28
    maxVertexInputBindings                          = 28
    maxVertexInputAttributeOffset                   = 2047
    maxVertexInputBindingStride                     = 2048
    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              = 8
    maxComputeSharedMemorySize                      = 65536
    maxComputeWorkGroupCount: count = 3
        65535
        65535
        65535
    maxComputeWorkGroupInvocations                  = 1792
    maxComputeWorkGroupSize: count = 3
        1792
        1792
        1792
    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:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    framebufferDepthSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    framebufferStencilSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    framebufferNoAttachmentsSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    maxColorAttachments                             = 8
    sampledImageColorSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    sampledImageIntegerSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    sampledImageDepthSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    sampledImageStencilSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT
    storageImageSampleCounts:
        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
        2047.99
    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

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

VkPhysicalDeviceDepthStencilResolveProperties:
----------------------------------------------
    supportedDepthResolveModes:
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_AVERAGE_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    supportedStencilResolveModes:
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    independentResolveNone = true
    independentResolve     = true

VkPhysicalDeviceDescriptorIndexingProperties:
---------------------------------------------
    maxUpdateAfterBindDescriptorsInAllPools              = 1048576
    shaderUniformBufferArrayNonUniformIndexingNative     = false
    shaderSampledImageArrayNonUniformIndexingNative      = false
    shaderStorageBufferArrayNonUniformIndexingNative     = true
    shaderStorageImageArrayNonUniformIndexingNative      = false
    shaderInputAttachmentArrayNonUniformIndexingNative   = false
    robustBufferAccessUpdateAfterBind                    = true
    quadDivergentImplicitLod                             = false
    maxPerStageDescriptorUpdateAfterBindSamplers         = 1048576
    maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 64
    maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindSampledImages    = 1048576
    maxPerStageDescriptorUpdateAfterBindStorageImages    = 1048576
    maxPerStageDescriptorUpdateAfterBindInputAttachments = 64
    maxPerStageUpdateAfterBindResources                  = 4294967295
    maxDescriptorSetUpdateAfterBindSamplers              = 1048576
    maxDescriptorSetUpdateAfterBindUniformBuffers        = 384
    maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindStorageBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindSampledImages         = 1048576
    maxDescriptorSetUpdateAfterBindStorageImages         = 1048576
    maxDescriptorSetUpdateAfterBindInputAttachments      = 256

VkPhysicalDeviceDriverProperties:
---------------------------------
    driverID           = DRIVER_ID_INTEL_OPEN_SOURCE_MESA
    driverName         = Intel open-source Mesa driver
    driverInfo         = Mesa 21.2.6
    conformanceVersion = 1.2.0.0

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

VkPhysicalDeviceFloatControlsProperties:
----------------------------------------
    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

VkPhysicalDeviceIDProperties:
-----------------------------
    deviceUUID      = 0877374d-04a0-fce6-4ad7-893fa00506c5
    driverUUID      = a4c8855d-2b49-1ee2-605d-20d7fa5deac6
    deviceNodeMask  = 0
    deviceLUIDValid = false

VkPhysicalDeviceInlineUniformBlockPropertiesEXT:
------------------------------------------------
    maxInlineUniformBlockSize                               = 4096
    maxPerStageDescriptorInlineUniformBlocks                = 32
    maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 32
    maxDescriptorSetInlineUniformBlocks                     = 32
    maxDescriptorSetUpdateAfterBindInlineUniformBlocks      = 32

VkPhysicalDeviceLineRasterizationPropertiesEXT:
-----------------------------------------------
    lineSubPixelPrecisionBits = 4

VkPhysicalDeviceMaintenance3Properties:
---------------------------------------
    maxPerSetDescriptors    = 1024
    maxMemoryAllocationSize = 0x80000000

VkPhysicalDeviceMultiviewProperties:
------------------------------------
    maxMultiviewViewCount     = 16
    maxMultiviewInstanceIndex = 268435455

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

VkPhysicalDevicePerformanceQueryPropertiesKHR:
----------------------------------------------
    allowCommandBufferQueryCopies = false

VkPhysicalDevicePointClippingProperties:
----------------------------------------
    pointClippingBehavior = POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY

VkPhysicalDeviceProtectedMemoryProperties:
------------------------------------------
    protectedNoFault = false

VkPhysicalDevicePushDescriptorPropertiesKHR:
--------------------------------------------
    maxPushDescriptors = 32

VkPhysicalDeviceSampleLocationsPropertiesEXT:
---------------------------------------------
    sampleLocationSampleCounts:
        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

VkPhysicalDeviceSamplerFilterMinmaxProperties:
----------------------------------------------
    filterMinmaxSingleComponentFormats = true
    filterMinmaxImageComponentMapping  = true

VkPhysicalDeviceSubgroupProperties:
-----------------------------------
    subgroupSize              = 32
    supportedStages:
        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_ALL_GRAPHICS
        SHADER_STAGE_ALL
        SHADER_STAGE_RAYGEN_BIT_NV
        SHADER_STAGE_ANY_HIT_BIT_NV
        SHADER_STAGE_CLOSEST_HIT_BIT_NV
        SHADER_STAGE_MISS_BIT_NV
        SHADER_STAGE_INTERSECTION_BIT_NV
        SHADER_STAGE_CALLABLE_BIT_NV
        SHADER_STAGE_TASK_BIT_NV
        SHADER_STAGE_MESH_BIT_NV
    supportedOperations:
        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
    quadOperationsInAllStages = true

VkPhysicalDeviceSubgroupSizeControlPropertiesEXT:
-------------------------------------------------
    minSubgroupSize              = 8
    maxSubgroupSize              = 32
    maxComputeWorkgroupSubgroups = 56
    requiredSubgroupSizeStages:
        SHADER_STAGE_COMPUTE_BIT
        SHADER_STAGE_ALL

VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT:
--------------------------------------------------
    storageTexelBufferOffsetAlignmentBytes       = 0x00000010
    storageTexelBufferOffsetSingleTexelAlignment = true
    uniformTexelBufferOffsetAlignmentBytes       = 0x00000001
    uniformTexelBufferOffsetSingleTexelAlignment = false

VkPhysicalDeviceTimelineSemaphoreProperties:
--------------------------------------------
    maxTimelineSemaphoreValueDifference = 18446744073709551615

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                        = 0877374d-04a0-fce6-4ad7-893fa00506c5
    driverUUID                        = a4c8855d-2b49-1ee2-605d-20d7fa5deac6
    deviceNodeMask                    = 0
    deviceLUIDValid                   = false
    subgroupSize                      = 32
    subgroupSupportedStages:
        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_ALL_GRAPHICS
        SHADER_STAGE_ALL
        SHADER_STAGE_RAYGEN_BIT_NV
        SHADER_STAGE_ANY_HIT_BIT_NV
        SHADER_STAGE_CLOSEST_HIT_BIT_NV
        SHADER_STAGE_MISS_BIT_NV
        SHADER_STAGE_INTERSECTION_BIT_NV
        SHADER_STAGE_CALLABLE_BIT_NV
        SHADER_STAGE_TASK_BIT_NV
        SHADER_STAGE_MESH_BIT_NV
    subgroupSupportedOperations:
        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
    subgroupQuadOperationsInAllStages = true
    pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
    maxMultiviewViewCount             = 16
    maxMultiviewInstanceIndex         = 268435455
    protectedNoFault                  = false
    maxPerSetDescriptors              = 1024
    maxMemoryAllocationSize           = 0x80000000

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
    driverID                                             = DRIVER_ID_INTEL_OPEN_SOURCE_MESA
    driverName                                           = Intel open-source Mesa driver
    driverInfo                                           = Mesa 21.2.6
    conformanceVersion                                   = 1.2.0.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              = 1048576
    shaderUniformBufferArrayNonUniformIndexingNative     = false
    shaderSampledImageArrayNonUniformIndexingNative      = false
    shaderStorageBufferArrayNonUniformIndexingNative     = true
    shaderStorageImageArrayNonUniformIndexingNative      = false
    shaderInputAttachmentArrayNonUniformIndexingNative   = false
    robustBufferAccessUpdateAfterBind                    = true
    quadDivergentImplicitLod                             = false
    maxPerStageDescriptorUpdateAfterBindSamplers         = 1048576
    maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 64
    maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindSampledImages    = 1048576
    maxPerStageDescriptorUpdateAfterBindStorageImages    = 1048576
    maxPerStageDescriptorUpdateAfterBindInputAttachments = 64
    maxPerStageUpdateAfterBindResources                  = 4294967295
    maxDescriptorSetUpdateAfterBindSamplers              = 1048576
    maxDescriptorSetUpdateAfterBindUniformBuffers        = 384
    maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindStorageBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindSampledImages         = 1048576
    maxDescriptorSetUpdateAfterBindStorageImages         = 1048576
    maxDescriptorSetUpdateAfterBindInputAttachments      = 256
    supportedDepthResolveModes:
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_AVERAGE_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    supportedStencilResolveModes:
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    independentResolveNone                               = true
    independentResolve                                   = true
    filterMinmaxSingleComponentFormats                   = true
    filterMinmaxImageComponentMapping                    = true
    maxTimelineSemaphoreValueDifference                  = 18446744073709551615
    framebufferIntegerColorSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
        SAMPLE_COUNT_16_BIT

Device Extensions: count = 107
    VK_EXT_4444_formats                         : 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_clip_enable                    : extension revision 1
    VK_EXT_descriptor_indexing                  : extension revision 2
    VK_EXT_display_control                      : extension revision 1
    VK_EXT_extended_dynamic_state               : extension revision 1
    VK_EXT_extended_dynamic_state2              : extension revision 1
    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_host_query_reset                     : extension revision 1
    VK_EXT_image_drm_format_modifier            : extension revision 1
    VK_EXT_image_robustness                     : extension revision 1
    VK_EXT_index_type_uint8                     : extension revision 1
    VK_EXT_inline_uniform_block                 : extension revision 1
    VK_EXT_line_rasterization                   : extension revision 1
    VK_EXT_memory_budget                        : extension revision 1
    VK_EXT_multi_draw                           : 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_post_depth_coverage                  : 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_demote_to_helper_invocation   : 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_texel_buffer_alignment               : extension revision 1
    VK_EXT_transform_feedback                   : extension revision 1
    VK_EXT_vertex_attribute_divisor             : extension revision 3
    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_performance_query                  : extension revision 2
    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_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_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_get_memory_requirements2             : 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_maintenance1                         : extension revision 2
    VK_KHR_maintenance2                         : extension revision 1
    VK_KHR_maintenance3                         : extension revision 1
    VK_KHR_multiview                            : extension revision 1
    VK_KHR_performance_query                    : extension revision 1
    VK_KHR_pipeline_executable_properties       : 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_float16_int8                  : extension revision 1
    VK_KHR_shader_float_controls                : extension revision 4
    VK_KHR_shader_non_semantic_info             : extension revision 1
    VK_KHR_shader_subgroup_extended_types       : extension revision 1
    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_timeline_semaphore                   : extension revision 2
    VK_KHR_uniform_buffer_standard_layout       : extension revision 1
    VK_KHR_variable_pointers                    : 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_NV_compute_shader_derivatives            : extension revision 1

VkQueueFamilyProperties:
========================
    queueProperties[0]:
    ------------------
        minImageTransferGranularity = (1,1,1)
        queueCount                  = 1
        queueFlags                  = QUEUE_GRAPHICS | QUEUE_COMPUTE | QUEUE_TRANSFER
        timestampValidBits          = 36
        present support:
            VK_KHR_xcb_surface  = true
            VK_KHR_xlib_surface = true

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 1
    memoryHeaps[0]:
        size   = 25121952768 (0x5d9629400) (23.40 GiB)
        budget = 17444110336
        usage  = 0
        flags:
            MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 1
    memoryTypes[0]:
        heapIndex     = 0
        propertyFlags = 0x000f:
            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                  = 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

VkPhysicalDevice16BitStorageFeatures:
-------------------------------------
    storageBuffer16BitAccess           = true
    uniformAndStorageBuffer16BitAccess = true
    storagePushConstant16              = true
    storageInputOutput16               = false

VkPhysicalDevice8BitStorageFeatures:
------------------------------------
    storageBuffer8BitAccess           = true
    uniformAndStorageBuffer8BitAccess = true
    storagePushConstant8              = true

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

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

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

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

VkPhysicalDeviceDescriptorIndexingFeatures:
-------------------------------------------
    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

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

VkPhysicalDeviceHostQueryResetFeatures:
---------------------------------------
    hostQueryReset = true

VkPhysicalDeviceImagelessFramebufferFeatures:
---------------------------------------------
    imagelessFramebuffer = true

VkPhysicalDeviceIndexTypeUint8FeaturesEXT:
------------------------------------------
    indexTypeUint8 = true

VkPhysicalDeviceInlineUniformBlockFeaturesEXT:
----------------------------------------------
    inlineUniformBlock                                 = true
    descriptorBindingInlineUniformBlockUpdateAfterBind = true

VkPhysicalDeviceLineRasterizationFeaturesEXT:
---------------------------------------------
    rectangularLines         = true
    bresenhamLines           = true
    smoothLines              = true
    stippledRectangularLines = false
    stippledBresenhamLines   = true
    stippledSmoothLines      = false

VkPhysicalDeviceMultiviewFeatures:
----------------------------------
    multiview                   = true
    multiviewGeometryShader     = true
    multiviewTessellationShader = true

VkPhysicalDevicePerformanceQueryFeaturesKHR:
--------------------------------------------
    performanceCounterQueryPools         = true
    performanceCounterMultipleQueryPools = false

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

VkPhysicalDeviceProtectedMemoryFeatures:
----------------------------------------
    protectedMemory = false

VkPhysicalDeviceSamplerYcbcrConversionFeatures:
-----------------------------------------------
    samplerYcbcrConversion = true

VkPhysicalDeviceScalarBlockLayoutFeatures:
------------------------------------------
    scalarBlockLayout = true

VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures:
----------------------------------------------------
    separateDepthStencilLayouts = true

VkPhysicalDeviceShaderAtomicInt64Features:
------------------------------------------
    shaderBufferInt64Atomics = true
    shaderSharedInt64Atomics = false

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

VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT:
----------------------------------------------------------
    shaderDemoteToHelperInvocation = true

VkPhysicalDeviceShaderDrawParametersFeatures:
---------------------------------------------
    shaderDrawParameters = true

VkPhysicalDeviceShaderFloat16Int8Features:
------------------------------------------
    shaderFloat16 = true
    shaderInt8    = true

VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures:
----------------------------------------------------
    shaderSubgroupExtendedTypes = true

VkPhysicalDeviceSubgroupSizeControlFeaturesEXT:
-----------------------------------------------
    subgroupSizeControl  = true
    computeFullSubgroups = true

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

VkPhysicalDeviceTimelineSemaphoreFeatures:
------------------------------------------
    timelineSemaphore = true

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

VkPhysicalDeviceUniformBufferStandardLayoutFeatures:
----------------------------------------------------
    uniformBufferStandardLayout = true

VkPhysicalDeviceVariablePointersFeatures:
-----------------------------------------
    variablePointersStorageBuffer = true
    variablePointers              = true

VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT:
--------------------------------------------------
    vertexAttributeInstanceRateDivisor     = true
    vertexAttributeInstanceRateZeroDivisor = 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

VkPhysicalDeviceVulkanMemoryModelFeatures:
------------------------------------------
    vulkanMemoryModel                             = true
    vulkanMemoryModelDeviceScope                  = true
    vulkanMemoryModelAvailabilityVisibilityChains = true

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

GPU1:
VkPhysicalDeviceProperties:
---------------------------
    apiVersion     = 4198582 (1.1.182)
    driverVersion  = 1 (0x0001)
    vendorID       = 0x10005
    deviceID       = 0x0000
    deviceType     = PHYSICAL_DEVICE_TYPE_CPU
    deviceName     = llvmpipe (LLVM 12.0.0, 256 bits)

VkPhysicalDeviceLimits:
-----------------------
    maxImageDimension1D                             = 16384
    maxImageDimension2D                             = 16384
    maxImageDimension3D                             = 4096
    maxImageDimensionCube                           = 32768
    maxImageArrayLayers                             = 2048
    maxTexelBufferElements                          = 134217728
    maxUniformBufferRange                           = 65536
    maxStorageBufferRange                           = 134217728
    maxPushConstantsSize                            = 128
    maxMemoryAllocationCount                        = 4294967295
    maxSamplerAllocationCount                       = 32768
    bufferImageGranularity                          = 0x00000040
    sparseAddressSpaceSize                          = 0x00000000
    maxBoundDescriptorSets                          = 8
    maxPerStageDescriptorSamplers                   = 32
    maxPerStageDescriptorUniformBuffers             = 15
    maxPerStageDescriptorStorageBuffers             = 16
    maxPerStageDescriptorSampledImages              = 128
    maxPerStageDescriptorStorageImages              = 16
    maxPerStageDescriptorInputAttachments           = 8
    maxPerStageResources                            = 128
    maxDescriptorSetSamplers                        = 32768
    maxDescriptorSetUniformBuffers                  = 256
    maxDescriptorSetUniformBuffersDynamic           = 256
    maxDescriptorSetStorageBuffers                  = 256
    maxDescriptorSetStorageBuffersDynamic           = 256
    maxDescriptorSetSampledImages                   = 256
    maxDescriptorSetStorageImages                   = 256
    maxDescriptorSetInputAttachments                = 256
    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              = 8
    maxComputeSharedMemorySize                      = 32768
    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
        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:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    framebufferDepthSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    framebufferStencilSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    framebufferNoAttachmentsSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    maxColorAttachments                             = 8
    sampledImageColorSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    sampledImageIntegerSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    sampledImageDepthSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    sampledImageStencilSampleCounts:
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_4_BIT
    storageImageSampleCounts:
        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
        255
    lineWidthRange: count = 2
        1
        255
    pointSizeGranularity                            = 0.125
    lineWidthGranularity                            = 0.0078125
    strictLines                                     = true
    standardSampleLocations                         = true
    optimalBufferCopyOffsetAlignment                = 0x00000080
    optimalBufferCopyRowPitchAlignment              = 0x00000080
    nonCoherentAtomSize                             = 0x00000040

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

VkPhysicalDeviceDriverPropertiesKHR:
------------------------------------
    driverID           = UNKNOWN_VkDriverId
    driverName         = llvmpipe
    driverInfo         = Mesa 21.2.6 (LLVM 12.0.0)
    conformanceVersion = 1.0.0.0

VkPhysicalDeviceIDProperties:
-----------------------------
    deviceUUID      = 00000000-0000-0000-0000-000000000000
    driverUUID      = 00000000-0000-0000-0000-000000000000
    deviceNodeMask  = 0
    deviceLUIDValid = false

VkPhysicalDeviceLineRasterizationPropertiesEXT:
-----------------------------------------------
    lineSubPixelPrecisionBits = 8

VkPhysicalDeviceMaintenance3Properties:
---------------------------------------
    maxPerSetDescriptors    = 1024
    maxMemoryAllocationSize = 0x80000000

VkPhysicalDeviceMultiviewProperties:
------------------------------------
    maxMultiviewViewCount     = 6
    maxMultiviewInstanceIndex = 2147483647

VkPhysicalDevicePointClippingProperties:
----------------------------------------
    pointClippingBehavior = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES

VkPhysicalDeviceProtectedMemoryProperties:
------------------------------------------
    protectedNoFault = false

VkPhysicalDevicePushDescriptorPropertiesKHR:
--------------------------------------------
    maxPushDescriptors = 32

VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT:
-------------------------------------------------
    filterMinmaxSingleComponentFormats = true
    filterMinmaxImageComponentMapping  = true

VkPhysicalDeviceSubgroupProperties:
-----------------------------------
    subgroupSize              = 8
    supportedStages:
        SHADER_STAGE_FRAGMENT_BIT
        SHADER_STAGE_COMPUTE_BIT
        SHADER_STAGE_ALL_GRAPHICS
        SHADER_STAGE_ALL
    supportedOperations:
        SUBGROUP_FEATURE_BASIC_BIT
        SUBGROUP_FEATURE_VOTE_BIT
        SUBGROUP_FEATURE_ARITHMETIC_BIT
        SUBGROUP_FEATURE_BALLOT_BIT
    quadOperationsInAllStages = false

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

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

Device Extensions: count = 54
------------------
    VK_EXT_calibrated_timestamps          : extension revision 2
    VK_EXT_conditional_rendering          : extension revision 2
    VK_EXT_custom_border_color            : extension revision 12
    VK_EXT_extended_dynamic_state         : extension revision 1
    VK_EXT_extended_dynamic_state2        : extension revision 1
    VK_EXT_host_query_reset               : extension revision 1
    VK_EXT_index_type_uint8               : extension revision 1
    VK_EXT_line_rasterization             : extension revision 1
    VK_EXT_multi_draw                     : extension revision 1
    VK_EXT_post_depth_coverage            : extension revision 1
    VK_EXT_private_data                   : extension revision 1
    VK_EXT_provoking_vertex               : 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_stencil_export          : extension revision 1
    VK_EXT_shader_viewport_index_layer    : 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_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_bind_memory2                   : extension revision 1
    VK_KHR_buffer_device_address          : 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_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_external_fence                 : extension revision 1
    VK_KHR_external_memory                : extension revision 1
    VK_KHR_external_semaphore             : extension revision 1
    VK_KHR_get_memory_requirements2       : 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_maintenance1                   : extension revision 2
    VK_KHR_maintenance2                   : extension revision 1
    VK_KHR_maintenance3                   : extension revision 1
    VK_KHR_multiview                      : 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_separate_depth_stencil_layouts : extension revision 1
    VK_KHR_shader_atomic_int64            : extension revision 1
    VK_KHR_shader_draw_parameters         : extension revision 1
    VK_KHR_storage_buffer_storage_class   : extension revision 1
    VK_KHR_swapchain                      : extension revision 70
    VK_KHR_uniform_buffer_standard_layout : extension revision 1
    VK_KHR_variable_pointers              : extension revision 1

VkQueueFamilyProperties:
========================
    queueProperties[0]:
    ------------------
        minImageTransferGranularity = (1,1,1)
        queueCount                  = 1
        queueFlags                  = QUEUE_GRAPHICS | QUEUE_COMPUTE | QUEUE_TRANSFER
        timestampValidBits          = 64
        present support:
            VK_KHR_xcb_surface  = true
            VK_KHR_xlib_surface = true

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 1
    memoryHeaps[0]:
        size   = 2147483648 (0x80000000) (2.00 GiB)
        budget = 0
        usage  = 0
        flags:
            MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 1
    memoryTypes[0]:
        heapIndex     = 0
        propertyFlags = 0x000f:
            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                       = false
    textureCompressionETC2                  = false
    textureCompressionASTC_LDR              = false
    textureCompressionBC                    = true
    occlusionQueryPrecise                   = true
    pipelineStatisticsQuery                 = true
    vertexPipelineStoresAndAtomics          = true
    fragmentStoresAndAtomics                = true
    shaderTessellationAndGeometryPointSize  = true
    shaderImageGatherExtended               = true
    shaderStorageImageExtendedFormats       = true
    shaderStorageImageMultisample           = true
    shaderStorageImageReadWithoutFormat     = false
    shaderStorageImageWriteWithoutFormat    = true
    shaderUniformBufferArrayDynamicIndexing = false
    shaderSampledImageArrayDynamicIndexing  = false
    shaderStorageBufferArrayDynamicIndexing = false
    shaderStorageImageArrayDynamicIndexing  = false
    shaderClipDistance                      = true
    shaderCullDistance                      = true
    shaderFloat64                           = true
    shaderInt64                             = true
    shaderInt16                             = true
    shaderResourceResidency                 = false
    shaderResourceMinLod                    = false
    sparseBinding                           = false
    sparseResidencyBuffer                   = false
    sparseResidencyImage2D                  = false
    sparseResidencyImage3D                  = false
    sparseResidency2Samples                 = false
    sparseResidency4Samples                 = false
    sparseResidency8Samples                 = false
    sparseResidency16Samples                = false
    sparseResidencyAliased                  = false
    variableMultisampleRate                 = false
    inheritedQueries                        = false

VkPhysicalDevice16BitStorageFeatures:
-------------------------------------
    storageBuffer16BitAccess           = true
    uniformAndStorageBuffer16BitAccess = true
    storagePushConstant16              = true
    storageInputOutput16               = false

VkPhysicalDevice8BitStorageFeaturesKHR:
---------------------------------------
    storageBuffer8BitAccess           = true
    uniformAndStorageBuffer8BitAccess = true
    storagePushConstant8              = true

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

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

VkPhysicalDeviceHostQueryResetFeaturesEXT:
------------------------------------------
    hostQueryReset = true

VkPhysicalDeviceImagelessFramebufferFeaturesKHR:
------------------------------------------------
    imagelessFramebuffer = true

VkPhysicalDeviceIndexTypeUint8FeaturesEXT:
------------------------------------------
    indexTypeUint8 = true

VkPhysicalDeviceLineRasterizationFeaturesEXT:
---------------------------------------------
    rectangularLines         = true
    bresenhamLines           = true
    smoothLines              = true
    stippledRectangularLines = true
    stippledBresenhamLines   = true
    stippledSmoothLines      = true

VkPhysicalDeviceMultiviewFeatures:
----------------------------------
    multiview                   = true
    multiviewGeometryShader     = true
    multiviewTessellationShader = true

VkPhysicalDeviceProtectedMemoryFeatures:
----------------------------------------
    protectedMemory = false

VkPhysicalDeviceSamplerYcbcrConversionFeatures:
-----------------------------------------------
    samplerYcbcrConversion = false

VkPhysicalDeviceScalarBlockLayoutFeaturesEXT:
---------------------------------------------
    scalarBlockLayout = true

VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR:
-------------------------------------------------------
    separateDepthStencilLayouts = true

VkPhysicalDeviceShaderAtomicInt64FeaturesKHR:
---------------------------------------------
    shaderBufferInt64Atomics = true
    shaderSharedInt64Atomics = true

VkPhysicalDeviceShaderDrawParametersFeatures:
---------------------------------------------
    shaderDrawParameters = true

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

VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR:
-------------------------------------------------------
    uniformBufferStandardLayout = true

VkPhysicalDeviceVariablePointersFeatures:
-----------------------------------------
    variablePointersStorageBuffer = true
    variablePointers              = false

VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT:
--------------------------------------------------
    vertexAttributeInstanceRateDivisor     = true
    vertexAttributeInstanceRateZeroDivisor = false

stalkerg commented 2 months ago

@Isinlor thank you! I will look into.

eyelash commented 2 months ago

This looks like a duplicate of

vblanton commented 2 months ago

I can confirm the same issue here. However, my logs are a bit different

~/.local/zed.app/bin$ ./zed --foreground
[2024-07-12T15:09:32+02:00 ERROR blade_graphics::hal::init] No composite alpha flag for transparency: INHERIT
[2024-07-12T15:09:32+02:00 ERROR blade_graphics::hal::init] Surface formats are incompatible: [SurfaceFormatKHR { format: B8G8R8A8_UNORM, color_space: SRGB_NONLINEAR }]

System Info: Razer Blade 15 Advanced Model Early 2021 - RZ09-036 Ubuntu 24.04 LTS. Intel® Core™ i7-10875H × 16 Linux 6.8.0-38-generic Wayland Intel® UHD Graphics (CML GT2) NVIDIA GeForce RTX 3070 Laptop GPU

Edit: no vulkan-intel package on ubuntu. Tried installing "mesa-vulkan-drivers" instead, but no luck there.

rebootl commented 2 months ago

I can confirm installing vulkan-intel fixed the issue for me. Oops mb :)

JosephTLyons commented 2 months ago

Hey @Isinlor, are you able to tell if the issue you are experiencing is the same as:

Thanks, just trying to keep everything together.

Isinlor commented 2 months ago

Yes, it looks about the same.

vblanton commented 2 months ago

I found a different fix for me. Switching my nvidia PRIME profile to "on-demand" (it was on performance mode) fixed the issue for me. I tested it twice by switching the profiles back and forth and rebooting.

image

stalkerg commented 2 months ago

@Isinlor you driver doesn't support KHR_DYNAMIC_RENDERING which from Vulkan 1.3 and needed for Blade - https://github.com/kvark/blade/blob/1910e28e16926608425418d4606388c937c405b6/blade-graphics/src/vulkan/init.rs#L24C9-L24C30

And it's have sense because in your logs Vulkan Instance Version: 1.2.131. You should update drivers, but in your case will be simpler install ubuntu 24.04.

stalkerg commented 2 months ago

Okey, ANV Intel driver start support it in 2022 https://gitlab.freedesktop.org/mesa/mesa/-/commit/61ece8f6a49db58a76c2b6e825964675decc5d83 it should be part of ANV (Skylake and upper) and hasvk (haswell, brodwell)

AshutoshSajan commented 2 months ago

same issue with NoSupportedDeviceFound error image

stalkerg commented 2 months ago

@AshutoshSajan yeah 20.04 just too old for Vulkan 1.3 without extra hack like stuff. Basically the same for Steam Proton and modern games.

rsilvr commented 2 months ago

I found a different fix for me. Switching my nvidia PRIME profile to "on-demand" (it was on performance mode) fixed the issue for me. I tested it twice by switching the profiles back and forth and rebooting.

image

This was exactly was causing my Zed installation to not open at all. Also, one interesting fact: using sudo I was able to make it work as well.

My Zed.log in an unsuccessful attempt:

2024-07-13T19:24:36-03:00 [INFO] ========== starting zed ==========
2024-07-13T19:24:36-03:00 [INFO] perform;
2024-07-13T19:24:36-03:00 [INFO] read_command;
2024-07-13T19:24:36-03:00 [INFO] read_command;
2024-07-13T19:24:36-03:00 [INFO] Opening main db
2024-07-13T19:24:36-03:00 [INFO] socket reader;
2024-07-13T19:24:36-03:00 [INFO] new;
2024-07-13T19:24:36-03:00 [INFO] Using git binary path: None
2024-07-13T19:24:36-03:00 [INFO] keep_updated;
2024-07-13T19:24:36-03:00 [INFO] set environment variables from shell:/usr/bin/fish, path:/home/silvr/.fvm_flutter/bin:/usr/local/bin:/home/silvr/.puro/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/silvr/n/bin
2024-07-13T19:24:36-03:00 [INFO] activate is not implemented on Linux, ignoring the call
2024-07-13T19:24:36-03:00 [INFO] Opening main db
2024-07-13T19:24:36-03:00 [INFO] perform;
2024-07-13T19:24:36-03:00 [INFO] read_command;
2024-07-13T19:24:36-03:00 [INFO] read_command;
2024-07-13T19:24:36-03:00 [INFO] socket reader;
2024-07-13T19:24:36-03:00 [INFO] Enabling Vulkan Portability
2024-07-13T19:24:36-03:00 [INFO] Enabling color space support
2024-07-13T19:24:36-03:00 [WARN] Rejecting Intel for not presenting when Nvidia is present (on Linux)
2024-07-13T19:24:36-03:00 [INFO] Adapter "NVIDIA GeForce 940MX"
2024-07-13T19:24:36-03:00 [INFO] No ray tracing extensions are supported
2024-07-13T19:24:36-03:00 [ERROR] No composite alpha flag for transparency: INHERIT
2024-07-13T19:24:36-03:00 [INFO] Using surface present mode MAILBOX
2024-07-13T19:24:36-03:00 [ERROR] Surface formats are incompatible: [SurfaceFormatKHR { format: B8G8R8A8_UNORM, color_space: SRGB_NONLINEAR }]
2024-07-13T19:24:36-03:00 [WARN] Unable to forbid exclusive full screen
noteeshii commented 2 months ago

My problems were solved after I upgraded the version of OpenGL + Mesa and Vulkan Also i put dev.i915.perf_stream_paranoid=0 at the end of /etc/sysctl.conf Now im using: OpenGL core profile version string: 4.6 (Core Profile) Mesa 24.1.3 - kisak-mesa PPA Vulkan version 1.3.283 Ubuntu 20.04

marcellourbani commented 3 weeks ago

Same issue in arch with wayland. Works if ran under sudo vkcube works without sudo