Check if KMD migration is supported

Related-To: NEO-3312

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
Lukasz Jobczyk
2021-02-03 14:53:13 +00:00
committed by Compute-Runtime-Automation
parent 320a404a91
commit 049e77b235
10 changed files with 81 additions and 11 deletions

View File

@ -145,6 +145,8 @@ class MemoryManager {
bool isLocalMemorySupported(uint32_t rootDeviceIndex) const;
virtual bool isMemoryBudgetExhausted() const;
virtual bool isKmdMigrationAvailable(uint32_t rootDeviceIndex) { return false; }
virtual AlignedMallocRestrictions *getAlignedMallocRestrictions() {
return nullptr;
}

View File

@ -220,13 +220,9 @@ void *SVMAllocsManager::createSharedUnifiedMemoryAllocation(size_t size,
}
if (supportDualStorageSharedMemory) {
bool useKmdMigration = false;
if (DebugManager.flags.UseKmdMigration.get() != -1) {
useKmdMigration = DebugManager.flags.UseKmdMigration.get();
}
bool useKmdMigration = memoryManager->isKmdMigrationAvailable(*memoryProperties.rootDeviceIndices.begin());
void *unifiedMemoryPointer = nullptr;
if (useKmdMigration) {
unifiedMemoryPointer = createUnifiedKmdMigratedAllocation(size, {}, memoryProperties);
if (!unifiedMemoryPointer) {