mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-19 16:24:18 +08:00
refactor: add functions to store extra engines
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
b0a3f16fc3
commit
986ec4f7cc
@@ -240,12 +240,14 @@ std::unique_ptr<EngineInfo> IoctlHelperXe::createEngineInfo(bool isSysmanEnabled
|
||||
engineClassInstance.engineInstance = engine.engine_instance;
|
||||
xeLog("\t%s:%d:%d\n", xeGetClassName(engineClassInstance.engineClass), engineClassInstance.engineInstance, engine.gt_id);
|
||||
|
||||
if (engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassCompute) ||
|
||||
const bool isBaseEngineClass = engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassCompute) ||
|
||||
engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassRender) ||
|
||||
engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassCopy) ||
|
||||
(isSysmanEnabled && (engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassVideo) ||
|
||||
engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassVideoEnhance)))) {
|
||||
engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassCopy);
|
||||
|
||||
const bool isSysmanEngineClass = isSysmanEnabled && (engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassVideo) ||
|
||||
engineClassInstance.engineClass == getDrmParamValue(DrmParam::engineClassVideoEnhance));
|
||||
|
||||
if (isBaseEngineClass || isSysmanEngineClass || isExtraEngineClassAllowed(engineClassInstance.engineClass)) {
|
||||
if (enginesPerTile.size() <= tile) {
|
||||
enginesPerTile.resize(tile + 1);
|
||||
}
|
||||
|
||||
@@ -151,6 +151,7 @@ class IoctlHelperXe : public IoctlHelper {
|
||||
int debuggerMetadataDestroyIoctl(DrmIoctl request, void *arg);
|
||||
void *freeDebugMetadata(void *metadata);
|
||||
int getRunaloneExtProperty();
|
||||
virtual bool isExtraEngineClassAllowed(uint16_t engineClass) const { return false; }
|
||||
|
||||
struct UserFenceExtension {
|
||||
static constexpr uint32_t tagValue = 0x123987;
|
||||
|
||||
@@ -338,7 +338,7 @@ class DrmMockXe : public DrmMockCustom {
|
||||
static constexpr int32_t mockMaxExecQueuePriority = 3;
|
||||
static constexpr uint32_t mockTimestampFrequency = 12500000;
|
||||
static_assert(sizeof(drm_xe_engine) == 4 * sizeof(uint64_t), "");
|
||||
uint64_t queryEngines[45]{}; // 1 qword for num engines and 4 qwords per engine
|
||||
uint64_t queryEngines[52]{}; // 1 qword for num engines and 4 qwords per engine
|
||||
static_assert(sizeof(drm_xe_mem_region) == 11 * sizeof(uint64_t), "");
|
||||
uint64_t queryMemUsage[34]{}; // 1 qword for num regions and 11 qwords per region
|
||||
static_assert(sizeof(drm_xe_gt) == 12 * sizeof(uint64_t), "");
|
||||
|
||||
Reference in New Issue
Block a user