mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 06:49:52 +08:00
performance: increase USM pool sizes
Related-To: NEO-16045 Also, unify pool config parameters and reduce pool size for ULTs. Signed-off-by: Szymon Morek <szymon.morek@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
c33fb25143
commit
6b37243bfa
@@ -19,6 +19,7 @@ set(NEO_SHARED_DLLS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/create_command_stream.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/options_dll.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/get_staging_buffer_size.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/usm_pool_size.cpp
|
||||
)
|
||||
|
||||
add_library(neo_shared_dlls_precompiled_objects OBJECT ${NEO_SHARED_DLLS})
|
||||
|
||||
15
shared/source/dll/usm_pool_size.cpp
Normal file
15
shared/source/dll/usm_pool_size.cpp
Normal file
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* Copyright (C) 2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/helpers/constants.h"
|
||||
#include "shared/source/memory_manager/usm_pool_params.h"
|
||||
|
||||
namespace NEO {
|
||||
size_t UsmPoolParams::getUsmPoolSize() {
|
||||
return 32 * MemoryConstants::megaByte;
|
||||
}
|
||||
} // namespace NEO
|
||||
@@ -65,6 +65,8 @@ set(NEO_CORE_MEMORY_MANAGER
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/page_table.inl
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/prefetch_manager.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/prefetch_manager.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/usm_pool_params.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/usm_pool_params.cpp
|
||||
)
|
||||
|
||||
if(ENABLE_DYNAMIC_MEMORY_TRACKING)
|
||||
|
||||
19
shared/source/memory_manager/usm_pool_params.cpp
Normal file
19
shared/source/memory_manager/usm_pool_params.cpp
Normal file
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
* Copyright (C) 2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/memory_manager/usm_pool_params.h"
|
||||
|
||||
#include "shared/source/helpers/constants.h"
|
||||
|
||||
namespace NEO {
|
||||
UsmPoolParams UsmPoolParams::getUsmPoolParams() {
|
||||
return {
|
||||
.poolSize = UsmPoolParams::getUsmPoolSize(),
|
||||
.minServicedSize = 0u,
|
||||
.maxServicedSize = 2 * MemoryConstants::megaByte};
|
||||
}
|
||||
} // namespace NEO
|
||||
20
shared/source/memory_manager/usm_pool_params.h
Normal file
20
shared/source/memory_manager/usm_pool_params.h
Normal file
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
* Copyright (C) 2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include <cstddef>
|
||||
|
||||
namespace NEO {
|
||||
struct UsmPoolParams {
|
||||
size_t poolSize{0};
|
||||
size_t minServicedSize{0};
|
||||
size_t maxServicedSize{0};
|
||||
|
||||
static UsmPoolParams getUsmPoolParams();
|
||||
static size_t getUsmPoolSize();
|
||||
};
|
||||
} // namespace NEO
|
||||
@@ -210,6 +210,7 @@ set(neo_libult_SRCS_LINUX
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/os_interface/setup_external_dependencies_${DRIVER_MODEL}.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/os_interface/linux/sys_calls_linux_ult.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/mocks/mock_get_staging_buffer_size.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/mocks/mock_usm_pool_size.cpp
|
||||
)
|
||||
|
||||
set_property(GLOBAL APPEND PROPERTY neo_libult_SRCS_LINUX ${neo_libult_SRCS_LINUX})
|
||||
@@ -226,6 +227,7 @@ set(neo_libult_SRCS_WINDOWS
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/os_interface/windows/sys_calls_winmm.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/os_interface/windows/wddm_calls.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/mocks/mock_get_staging_buffer_size.cpp
|
||||
${NEO_SHARED_TEST_DIRECTORY}/common/mocks/mock_usm_pool_size.cpp
|
||||
)
|
||||
|
||||
set_property(GLOBAL APPEND PROPERTY neo_libult_SRCS_WINDOWS ${neo_libult_SRCS_WINDOWS})
|
||||
|
||||
15
shared/test/common/mocks/mock_usm_pool_size.cpp
Normal file
15
shared/test/common/mocks/mock_usm_pool_size.cpp
Normal file
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* Copyright (C) 2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/helpers/constants.h"
|
||||
#include "shared/source/memory_manager/usm_pool_params.h"
|
||||
|
||||
namespace NEO {
|
||||
size_t UsmPoolParams::getUsmPoolSize() {
|
||||
return MemoryConstants::pageSize;
|
||||
}
|
||||
} // namespace NEO
|
||||
Reference in New Issue
Block a user