Make max mem alloc size equal to global mem size.

Change-Id: Ia2b2ec9d66e0b9d7ee33d8e194a42c71fc01fc97
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
This commit is contained in:
Mrozek, Michal
2019-07-11 13:36:09 +02:00
committed by sys_ocldev
parent 2daab300b2
commit 6abb6523c2
2 changed files with 2 additions and 3 deletions

View File

@ -233,8 +233,7 @@ void Device::initializeCaps() {
deviceInfo.preferredInteropUserSync = 1u;
// OpenCL 1.2 requires 128MB minimum
auto maxMemAllocSize = std::max((uint64_t)(deviceInfo.globalMemSize / 2), (uint64_t)(128 * MB));
deviceInfo.maxMemAllocSize = std::min(maxMemAllocSize, this->hardwareCapabilities.maxMemAllocSize);
deviceInfo.maxMemAllocSize = std::min(std::max(deviceInfo.globalMemSize, static_cast<uint64_t>(128llu * MB)), this->hardwareCapabilities.maxMemAllocSize);
deviceInfo.maxConstantBufferSize = deviceInfo.maxMemAllocSize;

View File

@ -341,7 +341,7 @@ TEST(Device_GetCaps, givenGlobalMemSizeWhenCalculatingMaxAllocSizeThenAdjustToHW
auto &hwHelper = HwHelper::get(platformDevices[0]->platform.eRenderCoreFamily);
hwHelper.setupHardwareCapabilities(&hwCaps, *platformDevices[0]);
uint64_t expectedSize = std::max((caps.globalMemSize / 2), static_cast<uint64_t>(128ULL * MemoryConstants::megaByte));
uint64_t expectedSize = std::max((caps.globalMemSize), static_cast<uint64_t>(128ULL * MemoryConstants::megaByte));
expectedSize = std::min(expectedSize, hwCaps.maxMemAllocSize);
EXPECT_EQ(caps.maxMemAllocSize, expectedSize);