From cffd87fc798ac369dff85adcbd53b87330f72fb7 Mon Sep 17 00:00:00 2001 From: German Andryeyev Date: Mon, 22 Jan 2024 18:12:33 -0500 Subject: [PATCH] SWDEV-311271 - Move mempool clean-up into hipEventSynchronize Generic event synchronize can be called from mempool implementation directly. Change-Id: Id66ab9cdab486390df4dd405a4ac291eb0bb568f [ROCm/clr commit: 140a075b6acb49b517d2d42a78ae400d2ab89c6d] --- projects/clr/hipamd/src/hip_event.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/projects/clr/hipamd/src/hip_event.cpp b/projects/clr/hipamd/src/hip_event.cpp index d233e42438..f527766e4b 100644 --- a/projects/clr/hipamd/src/hip_event.cpp +++ b/projects/clr/hipamd/src/hip_event.cpp @@ -85,8 +85,6 @@ hipError_t Event::synchronize() { event_->awaitCompletion(); } } - // Release freed memory for all memory pools on the device - hip_device->ReleaseFreedMemory(); return hipSuccess; } @@ -443,7 +441,12 @@ hipError_t hipEventSynchronize(hipEvent_t event) { if (hip::Stream::StreamCaptureOngoing(e->GetCaptureStream()) == true) { HIP_RETURN(hipErrorStreamCaptureUnsupported); } - HIP_RETURN(e->synchronize()); + + hipError_t status = e->synchronize(); + // Release freed memory for all memory pools on the device + g_devices[e->deviceId()]->ReleaseFreedMemory(); + + HIP_RETURN(status); } hipError_t ihipEventQuery(hipEvent_t event) {