fix: Do not align svm gpu greater than its svm cpu

Resolves: HSD-18042781233

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
Lukasz Jobczyk
2025-08-04 13:46:43 +00:00
committed by Compute-Runtime-Automation
parent 7e540d5ad5
commit 3e2acefac1
5 changed files with 24 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2021-2023 Intel Corporation
* Copyright (C) 2021-2025 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -42,11 +42,20 @@ void AlignmentSelector::addCandidateAlignment(size_t alignment, bool applyForSma
}
AlignmentSelector::CandidateAlignment AlignmentSelector::selectAlignment(size_t size) const {
constexpr size_t noAlignmentLimit = std::numeric_limits<size_t>::max();
return this->selectAlignment(size, noAlignmentLimit);
}
AlignmentSelector::CandidateAlignment AlignmentSelector::selectAlignment(size_t size, size_t maximumPossibleAlignment) const {
for (const CandidateAlignment &candidateAlignment : this->candidateAlignments) {
if (!candidateAlignment.applyForSmallerSize && size < candidateAlignment.alignment) {
continue;
}
if (candidateAlignment.alignment > maximumPossibleAlignment) {
continue;
}
const size_t alignedSize = alignUp(size, candidateAlignment.alignment);
const size_t wastedMemory = alignedSize - size;
const size_t maxWastedMemory = static_cast<size_t>(alignedSize * candidateAlignment.maxMemoryWastage);