mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-23 03:01:20 +08:00
Add hardware support for each pipeline property
This change is a baseline for tight control over when dispatch pipeline state commands and which pipeline state properties can be changed for a given hardware platform Related-To: NEO-5019 Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
9974d95dc3
commit
02cf62902b
@@ -25,6 +25,35 @@ struct Gen11 {
|
|||||||
static constexpr bool isUsingGenericMediaStateClear = true;
|
static constexpr bool isUsingGenericMediaStateClear = true;
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = true;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = false;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = true;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -28,6 +28,35 @@ struct Gen12Lp {
|
|||||||
static constexpr uint32_t stateComputeModeForceNonCoherentMask = (0b11u << 3);
|
static constexpr uint32_t stateComputeModeForceNonCoherentMask = (0b11u << 3);
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = false;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = false;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = true;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -27,6 +27,35 @@ struct Gen8 {
|
|||||||
static constexpr bool isUsingGenericMediaStateClear = true;
|
static constexpr bool isUsingGenericMediaStateClear = true;
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = false;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = false;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = false;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -26,6 +26,35 @@ struct Gen9 {
|
|||||||
static constexpr bool isUsingGenericMediaStateClear = true;
|
static constexpr bool isUsingGenericMediaStateClear = true;
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = true;
|
||||||
|
static constexpr bool coherency = false;
|
||||||
|
static constexpr bool largeGrf = false;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = true;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -136,6 +136,23 @@ class HwInfoConfig {
|
|||||||
virtual void adjustNumberOfCcs(HardwareInfo &hwInfo) const = 0;
|
virtual void adjustNumberOfCcs(HardwareInfo &hwInfo) const = 0;
|
||||||
virtual bool isPrefetcherDisablingInDirectSubmissionRequired() const = 0;
|
virtual bool isPrefetcherDisablingInDirectSubmissionRequired() const = 0;
|
||||||
|
|
||||||
|
virtual bool getFrontEndPropertyScratchSizeSupport() const = 0;
|
||||||
|
virtual bool getFrontEndPropertyPrivateScratchSizeSupport() const = 0;
|
||||||
|
|
||||||
|
virtual bool getScmPropertyThreadArbitrationSupport() const = 0;
|
||||||
|
virtual bool getScmPropertyCoherencySupport() const = 0;
|
||||||
|
virtual bool getScmPropertyZPassAsyncSupport() const = 0;
|
||||||
|
virtual bool getScmPropertyPixelAsyncSupport() const = 0;
|
||||||
|
virtual bool getScmPropertyLargeGrfSupport() const = 0;
|
||||||
|
virtual bool getScmPropertyDevicePreemptionSupport() const = 0;
|
||||||
|
|
||||||
|
virtual bool getSbaPropertyGlobalAtomicsSupport() const = 0;
|
||||||
|
virtual bool getSbaPropertyStatelessMocsSupport() const = 0;
|
||||||
|
|
||||||
|
virtual bool getPreemptionDbgPropertyPreemptionModeSupport() const = 0;
|
||||||
|
virtual bool getPreemptionDbgPropertyStateSipSupport() const = 0;
|
||||||
|
virtual bool getPreemptionDbgPropertyCsrSurfaceSupport() const = 0;
|
||||||
|
|
||||||
MOCKABLE_VIRTUAL ~HwInfoConfig() = default;
|
MOCKABLE_VIRTUAL ~HwInfoConfig() = default;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@@ -241,6 +258,23 @@ class HwInfoConfigHw : public HwInfoConfig {
|
|||||||
void adjustNumberOfCcs(HardwareInfo &hwInfo) const override;
|
void adjustNumberOfCcs(HardwareInfo &hwInfo) const override;
|
||||||
bool isPrefetcherDisablingInDirectSubmissionRequired() const override;
|
bool isPrefetcherDisablingInDirectSubmissionRequired() const override;
|
||||||
|
|
||||||
|
bool getFrontEndPropertyScratchSizeSupport() const override;
|
||||||
|
bool getFrontEndPropertyPrivateScratchSizeSupport() const override;
|
||||||
|
|
||||||
|
bool getScmPropertyThreadArbitrationSupport() const override;
|
||||||
|
bool getScmPropertyCoherencySupport() const override;
|
||||||
|
bool getScmPropertyZPassAsyncSupport() const override;
|
||||||
|
bool getScmPropertyPixelAsyncSupport() const override;
|
||||||
|
bool getScmPropertyLargeGrfSupport() const override;
|
||||||
|
bool getScmPropertyDevicePreemptionSupport() const override;
|
||||||
|
|
||||||
|
bool getSbaPropertyGlobalAtomicsSupport() const override;
|
||||||
|
bool getSbaPropertyStatelessMocsSupport() const override;
|
||||||
|
|
||||||
|
bool getPreemptionDbgPropertyPreemptionModeSupport() const override;
|
||||||
|
bool getPreemptionDbgPropertyStateSipSupport() const override;
|
||||||
|
bool getPreemptionDbgPropertyCsrSurfaceSupport() const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
HwInfoConfigHw() = default;
|
HwInfoConfigHw() = default;
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,8 @@
|
|||||||
#include "shared/source/os_interface/hw_info_config.h"
|
#include "shared/source/os_interface/hw_info_config.h"
|
||||||
#include "shared/source/unified_memory/usm_memory_support.h"
|
#include "shared/source/unified_memory/usm_memory_support.h"
|
||||||
|
|
||||||
|
#include "hw_cmds.h"
|
||||||
|
|
||||||
#include <bitset>
|
#include <bitset>
|
||||||
|
|
||||||
namespace NEO {
|
namespace NEO {
|
||||||
@@ -492,4 +494,83 @@ template <PRODUCT_FAMILY gfxProduct>
|
|||||||
bool HwInfoConfigHw<gfxProduct>::isPrefetcherDisablingInDirectSubmissionRequired() const {
|
bool HwInfoConfigHw<gfxProduct>::isPrefetcherDisablingInDirectSubmissionRequired() const {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyThreadArbitrationSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::threadArbitration;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyCoherencySupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::coherency;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyZPassAsyncSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::zPassAsyncCompute;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyPixelAsyncSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::pixelAsyncCompute;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyLargeGrfSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::largeGrf;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getScmPropertyDevicePreemptionSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateComputeModeStateSupport::preemptionMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getSbaPropertyGlobalAtomicsSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateBaseAddressStateSupport::globalAtomics;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getSbaPropertyStatelessMocsSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::StateBaseAddressStateSupport::statelessMocs;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getPreemptionDbgPropertyPreemptionModeSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::PreemptionDebugSupport::preemptionMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getPreemptionDbgPropertyStateSipSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::PreemptionDebugSupport::stateSip;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getPreemptionDbgPropertyCsrSurfaceSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::PreemptionDebugSupport::csrSurface;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getFrontEndPropertyScratchSizeSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::FrontEndStateSupport::scratchSize;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <PRODUCT_FAMILY gfxProduct>
|
||||||
|
bool HwInfoConfigHw<gfxProduct>::getFrontEndPropertyPrivateScratchSizeSupport() const {
|
||||||
|
using GfxProduct = typename HwMapper<gfxProduct>::GfxProduct;
|
||||||
|
return GfxProduct::FrontEndStateSupport::privateScratchSize;
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace NEO
|
} // namespace NEO
|
||||||
|
|||||||
@@ -34,6 +34,35 @@ struct XeHpCore {
|
|||||||
static constexpr bool isUsingGenericMediaStateClear = true;
|
static constexpr bool isUsingGenericMediaStateClear = true;
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = false;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = true;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = true;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = false;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -27,6 +27,36 @@ struct PVC : public XeHpcCoreFamily {
|
|||||||
static const uint32_t maxSubslicesSupported = 64;
|
static const uint32_t maxSubslicesSupported = 64;
|
||||||
static const uint32_t maxDualSubslicesSupported = 64;
|
static const uint32_t maxDualSubslicesSupported = 64;
|
||||||
static const RuntimeCapabilityTable capabilityTable;
|
static const RuntimeCapabilityTable capabilityTable;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = true;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = true;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = false;
|
||||||
|
};
|
||||||
|
|
||||||
static void (*setupHardwareInfo)(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable, uint64_t hwInfoConfig);
|
static void (*setupHardwareInfo)(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable, uint64_t hwInfoConfig);
|
||||||
static void setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo);
|
static void setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo);
|
||||||
static void setupHardwareInfoBase(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable);
|
static void setupHardwareInfoBase(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable);
|
||||||
|
|||||||
@@ -34,6 +34,35 @@ struct XeHpgCore {
|
|||||||
static constexpr bool isUsingGenericMediaStateClear = true;
|
static constexpr bool isUsingGenericMediaStateClear = true;
|
||||||
static constexpr bool isUsingMiMemFence = false;
|
static constexpr bool isUsingMiMemFence = false;
|
||||||
|
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = true;
|
||||||
|
static constexpr bool privateScratchSize = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = false;
|
||||||
|
static constexpr bool coherency = true;
|
||||||
|
static constexpr bool largeGrf = true;
|
||||||
|
static constexpr bool zPassAsyncCompute = true;
|
||||||
|
static constexpr bool pixelAsyncCompute = true;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = true;
|
||||||
|
static constexpr bool stateSip = true;
|
||||||
|
static constexpr bool csrSurface = false;
|
||||||
|
};
|
||||||
|
|
||||||
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
struct DataPortBindlessSurfaceExtendedMessageDescriptor {
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
|
|||||||
@@ -421,6 +421,45 @@ uint32_t L1CachePolicyHelper<IGFX_UNKNOWN>::getUncachedL1CachePolicy() {
|
|||||||
return 1u;
|
return 1u;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct UnknownProduct {
|
||||||
|
struct FrontEndStateSupport {
|
||||||
|
static constexpr bool scratchSize = false;
|
||||||
|
static constexpr bool privateScratchSize = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateComputeModeStateSupport {
|
||||||
|
static constexpr bool threadArbitration = false;
|
||||||
|
static constexpr bool coherency = false;
|
||||||
|
static constexpr bool largeGrf = false;
|
||||||
|
static constexpr bool zPassAsyncCompute = false;
|
||||||
|
static constexpr bool pixelAsyncCompute = false;
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct StateBaseAddressStateSupport {
|
||||||
|
static constexpr bool globalAtomics = false;
|
||||||
|
static constexpr bool statelessMocs = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PipelineSelectStateSupport {
|
||||||
|
static constexpr bool commandSupport = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PreemptionDebugSupport {
|
||||||
|
static constexpr bool preemptionMode = false;
|
||||||
|
static constexpr bool stateSip = false;
|
||||||
|
static constexpr bool csrSurface = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template <>
|
||||||
|
struct HwMapper<IGFX_UNKNOWN> {
|
||||||
|
enum { gfxFamily = IGFX_UNKNOWN_CORE };
|
||||||
|
|
||||||
|
static const char *abbreviation;
|
||||||
|
using GfxProduct = UnknownProduct;
|
||||||
|
};
|
||||||
|
|
||||||
} // namespace NEO
|
} // namespace NEO
|
||||||
|
|
||||||
#include "shared/source/os_interface/hw_info_config.inl"
|
#include "shared/source/os_interface/hw_info_config.inl"
|
||||||
|
|||||||
@@ -80,3 +80,25 @@ EHLTEST_F(EhlHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EHLTEST_F(EhlHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -107,3 +107,25 @@ ICLLPTEST_F(IcllpHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupport
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ICLLPTEST_F(IcllpHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -99,3 +99,25 @@ LKFTEST_F(LkfHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LKFTEST_F(LkfHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -82,3 +82,25 @@ ADLNTEST_F(AdlnHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupported
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ADLNTEST_F(AdlnHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -82,3 +82,25 @@ ADLPTEST_F(AdlpHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupported
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ADLPTEST_F(AdlpHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -82,3 +82,25 @@ ADLSTEST_F(AdlsHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupported
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ADLSTEST_F(AdlsHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -148,3 +148,25 @@ DG1TEST_F(Dg1HwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DG1TEST_F(Dg1HwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -92,3 +92,25 @@ RKLTEST_F(RklHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RKLTEST_F(RklHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -20,3 +20,25 @@ TGLLPTEST_F(HwInfoConfigTestTgllp, givenHwInfoConfigWhenGettingEvictIfNecessaryF
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TGLLPTEST_F(HwInfoConfigTestTgllp, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -100,3 +100,25 @@ using CompilerHwInfoConfigHelperTestsBdw = ::testing::Test;
|
|||||||
BDWTEST_F(CompilerHwInfoConfigHelperTestsBdw, givenBdwWhenIsStatelessToStatefulBufferOffsetSupportedIsCalledThenReturnsTrue) {
|
BDWTEST_F(CompilerHwInfoConfigHelperTestsBdw, givenBdwWhenIsStatelessToStatefulBufferOffsetSupportedIsCalledThenReturnsTrue) {
|
||||||
EXPECT_FALSE(CompilerHwInfoConfig::get(productFamily)->isStatelessToStatefulBufferOffsetSupported());
|
EXPECT_FALSE(CompilerHwInfoConfig::get(productFamily)->isStatelessToStatefulBufferOffsetSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BDWTEST_F(BdwHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -106,3 +106,25 @@ BXTTEST_F(BxtHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BXTTEST_F(BxtHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -113,3 +113,25 @@ CFLTEST_F(CflHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CFLTEST_F(CflHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -96,3 +96,25 @@ GLKTEST_F(GlkHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GLKTEST_F(GlkHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -120,3 +120,25 @@ KBLTEST_F(KblHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
KBLTEST_F(KblHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -120,3 +120,25 @@ SKLTEST_F(SklHwInfo, givenHwInfoConfigWhenGettingEvictIfNecessaryFlagSupportedTh
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SKLTEST_F(SklHwInfo, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -20,3 +20,25 @@ XEHPTEST_F(HwInfoConfigTestXeHpSdv, givenHwInfoConfigWhenGettingEvictIfNecessary
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
EXPECT_TRUE(hwInfoConfig.isEvictionIfNecessaryFlagSupported());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
XEHPTEST_F(HwInfoConfigTestXeHpSdv, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -74,3 +74,25 @@ PVCTEST_F(PVCHwInfoConfig, givenPVCHwInfoConfigWhenIsPrefetcherDisablingInDirect
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(productFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(productFamily);
|
||||||
EXPECT_FALSE(hwInfoConfig.isPrefetcherDisablingInDirectSubmissionRequired());
|
EXPECT_FALSE(hwInfoConfig.isPrefetcherDisablingInDirectSubmissionRequired());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PVCTEST_F(PVCHwInfoConfig, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
@@ -70,3 +70,25 @@ DG2TEST_F(TestDg2HwInfoConfig, givenDG2HwInfoConfigWhenCheckDirectSubmissionSupp
|
|||||||
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
EXPECT_TRUE(hwInfoConfig.isDirectSubmissionSupported(hwInfo));
|
EXPECT_TRUE(hwInfoConfig.isDirectSubmissionSupported(hwInfo));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DG2TEST_F(TestDg2HwInfoConfig, givenHwInfoConfigWhenGetCommandsStreamPropertiesSupportThenExpectCorrectValues) {
|
||||||
|
HardwareInfo hwInfo = *defaultHwInfo;
|
||||||
|
const auto &hwInfoConfig = *HwInfoConfig::get(hwInfo.platform.eProductFamily);
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyThreadArbitrationSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyCoherencySupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyZPassAsyncSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyPixelAsyncSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getScmPropertyLargeGrfSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getScmPropertyDevicePreemptionSupport());
|
||||||
|
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getSbaPropertyGlobalAtomicsSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getSbaPropertyStatelessMocsSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyScratchSizeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getFrontEndPropertyPrivateScratchSizeSupport());
|
||||||
|
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyPreemptionModeSupport());
|
||||||
|
EXPECT_TRUE(hwInfoConfig.getPreemptionDbgPropertyStateSipSupport());
|
||||||
|
EXPECT_FALSE(hwInfoConfig.getPreemptionDbgPropertyCsrSurfaceSupport());
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user