/* * Copyright (C) 2018-2021 Intel Corporation * * SPDX-License-Identifier: MIT * */ namespace NEO { template bool UnitTestHelper::isL3ConfigProgrammable() { return true; }; template bool UnitTestHelper::evaluateDshUsage(size_t sizeBeforeEnqueue, size_t sizeAfterEnqueue, const KernelDescriptor *kernelDescriptor, uint32_t rootDeviceIndex) { if (sizeBeforeEnqueue != sizeAfterEnqueue) { return true; } return false; } template bool UnitTestHelper::isPageTableManagerSupported(const HardwareInfo &hwInfo) { return false; } template bool UnitTestHelper::isTimestampPacketWriteSupported() { return false; } template bool UnitTestHelper::isExpectMemoryNotEqualSupported() { return false; } template uint32_t UnitTestHelper::getDefaultSshUsage() { return sizeof(typename GfxFamily::RENDER_SURFACE_STATE); } template inline uint32_t UnitTestHelper::getAppropriateThreadArbitrationPolicy(uint32_t policy) { return policy; } template bool UnitTestHelper::evaluateGshAddressForScratchSpace(uint64_t usedScratchGpuAddress, uint64_t retrievedGshAddress) { return usedScratchGpuAddress == retrievedGshAddress; } template bool UnitTestHelper::isPipeControlWArequired(const HardwareInfo &hwInfo) { return false; } template bool UnitTestHelper::isAdditionalSynchronizationRequired() { return false; } template bool UnitTestHelper::isAdditionalMiSemaphoreWaitRequired(const HardwareInfo &hwInfo) { return false; } template bool UnitTestHelper::isAdditionalMiSemaphoreWait(const typename GfxFamily::MI_SEMAPHORE_WAIT &semaphoreWait) { return false; } template inline uint64_t UnitTestHelper::getAtomicMemoryAddress(const typename GfxFamily::MI_ATOMIC &atomic) { return atomic.getMemoryAddress() | ((static_cast(atomic.getMemoryAddressHigh())) << 32); } template inline bool UnitTestHelper::requiresTimestampPacketsInSystemMemory(HardwareInfo &hwInfo) { return true; } template void UnitTestHelper::setExtraMidThreadPreemptionFlag(HardwareInfo &hwInfo, bool value) { hwInfo.featureTable.flags.ftrGpGpuMidThreadLevelPreempt = value; } template auto UnitTestHelper::getCoherencyTypeSupported(COHERENCY_TYPE coherencyType) -> decltype(coherencyType) { return coherencyType; } template const bool UnitTestHelper::tiledImagesSupported = true; template const uint32_t UnitTestHelper::smallestTestableSimdSize = 8; template const AuxTranslationMode UnitTestHelper::requiredAuxTranslationMode = AuxTranslationMode::Builtin; template const bool UnitTestHelper::useFullRowForLocalIdsGeneration = false; template const bool UnitTestHelper::additionalMiFlushDwRequired = false; template inline uint64_t UnitTestHelper::getPipeControlPostSyncAddress(const typename GfxFamily::PIPE_CONTROL &pipeControl) { uint64_t gpuAddress = pipeControl.getAddress(); uint64_t gpuAddressHigh = pipeControl.getAddressHigh(); return (gpuAddressHigh << 32) | gpuAddress; } } // namespace NEO