mesa/src/vulkan/runtime
Konstantin Seurer 077292f65b
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
radv/bvh: Use box16 nodes when bvh8 is not used
Using box16 nodes trades bvh quality for memory bandwidth which seems to
be roughly equal in performance.

Stats assuming box16 nodes are as expensive as box32 nodes:
Totals from 7668 (79.68% of 9624) affected BVHs:
compacted_size: 951666944 -> 742347648 (-22.00%)
max_depth: 57606 -> 57615 (+0.02%)
sah: 129114796242 -> 129998517775 (+0.68%); split: -0.00%, +0.68%
scene_sah: 188564162 -> 192063633 (+1.86%); split: -0.02%, +1.88%
box16_node_count: 0 -> 3270600 (+inf%)
box32_node_count: 3365707 -> 95100 (-97.17%)

Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37883>
2026-01-10 11:36:28 +01:00
..
bvh radv/bvh: Use box16 nodes when bvh8 is not used 2026-01-10 11:36:28 +01:00
radix_sort vulkan/radix_sort: Fix subgroup invocation id 2025-08-12 18:39:20 +00:00
rmv treewide: use UTIL_DYNARRAY_INIT 2025-11-04 13:39:48 +00:00
meson.build meson: only require glslang >= 12.2 when anv/radv/turnip are built 2025-09-18 19:07:10 +00:00
vk_acceleration_structure.c radv,vulkan: Avoid a useless barrier in radv_update_bind_pipeline 2025-09-10 08:35:50 +00:00
vk_acceleration_structure.h vulkan: Bump MAX_ENCODE_PASSES to 4 2025-10-21 19:32:54 +00:00
vk_android.c vulkan/android: Add rp_attachment_has_external_format helper 2025-10-09 18:42:13 +00:00
vk_android.h vulkan/android: Add rp_attachment_has_external_format helper 2025-10-09 18:42:13 +00:00
vk_blend.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_blend.h
vk_buffer.c vulkan: Add device address helpers to vk_buffer 2025-03-06 09:46:00 +00:00
vk_buffer.h vulkan: Relax bda assert for zero-size buffers 2025-03-12 01:09:54 +00:00
vk_buffer_view.c
vk_buffer_view.h
vk_cmd_copy.c
vk_cmd_enqueue.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_command_buffer.c treewide: use UTIL_DYNARRAY_INIT 2025-11-04 13:39:48 +00:00
vk_command_buffer.h vulkan: Add MESA_VK_SHADER_STAGE_ALL 2025-08-07 20:46:24 +00:00
vk_command_pool.c
vk_command_pool.h
vk_debug_report.c
vk_debug_report.h
vk_debug_utils.c util/dynarray: infer type in append 2025-10-24 18:32:07 +00:00
vk_debug_utils.h
vk_deferred_operation.c
vk_deferred_operation.h
vk_descriptor_set_layout.c
vk_descriptor_set_layout.h vulkan: use p_atomic_read on vk_descriptor_set_layout::ref_cnt 2025-08-08 10:26:52 +00:00
vk_descriptor_update_template.c
vk_descriptor_update_template.h
vk_descriptors.c
vk_descriptors.h
vk_device.c vulkan/runtime: silence a -Wsometimes-uninitialized warning 2025-08-26 17:24:08 +00:00
vk_device.h vulkan/drm_syncobj: Add a vk_drm_syncobj_copy_payloads helper 2025-08-22 23:05:00 +00:00
vk_device_generated_commands.c
vk_device_generated_commands.h
vk_device_memory.c vulkan: #if DETECT_OS_ANDROID --> #if defined(VK_USE_PLATFORM_ANDROID_KHR) 2025-08-22 16:09:38 +00:00
vk_device_memory.h
vk_drm_syncobj.c vulkan/drm-syncobj: Stop returning early waiting for sync files 2025-11-25 06:08:07 +00:00
vk_drm_syncobj.h vulkan/drm_syncobj: Add a vk_drm_syncobj_copy_payloads helper 2025-08-22 23:05:00 +00:00
vk_fence.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_fence.h
vk_format_info_gen.py build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_framebuffer.c
vk_framebuffer.h
vk_graphics_state.c vulkan: add support for vkCustomResolveCreateInfoEXT 2025-11-18 17:03:13 +00:00
vk_graphics_state.h treewide: use BITSET_*_COUNT 2025-12-16 17:42:10 +00:00
vk_image.c docs: update/fix vk spec urls 2025-10-22 09:23:34 +02:00
vk_image.h vulkan: Drop the driver_internal from vk_image_view_init/create() 2025-09-05 23:34:14 +00:00
vk_instance.c vk/runtime,zink: only integrate renderdoc on supported platforms 2026-01-07 09:08:46 +00:00
vk_instance.h vk/runtime,zink: only integrate renderdoc on supported platforms 2026-01-07 09:08:46 +00:00
vk_limits.h vulkan: increase MESA_VK_MAX_DISCARD_RECTANGLES 2025-10-21 23:17:38 +00:00
vk_log.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_log.h
vk_meta.c panvk, vk/meta: Move D/S sanitizing to panvk 2025-09-30 13:14:18 +00:00
vk_meta.h vulkan/util: add vk_topology_to_mesa helper function 2025-09-03 22:04:14 -07:00
vk_meta_blit_resolve.c vulkan/meta: Handle VkResolveImageModeInfoKHR 2025-10-27 16:19:43 -04:00
vk_meta_clear.c vulkan/meta: Always set VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA 2025-09-05 23:34:11 +00:00
vk_meta_copy_fill_update.c treewide: use nir_store_global alias of nir_build_store_global 2025-10-21 12:37:58 +02:00
vk_meta_draw_rects.c
vk_meta_object_list.c treewide: use UTIL_DYNARRAY_INIT 2025-11-04 13:39:48 +00:00
vk_meta_object_list.h util/dynarray: infer type in append 2025-10-24 18:32:07 +00:00
vk_meta_private.h build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_nir.c nir: give nir_lower_clip_cull_distance_array_vars a better name 2025-12-10 05:16:34 +00:00
vk_nir.h shader_info: remove gl_subgroup_size enum 2025-09-12 21:05:17 +00:00
vk_nir_convert_ycbcr.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_nir_convert_ycbcr.h
vk_object.c vulkan: handle wsi private data properly 2025-09-01 05:44:40 +00:00
vk_object.h
vk_physical_device.c
vk_physical_device.h
vk_pipeline.c vulkan/runtime: include unaligned dispatch bit in hashing 2025-12-10 07:44:31 +00:00
vk_pipeline.h vulkan/runtime: simplify robustness state hashing 2025-11-06 15:27:19 +00:00
vk_pipeline_cache.c
vk_pipeline_cache.h
vk_pipeline_layout.c vulkan/runtime: track dynamics descriptor in a set layout 2025-05-08 11:22:55 +00:00
vk_pipeline_layout.h vulkan/runtime: track dynamics descriptor in a set layout 2025-05-08 11:22:55 +00:00
vk_query_pool.c vulkan/query_pool: Store video encode feedback 2025-10-14 09:11:25 +00:00
vk_query_pool.h vulkan/query_pool: Store video encode feedback 2025-10-14 09:11:25 +00:00
vk_queue.c treewide: use UTIL_DYNARRAY_INIT 2025-11-04 13:39:48 +00:00
vk_queue.h vulkan,anv,hasvk: Drop vk_queue_wait_before_present() 2025-08-22 23:05:02 +00:00
vk_render_pass.c radv,vulkan: replace VK_RENDERING_INPUT_ATTACHMENT_NO_CONCURRENT_WRITES_BIT_MESA 2025-10-31 07:51:23 +00:00
vk_render_pass.h vulkan/meta: Handle VK_RENDERING_ATTACHMENT_RESOLVE_SKIP_TRANSFER_FUNCTION_BIT 2025-10-27 16:19:43 -04:00
vk_sampler.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_sampler.h vulkan/runtime: add vk_sampler_{init,finish}() helpers 2025-07-01 08:54:04 +02:00
vk_semaphore.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_semaphore.h
vk_shader.c util: increase SHA1_DIGEST_LENGTH to 32 (BLAKE3_KEY_LEN) 2026-01-07 08:32:33 +00:00
vk_shader.h vulkan/runtime: track dynamic descriptor offsets for RT pipelines 2025-12-02 13:25:20 +00:00
vk_shader_module.c
vk_shader_module.h
vk_standard_sample_locations.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_standard_sample_locations.h
vk_sync.c vulkan: Add a vk_sync_signal_unwrap() helper 2025-08-22 23:05:00 +00:00
vk_sync.h vulkan: Add a vk_sync_signal_unwrap() helper 2025-08-22 23:05:00 +00:00
vk_sync_binary.c
vk_sync_binary.h
vk_sync_dummy.c
vk_sync_dummy.h
vk_sync_timeline.c vulkan/sync: Return early in vk_sync_timeline_wait() if wait_value == 0 2025-08-22 23:04:56 +00:00
vk_sync_timeline.h vulkan: don't destroy vk_sync_timeline if a point is still pending 2025-07-24 18:49:02 -03:00
vk_synchronization.c vulkan: Add vk_collect_dependency_info_src_stages 2025-10-22 19:22:17 +00:00
vk_synchronization.h vulkan: Add vk_collect_dependency_info_src_stages 2025-10-22 19:22:17 +00:00
vk_texcompress_astc.c build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_texcompress_astc.h
vk_texcompress_etc2.c vulkan/runtime: fix memleak when creating ETC pipelines 2025-10-14 06:54:02 +00:00
vk_texcompress_etc2.h build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
vk_video.c vulkan/video: Fix H.265 long-term reference handling 2025-11-24 12:58:02 +00:00
vk_video.h vulkan/video: Fix H.265 long-term reference handling 2025-11-24 12:58:02 +00:00
vk_ycbcr_conversion.c
vk_ycbcr_conversion.h vulkan: Add a vk_sampler_state struct 2025-06-19 15:45:08 +00:00