mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-11 08:07:19 +08:00
Bind BCS2-8 statically
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
5327731f26
commit
0d2d41691c
@@ -309,7 +309,7 @@ uint32_t DeviceImp::getCopyQueueGroupsFromSubDevice(uint32_t numberOfSubDeviceCo
|
||||
pCommandQueueGroupProperties[subDeviceQueueGroupsIter].flags = ZE_COMMAND_QUEUE_GROUP_PROPERTY_FLAG_COPY;
|
||||
pCommandQueueGroupProperties[subDeviceQueueGroupsIter].maxMemoryFillPatternSize = hwHelper.getMaxFillPaternSizeForCopyEngine();
|
||||
|
||||
l0HwHelper.setAdditionalGroupProperty(pCommandQueueGroupProperties[subDeviceQueueGroupsIter], subDeviceCopyEngineGroups[subDeviceQueueGroupsIter].engineGroupType);
|
||||
l0HwHelper.setAdditionalGroupProperty(pCommandQueueGroupProperties[subDeviceQueueGroupsIter], subDeviceCopyEngineGroups[subDeviceQueueGroupsIter]);
|
||||
pCommandQueueGroupProperties[subDeviceQueueGroupsIter].numQueues = static_cast<uint32_t>(subDeviceCopyEngineGroups[subDeviceQueueGroupsIter].engines.size());
|
||||
}
|
||||
|
||||
@@ -354,7 +354,7 @@ ze_result_t DeviceImp::getCommandQueueGroupProperties(uint32_t *pCount,
|
||||
pCommandQueueGroupProperties[i].flags = ZE_COMMAND_QUEUE_GROUP_PROPERTY_FLAG_COPY;
|
||||
pCommandQueueGroupProperties[i].maxMemoryFillPatternSize = hwHelper.getMaxFillPaternSizeForCopyEngine();
|
||||
}
|
||||
l0HwHelper.setAdditionalGroupProperty(pCommandQueueGroupProperties[i], engineGroups[i].engineGroupType);
|
||||
l0HwHelper.setAdditionalGroupProperty(pCommandQueueGroupProperties[i], engineGroups[i]);
|
||||
pCommandQueueGroupProperties[i].numQueues = static_cast<uint32_t>(engineGroups[i].engines.size());
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "shared/source/device/device.h"
|
||||
|
||||
#include <level_zero/ze_api.h>
|
||||
|
||||
@@ -28,7 +29,7 @@ struct EventPool;
|
||||
class L0HwHelper {
|
||||
public:
|
||||
static L0HwHelper &get(GFXCORE_FAMILY gfxCore);
|
||||
virtual void setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::EngineGroupType groupType) const = 0;
|
||||
virtual void setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::Device::EngineGroupT &group) const = 0;
|
||||
virtual L0::Event *createEvent(L0::EventPool *eventPool, const ze_event_desc_t *desc, L0::Device *device) const = 0;
|
||||
|
||||
virtual bool isResumeWARequired() = 0;
|
||||
@@ -51,7 +52,7 @@ class L0HwHelperHw : public L0HwHelper {
|
||||
static L0HwHelperHw<GfxFamily> l0HwHelper;
|
||||
return l0HwHelper;
|
||||
}
|
||||
void setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::EngineGroupType groupType) const override;
|
||||
void setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::Device::EngineGroupT &group) const override;
|
||||
L0::Event *createEvent(L0::EventPool *eventPool, const ze_event_desc_t *desc, L0::Device *device) const override;
|
||||
L0HwHelperHw() = default;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2021 Intel Corporation
|
||||
* Copyright (C) 2021-2022 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
@@ -16,15 +16,24 @@
|
||||
namespace L0 {
|
||||
|
||||
template <typename Family>
|
||||
void L0HwHelperHw<Family>::setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::EngineGroupType groupType) const {
|
||||
if (groupType == NEO::EngineGroupType::LinkedCopy) {
|
||||
void L0HwHelperHw<Family>::setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::Device::EngineGroupT &group) const {
|
||||
if (group.engineGroupType == NEO::EngineGroupType::LinkedCopy) {
|
||||
groupProperty.flags = ZE_COMMAND_QUEUE_GROUP_PROPERTY_FLAG_COPY;
|
||||
groupProperty.maxMemoryFillPatternSize = sizeof(uint8_t);
|
||||
}
|
||||
|
||||
if (groupType == NEO::EngineGroupType::Copy && NEO::EngineHelpers::isBcsVirtualEngineEnabled()) {
|
||||
if (group.engineGroupType == NEO::EngineGroupType::Copy) {
|
||||
groupProperty.flags = ZE_COMMAND_QUEUE_GROUP_PROPERTY_FLAG_COPY;
|
||||
groupProperty.maxMemoryFillPatternSize = sizeof(uint8_t);
|
||||
|
||||
bool virtualEnginesEnabled = true;
|
||||
for (const auto &engine : group.engines) {
|
||||
if (engine.osContext) {
|
||||
virtualEnginesEnabled &= NEO::EngineHelpers::isBcsVirtualEngineEnabled(engine.getEngineType());
|
||||
}
|
||||
}
|
||||
if (virtualEnginesEnabled) {
|
||||
groupProperty.maxMemoryFillPatternSize = sizeof(uint8_t);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
namespace L0 {
|
||||
|
||||
template <typename GfxFamily>
|
||||
void L0HwHelperHw<GfxFamily>::setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::EngineGroupType groupType) const {
|
||||
void L0HwHelperHw<GfxFamily>::setAdditionalGroupProperty(ze_command_queue_group_properties_t &groupProperty, NEO::Device::EngineGroupT &group) const {
|
||||
}
|
||||
|
||||
template <typename Family>
|
||||
|
||||
Reference in New Issue
Block a user