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
[UR][L0] Fix barrier event cleanup on urEventRelease (intel#21340)
Event pools (zeEventPoolCreate) are cached but never destroyed during
execution -- zeEventPoolDestroy only runs in Context::finalize() at
exit. Long-running apps exhaust vm.max_map_count (~65K) in under 2
hours.
Root cause: event caching holds pool slots indefinitely, preventing
decrementUnreleasedEventsInPool() from freeing pools.
Fix: destroy underlying ZeEvent when caching events to release pool
slots; re-allocate a fresh ZeEvent when reusing cached events; destroy
fully-empty pools immediately when the cache already has an available
pool.
Tested on PVC (120s Grid): pools destroyed during execution went from
0/1584 to 10099/11674 (86.5% recycled), bounding steady-state at ~1575.
Co-authored-by: winston.zhang <winstonz@borealis-admin1.hpe.jf.intel.com>
0 commit comments