You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Memory leak in event pool was caused because we failed to invoke zeEventPoolDestroy() because we set the live events of the newly created pool with max number of events. And then we only destroy the pool if the live events count drops to zero.
The number of live events drops to zero only we really used all 256 events available in the pool.
Therefore, it became a memory leak when only a few events are used in the pool.
The fix is to introduce a new method finalize() in pi_context class.
This method is invoked from the pi_context destructor.
It checks if there is any pool that has non-zero live events and then calls zeEventPoolDestroy for it to deallocate event pool associated with the context.
Signed-off-by: Byoungro So <[email protected]>
0 commit comments