compute-runtime/shared/source/memory_manager
Dominik Dabek 915d657420 fix: flag to limit usm reuse based on memory usage
Host usm and device usm for igfx checks system memory usage.
Device usm for dgfx checks local memory usage.

If used memory is above limit threshold:
- no new allocations will be saved for reuse
- cleaner will use shorter hold time of 2 seconds
- cleaner will free all eligible allocations, regardless of async
deleter thread having work

Motivation: in case of gfx memory being full, making resident new
allocations will require evictions which leads to massive slowdown on
enqueue calls.
This change aims to minimize cases where extra memory usage from usm
reuse mechanism leads to above situation.

Related-To: NEO-6893, NEO-14160

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-03-27 10:25:19 +01:00
..
definitions refactor: remove not needed code 2024-11-28 16:16:30 +01:00
CMakeLists.txt fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
address_mapper.cpp
address_mapper.h
alignment_selector.cpp
alignment_selector.h
allocation_properties.h refactor: remove not needed code 2024-11-28 16:16:30 +01:00
allocation_type.h fix: create and use new allocation type for syncBuffer 2024-09-06 14:11:33 +02:00
allocations_list.cpp
allocations_list.h
compression_selector.cpp
compression_selector.h
deferrable_allocation_deletion.cpp
deferrable_allocation_deletion.h
deferrable_deletion.h fix: Add asserts to ensure NonCopyable and NonMovable n/n 2025-02-19 11:36:24 +01:00
deferred_deleter.cpp performance: Ensure hostptrs removed before creating new one 2024-11-12 13:55:15 +01:00
deferred_deleter.h fix: Add asserts to ensure NonCopyable and NonMovable 3/n 2025-02-18 17:16:03 +01:00
dynamic_memory_tracking.cpp refactor: correct typo 2025-02-17 23:31:27 +01:00
gfx_partition.cpp Revert "fix: use full size for HEAP_EXTENDED initialization" 2024-10-22 19:27:31 +02:00
gfx_partition.h Revert "fix: use full size for HEAP_EXTENDED initialization" 2024-10-22 19:27:31 +02:00
graphics_allocation.cpp fix: use productHelper in getPatIndexInfoString() on Windows 2024-10-22 19:27:13 +02:00
graphics_allocation.h fix: Add asserts to ensure NonCopyable and NonMovable 3/n 2025-02-18 17:16:03 +01:00
host_ptr_defines.h Revert "performance: align structures for 64-bit platforms" 2025-01-15 09:02:01 +01:00
host_ptr_manager.cpp
host_ptr_manager.h
internal_allocation_storage.cpp Revert "performance: Stop direct submission before removing host ptrs" 2024-05-13 10:10:51 +02:00
internal_allocation_storage.h
local_memory_usage.cpp
local_memory_usage.h refactor: Change wording from NonCopyableOrMovable to NonCopyableAndNonMovable 2025-02-17 14:19:10 +01:00
memadvise_flags.h
memory_allocation.cpp
memory_allocation.h feature: Initial CB events IPC support 2024-10-16 13:33:59 +02:00
memory_banks.h
memory_manager.cpp fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
memory_manager.h fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
memory_operations_handler.h fix: Avoid mutex deadlock when switch ulls light ring buffer 2025-03-19 11:47:40 +01:00
memory_operations_status.h refactor: correct naming of enum class constants 6/n 2023-12-13 14:48:52 +01:00
memory_pool.h
migration_sync_data.cpp
migration_sync_data.h
multi_graphics_allocation.cpp
multi_graphics_allocation.h
os_agnostic_memory_manager.cpp performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00
os_agnostic_memory_manager.h performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00
page_table.cpp
page_table.h
page_table.inl
physical_address_allocator.h
prefetch_manager.cpp feature: Implement appendMemoryPrefetch for Shared System USM allocations 2025-03-13 06:26:38 +01:00
prefetch_manager.h feature: Implement appendMemoryPrefetch for Shared System USM allocations 2025-03-13 06:26:38 +01:00
residency.cpp
residency.h
residency_container.h
surface.cpp
surface.h
unified_memory_manager.cpp fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
unified_memory_manager.h fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
unified_memory_pooling.cpp performance: redesign usm alloc reuse mechanism 2024-09-10 18:12:14 +02:00
unified_memory_pooling.h performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00
unified_memory_reuse.h fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
unified_memory_reuse_cleaner.cpp fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00
unified_memory_reuse_cleaner.h fix: flag to limit usm reuse based on memory usage 2025-03-27 10:25:19 +01:00