ogl_beamforming

Ultrasound Beamforming Implemented with OpenGL
git clone anongit@rnpnr.xyz:ogl_beamforming.git
Log | Files | Refs | Feed | Submodules | README | LICENSE

Commit: a092e5ef5bfa9cddb5ad89b07bc9051d32bc1564
Parent: 32e995451418d44882dea6cf6bc85172f35105f7
Author: Randy Palamar
Date:   Tue, 25 Aug 2026 18:08:17 -0700

vulkan: fix timestamp readback API correctness

I was looking at the specification for vkGetQueryPoolResults again
and I noticed that you are supposed to set a flag to get back 64
bit results. RADV correctly returns 32 bit results when this flag
isn't set even though the output stride is larger than 32 bits.
nVidia's official drivers seem to have a problem with this though
and it was resulting in a consitent strobing clear for the
timestamps on a 5080. Specifying this flag fixes the issue.

Diffstat:
Mvulkan.c | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vulkan.c b/vulkan.c @@ -2918,7 +2918,7 @@ gpu_read_timestamps(GPUTimeline timeline, u64 *count, Arena *arena) gpu_host_wait_timeline(timeline, vcp->last_submission_values[index], -1ULL); vkGetQueryPoolResults(vk->device, vcp->query_pool, index * MaxCommandBufferTimestamps, *count, - *count * sizeof(u64), result, 8, VK_QUERY_RESULT_WAIT_BIT); + *count * sizeof(u64), result, 8, VK_QUERY_RESULT_64_BIT|VK_QUERY_RESULT_WAIT_BIT); } } }