ogl_beamforming

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

Commit: f6bede1722dc79ea716c82ba9c5450403afd3bd8
Parent: 8a0b3f2f8e4b99c5e0c28dfcaaeda0b61c077596
Author: Randy Palamar
Date:   Tue, 10 Jun 2025 11:48:08 -0600

lib: actually commit the library code that does the coalescing

Diffstat:
Mhelpers/ogl_beamformer_lib.c | 5++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/helpers/ogl_beamformer_lib.c b/helpers/ogl_beamformer_lib.c @@ -294,7 +294,10 @@ beamformer_upload_buffer(void *data, u32 size, i32 store_offset, BeamformerShare work->type = BW_UPLOAD_BUFFER; work->lock = lock; mem_copy((u8 *)g_bp + store_offset, data, size); - beamform_work_queue_push_commit(&g_bp->external_work_queue); + if ((atomic_load_u32(&g_bp->dirty_regions) & (1 << (lock - 1))) == 0) { + atomic_or_u32(&g_bp->dirty_regions, (1 << (lock - 1))); + beamform_work_queue_push_commit(&g_bp->external_work_queue); + } lib_release_lock(lock); } }