On a Jetson Orin 64GB Dev Kit with jetpack 6 and jetson linux 36.2, the ray_queries sample on GitHub - KhronosGroup/Vulkan-Samples: One stop solution for all Vulkan samples fails with
~/Vulkan-Samples$ ./build/linux/app/bin/Release/aarch64/vulkan_samples sample ray_queries
[info] Logger initialized
[info] Initializing Vulkan sample
[info] Vulkan debug utils enabled (VK_EXT_debug_utils)
[info] Extension VK_KHR_get_physical_device_properties2 found, enabling it
[info] Extension VK_EXT_debug_utils found, enabling it
[info] Extension VK_KHR_xcb_surface found, enabling it
[info] Enabled Validation Layers:
[info] Found GPU: NVIDIA Tegra Orin (nvgpu)
[warning] Couldn't find a discrete physical device, picking default GPU
[info] Selected GPU: NVIDIA Tegra Orin (nvgpu)
[info] Dedicated Allocation enabled
[info] Device supports the following requested extensions:
[info] VK_KHR_get_memory_requirements2
[info] VK_KHR_dedicated_allocation
[info] VK_KHR_swapchain
[info] VK_KHR_shader_float_controls
[info] VK_KHR_spirv_1_4
[info] VK_KHR_deferred_host_operations
[info] VK_KHR_buffer_device_address
[info] VK_EXT_descriptor_indexing
[info] VK_KHR_acceleration_structure
[info] VK_KHR_ray_query
[error] [framework/platform/platform.cpp:169] Error Message: Cannot create device : ERROR_INITIALIZATION_FAILED
[error] [framework/platform/platform.cpp:170] Failed when running application ray_queries
Press return to continue
Tried commenting out the lines 82, 84 and 115-119 in the file ray_queries.cpp. link: Vulkan-Samples/samples/extensions/ray_queries/ray_queries.cpp at main · KhronosGroup/Vulkan-Samples · GitHub
081. set_api_version(VK_API_VERSION_1_1);
082. add_device_extension(VK_KHR_RAY_QUERY_EXTENSION_NAME);
083.
084. // Ray tracing related extensions required by this sample
085. add_device_extension(VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME);
.
.
.
115. RequestFeature(gpu)
116. .request(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, &VkPhysicalDeviceBufferDeviceAddressFeatures::bufferDeviceAddress)
117. .request(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, &VkPhysicalDeviceAccelerationStructureFeaturesKHR::accelerationStructure)
118. .request(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, &VkPhysicalDeviceRayQueryFeaturesKHR::rayQuery)
119. .request(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, &VkPhysicalDeviceRayTracingPipelineFeaturesKHR::rayTracingPipeline);
This way we are able to pass the device creation phase:
~/Vulkan-Samples$ ./build/linux/app/bin/Release/aarch64/vulkan_samples sample ray_queries
[info] Logger initialized
[info] Initializing Vulkan sample
[info] Vulkan debug utils enabled (VK_EXT_debug_utils)
[info] Extension VK_EXT_debug_utils found, enabling it
[info] Extension VK_KHR_get_physical_device_properties2 found, enabling it
[info] Extension VK_KHR_xcb_surface found, enabling it
[info] Found GPU: NVIDIA Tegra Orin (nvgpu)
[warning] Couldn't find a discrete physical device, picking default GPU
[info] Selected GPU: NVIDIA Tegra Orin (nvgpu)
[info] Dedicated Allocation enabled
[info] Device supports the following requested extensions:
[info] VK_KHR_get_memory_requirements2
[info] VK_KHR_dedicated_allocation
[info] VK_KHR_swapchain
[info] VK_KHR_shader_float_controls
[info] VK_KHR_spirv_1_4
[info] VK_KHR_deferred_host_operations
[info] VK_EXT_descriptor_indexing
[info] VK_KHR_buffer_device_address
[info] Surface supports the following surface formats:
[info] VK_FORMAT_B8G8R8A8_UNORM, VK_COLORSPACE_SRGB_NONLINEAR_KHR
[info] VK_FORMAT_B8G8R8A8_SRGB, VK_COLORSPACE_SRGB_NONLINEAR_KHR
[info] Surface supports the following present modes:
[info] VK_PRESENT_MODE_FIFO_KHR
[info] VK_PRESENT_MODE_FIFO_RELAXED_KHR
[info] VK_PRESENT_MODE_IMMEDIATE_KHR
[warning] (Swapchain) Image extent (0, 0) not supported. Selecting (1280, 720).
[warning] (Swapchain) Surface format (VK_FORMAT_UNDEFINED, VK_COLORSPACE_SRGB_NONLINEAR_KHR) not supported. Selecting (VK_FORMAT_B8G8R8A8_SRGB, VK_COLORSPACE_SRGB_NONLINEAR_KHR).
[info] (Swapchain) Image usage flags: VK_IMAGE_USAGE_TRANSFER_SRC_BIT VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
[warning] (Swapchain) Composite alpha 'VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR' not supported. Selecting 'VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR.
[warning] (Swapchain) Present mode 'VK_PRESENT_MODE_MAILBOX_KHR' not supported. Selecting 'VK_PRESENT_MODE_FIFO_KHR'.
[info] (Swapchain) Surface format selected: VK_FORMAT_B8G8R8A8_SRGB, VK_COLORSPACE_SRGB_NONLINEAR_KHR
[info] Depth format selected: VK_FORMAT_D32_SFLOAT
[info] Depth format selected: VK_FORMAT_D32_SFLOAT
[info] Depth format selected: VK_FORMAT_D32_SFLOAT
[info] Depth format selected: VK_FORMAT_D32_SFLOAT
[info] glTF file contains extension: KHR_lights_punctual
[info] Loaded gltf image #3 (sponza_thorn_diff.ktx)
[info] Loaded gltf image #11 (sponza_floor_a_diff.ktx)
[info] Loaded gltf image #9 (sponza_column_c_diff.ktx)
[info] Loaded gltf image #4 (vase_plant.ktx)
[info] Loaded gltf image #2 (background.ktx)
[info] Loaded gltf image #10 (sponza_details_diff.ktx)
[info] Loaded gltf image #0 (sponza_flagpole_diff.ktx)
[info] Loaded gltf image #1 (lion.ktx)
[info] Loaded gltf image #13 (vase_dif.ktx)
[info] Loaded gltf image #17 (chain_texture.ktx)
[info] Loaded gltf image #5 (spnza_bricks_a_diff.ktx)
[info] Loaded gltf image #12 (sponza_column_b_diff.ktx)
[info] Loaded gltf image #8 (sponza_arch_diff.ktx)
[info] Loaded gltf image #7 (sponza_column_a_diff.ktx)
[info] Loaded gltf image #16 (vase_round.ktx)
[info] Loaded gltf image #15 (vase_hanging.ktx)
[info] Loaded gltf image #14 (spnza_bricks_a_diff.ktx)
[info] Loaded gltf image #21 (sponza_fabric_green_diff.ktx)
[info] Loaded gltf image #6 (sponza_ceiling_a_diff.ktx)
[info] Loaded gltf image #23 (sponza_fabric_diff.ktx)
[info] Loaded gltf image #24 (sponza_roof_diff.ktx)
[info] Loaded gltf image #22 (sponza_fabric_blue_diff.ktx)
[info] Loaded gltf image #19 (sponza_curtain_diff.ktx)
[info] Loaded gltf image #18 (sponza_curtain_blue_diff.ktx)
[info] Loaded gltf image #20 (sponza_curtain_green_diff.ktx)
[info] Time spent loading images: 0.019900 seconds across 12 threads.
[error] [framework/platform/platform.cpp:169] Error Message: Cannot create Buffer : ERROR_VALIDATION_FAILED_EXT
[error] [framework/platform/platform.cpp:170] Failed when running application ray_queries
[info] Total device memory leaked: 0 bytes.
Press return to continue
Now, both the VK_KHR_ray_query and VK_KHR_acceleration_structure is reported on vulkaninfo, but the vkCreateDevice call crashes when these extensions are requested. Can we get an update to the provided vulkan library and/or the driver?