On Wed, 7 Jun 2023 01:23:24 +0200 (CEST) Lynne <d...@lynne.ee> wrote:
> From eb74297de8662c9fa66cd719c6315567966afe56 Mon Sep 17 00:00:00 2001 > From: Lynne <d...@lynne.ee> > Date: Wed, 7 Jun 2023 01:16:29 +0200 > Subject: [PATCH 2/2] vulkan: discard dependencies when explicitly > waiting for execution > > This reduces memory needed dramatically, as unneeded resources > can be immediately returned to the pool. > Although waitforfences is threadsafe, we add a mutex wait around > it, as the mutex fence in combination with waitforfences assures > us that no other thread will reset the fence in the meanwhile > whilst the mutex is locked. This allows is to call > ff_vk_exec_discard_deps. > --- > libavutil/vulkan.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/libavutil/vulkan.c b/libavutil/vulkan.c > index 4b96c0c200..0cfe334db0 100644 > --- a/libavutil/vulkan.c > +++ b/libavutil/vulkan.c > @@ -480,7 +480,10 @@ FFVkExecContext *ff_vk_exec_get(FFVkExecPool > *pool) void ff_vk_exec_wait(FFVulkanContext *s, FFVkExecContext *e) > { > FFVulkanFunctions *vk = &s->vkfn; > + pthread_mutex_lock(&e->lock); > vk->WaitForFences(s->hwctx->act_dev, 1, &e->fence, VK_TRUE, > UINT64_MAX); > + ff_vk_exec_discard_deps(s, e); > + pthread_mutex_unlock(&e->lock); > } > > int ff_vk_exec_start(FFVulkanContext *s, FFVkExecContext *e) LGTM. --phil _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".