refactor: allow designated initialization directSubmissionPropertiesPerEngine

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
This commit is contained in:
Kamil Kopryk
2025-09-18 15:48:36 +00:00
committed by Compute-Runtime-Automation
parent 93d98c528d
commit 8ab463f47c
16 changed files with 537 additions and 517 deletions

View File

@@ -12,6 +12,7 @@
#include <algorithm>
#include <map>
#include <vector>
namespace NEO {

View File

@@ -8,7 +8,9 @@
#pragma once
#include "aubstream/engine_node.h"
#include <vector>
#include <cstdint>
#include <initializer_list>
#include <utility>
namespace NEO {
@@ -20,17 +22,19 @@ struct DirectSubmissionProperties {
bool operator==(const DirectSubmissionProperties &) const = default;
};
using EngineDirectSubmissionInitVec = std::vector<std::pair<aub_stream::EngineType, DirectSubmissionProperties>>;
struct DirectSubmissionPropertiesPerEngine {
struct DirectSubmissionProperyEngines {
DirectSubmissionProperyEngines() = default;
DirectSubmissionProperyEngines(const EngineDirectSubmissionInitVec &initData) {
for (const auto &entry : initData) {
data[entry.first] = entry.second;
}
}
DirectSubmissionProperties data[aub_stream::NUM_ENGINES] = {};
bool operator==(const DirectSubmissionProperyEngines &) const = default;
bool operator==(const DirectSubmissionPropertiesPerEngine &) const = default;
};
constexpr DirectSubmissionPropertiesPerEngine makeDirectSubmissionPropertiesPerEngine(
std::initializer_list<std::pair<aub_stream::EngineType, DirectSubmissionProperties>> init) {
DirectSubmissionPropertiesPerEngine out{};
for (const auto &[engineType, directSubmissionProperties] : init) {
out.data[static_cast<uint32_t>(engineType)] = directSubmissionProperties;
}
return out;
}
} // namespace NEO

View File

@@ -30,44 +30,45 @@ const PLATFORM ADLN::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable ADLN::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLN::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLN::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable ADLN::workaroundTable = {};

View File

@@ -30,44 +30,45 @@ const PLATFORM ADLP::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable ADLP::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLP::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLP::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable ADLP::workaroundTable = {};

View File

@@ -30,44 +30,45 @@ const PLATFORM ADLS::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable ADLS::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLS::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ADLS::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable ADLS::workaroundTable = {};

View File

@@ -30,44 +30,45 @@ const PLATFORM DG1::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable DG1::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(DG1::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages,
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
false, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(DG1::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages,
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
false, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable DG1::workaroundTable = {};

View File

@@ -30,44 +30,45 @@ const PLATFORM RKL::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable RKL::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(RKL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(RKL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable RKL::workaroundTable = {};

View File

@@ -30,44 +30,45 @@ const PLATFORM TGLLP::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable TGLLP::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {true, true}},
{aub_stream::ENGINE_CCS, {true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(TGLLP::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = true, .useNonDefault = false, .useRootDevice = false}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max64BitAppAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_RCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
1, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(TGLLP::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
false, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
false, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable TGLLP::workaroundTable = {};

View File

@@ -20,7 +20,7 @@ enum PreemptionMode : uint32_t;
class ReleaseHelper;
struct RuntimeCapabilityTable {
DirectSubmissionProperyEngines directSubmissionEngines;
DirectSubmissionPropertiesPerEngine directSubmissionEngines;
KmdNotifyProperties kmdNotifyProperties;
uint64_t gpuAddressSpace;
uint64_t sharedSystemMemCapabilities;

View File

@@ -32,45 +32,46 @@ const PLATFORM BMG::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable BMG::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}},
{aub_stream::ENGINE_CCS1, {true, false, true, true}},
{aub_stream::ENGINE_BCS, {true, false, true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(BMG::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
false, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
{aub_stream::ENGINE_CCS1, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(BMG::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
false, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
void BMG::setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo, const ReleaseHelper &releaseHelper) {

View File

@@ -32,43 +32,44 @@ const PLATFORM LNL::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable LNL::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(LNL::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
true, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(LNL::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
true, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
void LNL::setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo, const ReleaseHelper &releaseHelper) {

View File

@@ -32,44 +32,45 @@ const PLATFORM PTL::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable PTL::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}},
{aub_stream::ENGINE_BCS, {true, false, true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(PTL::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
true, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
{aub_stream::ENGINE_BCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::MidThread, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(PTL::GRF), // grfSize
64, // timestampValidBits
64, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
true, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
void PTL::setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo, const ReleaseHelper &releaseHelper) {

View File

@@ -32,55 +32,56 @@ const PLATFORM PVC::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable PVC::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}},
{aub_stream::ENGINE_CCS1, {true, false, true, true}},
{aub_stream::ENGINE_CCS2, {true, false, true, true}},
{aub_stream::ENGINE_CCS3, {true, false, true, true}},
{aub_stream::ENGINE_BCS, {true, false, true, true}},
{aub_stream::ENGINE_BCS1, {true, false, true, true}},
{aub_stream::ENGINE_BCS2, {true, false, true, true}},
{aub_stream::ENGINE_BCS3, {true, false, true, true}},
{aub_stream::ENGINE_BCS4, {true, false, true, true}},
{aub_stream::ENGINE_BCS5, {true, false, true, true}},
{aub_stream::ENGINE_BCS6, {true, false, true, true}},
{aub_stream::ENGINE_BCS7, {true, false, true, true}},
{aub_stream::ENGINE_BCS8, {true, false, true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
maxNBitValue(57), // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(PVC::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
false, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
false, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
{aub_stream::ENGINE_CCS1, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_CCS2, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_CCS3, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS1, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS2, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS3, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS4, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS5, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS6, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS7, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_BCS8, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
maxNBitValue(57), // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
128, // maxProgrammableSlmSize
sizeof(PVC::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
false, // supportCacheFlushAfterWalker
false, // supportsImages
true, // supportsOcl21Features
true, // supportsOnDemandPageFaults
true, // supportsIndependentForwardProgress
false, // isIntegratedDevice
false, // supportsMediaBlock
false, // fusedEuEnabled
true, // l0DebuggerSupported;
true, // supportsFloatAtomics
0 // cxlType
};
void PVC::setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo, const ReleaseHelper &releaseHelper) {

View File

@@ -29,43 +29,44 @@ const PLATFORM ARL::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable ARL::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ARL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(ARL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable ARL::workaroundTable = {};

View File

@@ -30,47 +30,49 @@ const PLATFORM DG2::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable DG2::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_RCS, {false, false, false, false}},
{aub_stream::ENGINE_CCS, {true, false, false, true}},
{aub_stream::ENGINE_CCS1, {true, false, true, true}},
{aub_stream::ENGINE_CCS2, {true, false, true, true}},
{aub_stream::ENGINE_CCS3, {true, false, true, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(DG2::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
true, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
false, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_RCS, {.engineSupported = false, .submitOnInit = false, .useNonDefault = false, .useRootDevice = false}},
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
{aub_stream::ENGINE_CCS1, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_CCS2, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
{aub_stream::ENGINE_CCS3, {.engineSupported = true, .submitOnInit = false, .useNonDefault = true, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(DG2::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
false, // ftrSupportsFP64
true, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
false, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable DG2::workaroundTable = {};

View File

@@ -30,43 +30,45 @@ const PLATFORM MTL::platform = {
GTTYPE_UNDEFINED};
const RuntimeCapabilityTable MTL::capabilityTable{
EngineDirectSubmissionInitVec{
{aub_stream::ENGINE_CCS, {true, false, false, true}}}, // directSubmissionEngines
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(MTL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
makeDirectSubmissionPropertiesPerEngine({
{aub_stream::ENGINE_CCS, {.engineSupported = true, .submitOnInit = false, .useNonDefault = false, .useRootDevice = true}},
}),
{0, 0, 0, 0, false, false, false, false}, // kmdNotifyProperties
MemoryConstants::max48BitAddress, // gpuAddressSpace
0, // sharedSystemMemCapabilities
MemoryConstants::pageSize, // requiredPreemptionSurfaceSize
"", // deviceName
nullptr, // preferredPlatformName
PreemptionMode::ThreadGroup, // defaultPreemptionMode
aub_stream::ENGINE_CCS, // defaultEngineType
0, // maxRenderFrequency
30, // clVersionSupport
0, // extraQuantityThreadsPerEU
64, // maxProgrammableSlmSize
sizeof(MTL::GRF), // grfSize
36u, // timestampValidBits
32u, // kernelTimestampValidBits
false, // blitterOperationsSupported
true, // ftrSupportsInteger64BitAtomics
true, // ftrSupportsFP64
false, // ftrSupportsFP64Emulation
true, // ftrSupports64BitMath
false, // ftrSupportsCoherency
false, // ftrRenderCompressedBuffers
false, // ftrRenderCompressedImages
true, // instrumentationEnabled
true, // supportCacheFlushAfterWalker
true, // supportsImages
true, // supportsOcl21Features
false, // supportsOnDemandPageFaults
false, // supportsIndependentForwardProgress
true, // isIntegratedDevice
true, // supportsMediaBlock
true, // fusedEuEnabled
true, // l0DebuggerSupported
true, // supportsFloatAtomics
0 // cxlType
};
WorkaroundTable MTL::workaroundTable = {};