mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00
fix: remove wa for override patIndex on mtl
after forcing cacheable to 0 this wa should be not needed Related-To: NEO-8120 Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
This commit is contained in:

committed by
Compute-Runtime-Automation

parent
894bab05ef
commit
dfa420d318
@ -26,6 +26,7 @@ class GfxCoreHelper;
|
||||
class MemoryManager;
|
||||
struct DeviceInfo;
|
||||
class CompilerProductHelper;
|
||||
enum class AllocationType;
|
||||
} // namespace NEO
|
||||
|
||||
namespace L0 {
|
||||
|
@ -1212,7 +1212,6 @@ uint64_t Drm::getPatIndex(Gmm *gmm, AllocationType allocationType, CacheRegion c
|
||||
}
|
||||
|
||||
uint64_t patIndex = rootDeviceEnvironment.getGmmClientContext()->cachePolicyGetPATIndex(resourceInfo, usageType, compressed, cachable);
|
||||
patIndex = productHelper.overridePatIndex(allocationType, patIndex);
|
||||
|
||||
UNRECOVERABLE_IF(patIndex == static_cast<uint64_t>(GMM_PAT_ERROR));
|
||||
|
||||
|
@ -39,7 +39,6 @@ struct RootDeviceEnvironment;
|
||||
class OSInterface;
|
||||
class DriverModel;
|
||||
enum class DriverModelType;
|
||||
enum class AllocationType;
|
||||
|
||||
using ProductHelperCreateFunctionType = std::unique_ptr<ProductHelper> (*)();
|
||||
extern ProductHelperCreateFunctionType productHelperFactory[IGFX_MAX_PRODUCT];
|
||||
@ -165,7 +164,6 @@ class ProductHelper {
|
||||
virtual bool isResolveDependenciesByPipeControlsSupported(const HardwareInfo &hwInfo, bool isOOQ, TaskCountType queueTaskCount, const CommandStreamReceiver &queueCsr) const = 0;
|
||||
virtual bool isMidThreadPreemptionDisallowedForRayTracingKernels() const = 0;
|
||||
virtual bool isBufferPoolAllocatorSupported() const = 0;
|
||||
virtual uint64_t overridePatIndex(AllocationType allocationType, uint64_t patIndex) const = 0;
|
||||
virtual bool isTlbFlushRequired() const = 0;
|
||||
virtual bool isDummyBlitWaRequired() const = 0;
|
||||
virtual bool isDetectIndirectAccessInKernelSupported(const KernelDescriptor &kernelDescriptor) const = 0;
|
||||
|
@ -732,11 +732,6 @@ void ProductHelperHw<gfxProduct>::fillPipelineSelectPropertiesSupportStructure(P
|
||||
propertiesSupport.systolicMode = isSystolicModeConfigurable(hwInfo);
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
uint64_t ProductHelperHw<gfxProduct>::overridePatIndex(AllocationType allocationType, uint64_t patIndex) const {
|
||||
return patIndex;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
bool ProductHelperHw<gfxProduct>::isFusedEuDisabledForDpas(bool kernelHasDpasInstructions, const uint32_t *lws, const uint32_t *groupCount, const HardwareInfo &hwInfo) const {
|
||||
return false;
|
||||
|
@ -116,7 +116,6 @@ class ProductHelperHw : public ProductHelper {
|
||||
bool isResolveDependenciesByPipeControlsSupported(const HardwareInfo &hwInfo, bool isOOQ, TaskCountType queueTaskCount, const CommandStreamReceiver &queueCsr) const override;
|
||||
bool isMidThreadPreemptionDisallowedForRayTracingKernels() const override;
|
||||
bool isBufferPoolAllocatorSupported() const override;
|
||||
uint64_t overridePatIndex(AllocationType allocationType, uint64_t patIndex) const override;
|
||||
bool isTlbFlushRequired() const override;
|
||||
bool isDummyBlitWaRequired() const override;
|
||||
bool isDetectIndirectAccessInKernelSupported(const KernelDescriptor &kernelDescriptor) const override;
|
||||
|
@ -83,15 +83,6 @@ std::optional<aub_stream::ProductFamily> ProductHelperHw<gfxProduct>::getAubStre
|
||||
return aub_stream::ProductFamily::Mtl;
|
||||
};
|
||||
|
||||
template <>
|
||||
uint64_t ProductHelperHw<gfxProduct>::overridePatIndex(AllocationType allocationType, uint64_t patIndex) const {
|
||||
if (allocationType == AllocationType::TIMESTAMP_PACKET_TAG_BUFFER) {
|
||||
constexpr uint64_t uncached = 2u;
|
||||
return uncached;
|
||||
}
|
||||
return patIndex;
|
||||
}
|
||||
|
||||
template <>
|
||||
bool ProductHelperHw<gfxProduct>::isDummyBlitWaRequired() const {
|
||||
return true;
|
||||
|
@ -1492,15 +1492,6 @@ HWTEST_F(GfxCoreHelperTest, WhenIsDynamicallyPopulatedIsTrueThenGetHighestEnable
|
||||
EXPECT_EQ(maxDualSubSlice, 16u);
|
||||
}
|
||||
|
||||
HWTEST_F(ProductHelperCommonTest, givenPatIndexAndAllocationTypeWhenCallOverridePatIndexThenSameIndexIsReturned) {
|
||||
auto &gfxCoreHelper = getHelper<ProductHelper>();
|
||||
uint64_t patIndex = 1u;
|
||||
auto allocationType = NEO::AllocationType::TIMESTAMP_PACKET_TAG_BUFFER;
|
||||
EXPECT_EQ(patIndex, gfxCoreHelper.overridePatIndex(allocationType, patIndex));
|
||||
allocationType = NEO::AllocationType::BUFFER;
|
||||
patIndex = 3u;
|
||||
EXPECT_EQ(patIndex, gfxCoreHelper.overridePatIndex(allocationType, patIndex));
|
||||
}
|
||||
HWTEST_F(ProductHelperCommonTest, givenHwHelperWhenIsFusedEuDisabledForDpasCalledThenFalseReturned) {
|
||||
auto hwInfo = *defaultHwInfo;
|
||||
auto &gfxCoreHelper = getHelper<ProductHelper>();
|
||||
|
@ -23,5 +23,4 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrde
|
||||
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenCheckIsCachingOnCpuAvailableThenAlwaysTrue, IGFX_METEORLAKE);
|
||||
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckingIsBufferPoolAllocatorSupportedThenCorrectValueIsReturned, IGFX_METEORLAKE);
|
||||
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenDebugFlagWhenCheckingIsResolveDependenciesByPipeControlsSupportedThenCorrectValueIsReturned, IGFX_METEORLAKE);
|
||||
HWTEST_EXCLUDE_PRODUCT(ProductHelperCommonTest, givenPatIndexAndAllocationTypeWhenCallOverridePatIndexThenSameIndexIsReturned, IGFX_METEORLAKE);
|
||||
HWTEST_EXCLUDE_PRODUCT(ProductHelperTestXeHpgCore, givenProductHelperWhenCheckTimestampWaitSupportForEventsThenReturnFalse, IGFX_METEORLAKE);
|
||||
|
@ -247,17 +247,6 @@ MTLTEST_F(MtlProductHelper, givenDebugFlagWhenCheckingIsResolveDependenciesByPip
|
||||
|
||||
using ProductHelperTestMtl = Test<DeviceFixture>;
|
||||
|
||||
MTLTEST_F(ProductHelperTestMtl, givenPatIndexAndAllocationTypeWhenCallOverridePatIndexThenForTimestampPacketTagBufferReturnTwo) {
|
||||
auto &helper = getHelper<ProductHelper>();
|
||||
uint64_t expectedPatIndexWhenTimestampPacketTagBuffer = 2u;
|
||||
uint64_t patIndex = 1u;
|
||||
auto allocationType = NEO::AllocationType::TIMESTAMP_PACKET_TAG_BUFFER;
|
||||
EXPECT_EQ(expectedPatIndexWhenTimestampPacketTagBuffer, helper.overridePatIndex(allocationType, patIndex));
|
||||
allocationType = NEO::AllocationType::BUFFER;
|
||||
patIndex = 3u;
|
||||
EXPECT_EQ(patIndex, helper.overridePatIndex(allocationType, patIndex));
|
||||
}
|
||||
|
||||
MTLTEST_F(ProductHelperTestMtl, givenMtlWhenCheckIsCachingOnCpuAvailableThenAlwaysFalse) {
|
||||
const auto &productHelper = getHelper<ProductHelper>();
|
||||
EXPECT_FALSE(productHelper.isCachingOnCpuAvailable());
|
||||
|
Reference in New Issue
Block a user