Disable RelaxedOrdering if UpdateTagFromWait is disabled

Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
This commit is contained in:
Dunajski, Bartosz
2023-03-20 15:33:57 +00:00
committed by Compute-Runtime-Automation
parent ecd8c6b410
commit 151aecc8bd
13 changed files with 43 additions and 21 deletions

View File

@@ -134,8 +134,8 @@ HWTEST_F(DirectSubmissionTest, givenDirectSubmissionWithoutCompletionFenceAlloca
EXPECT_EQ(nullptr, directSubmission.completionFenceAllocation);
size_t expectedAllocationsCnt = 3;
auto &gfxCoreHelper = pDevice->getGfxCoreHelper();
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (directSubmission.isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}
@@ -166,8 +166,7 @@ HWTEST_F(DirectSubmissionTest, givenDirectSubmissionWithCompletionFenceAllocatio
EXPECT_EQ(&completionFenceAllocation, directSubmission.completionFenceAllocation);
size_t expectedAllocationsCnt = 4;
auto &gfxCoreHelper = pDevice->getGfxCoreHelper();
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (directSubmission.isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}

View File

@@ -1017,6 +1017,7 @@ HWTEST_F(DirectSubmissionDispatchBufferTest, givenDebugFlagSetWhenStoppingRingbu
struct DirectSubmissionRelaxedOrderingTests : public DirectSubmissionDispatchBufferTest {
void SetUp() override {
DebugManager.flags.DirectSubmissionRelaxedOrdering.set(1);
DebugManager.flags.UpdateTaskCountFromWait.set(3);
DirectSubmissionDispatchBufferTest::SetUp();
}
@@ -2704,4 +2705,24 @@ HWTEST2_F(DirectSubmissionRelaxedOrderingTests, givenNumClientsWhenAskingIfRelax
ultCsr->registerClient();
EXPECT_EQ(4u, ultCsr->getNumClients());
EXPECT_TRUE(NEO::RelaxedOrderingHelper::isRelaxedOrderingDispatchAllowed(*ultCsr, 1));
}
HWTEST2_F(DirectSubmissionRelaxedOrderingTests, givenUpdateTagFromWaitDisabledWhenCreatingDirectSubmissionThenDisableRelaxedOrdering, IsAtLeastXeHpcCore) {
DebugManager.flags.DirectSubmissionRelaxedOrdering.set(-1);
auto csr = pDevice->getDefaultEngine().commandStreamReceiver;
DebugManager.flags.UpdateTaskCountFromWait.set(0);
{
MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>> directSubmission(*csr);
EXPECT_FALSE(directSubmission.isRelaxedOrderingEnabled());
}
DebugManager.flags.DirectSubmissionRelaxedOrdering.set(1);
{
MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>> directSubmission(*csr);
EXPECT_TRUE(directSubmission.isRelaxedOrderingEnabled());
}
}

View File

@@ -62,9 +62,8 @@ HWTEST_F(WddmDirectSubmissionTest, givenWddmWhenDirectIsInitializedAndStartedThe
EXPECT_NE(nullptr, wddmDirectSubmission->ringBuffers[1].ringBuffer);
EXPECT_NE(nullptr, wddmDirectSubmission->semaphores);
auto &gfxCoreHelper = device->getGfxCoreHelper();
size_t expectedAllocationsCnt = 3;
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (wddmDirectSubmission->isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}
@@ -99,9 +98,8 @@ HWTEST_F(WddmDirectSubmissionNoPreemptionTest, givenWddmWhenDirectIsInitializedA
EXPECT_NE(nullptr, wddmDirectSubmission->ringBuffers[1].ringBuffer);
EXPECT_NE(nullptr, wddmDirectSubmission->semaphores);
auto &gfxCoreHelper = device->getGfxCoreHelper();
size_t expectedAllocationsCnt = 3;
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (wddmDirectSubmission->isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}
@@ -142,9 +140,9 @@ HWTEST_F(WddmDirectSubmissionTest, givenWddmWhenAllocateOsResourcesThenExpectRin
bool ret = wddmDirectSubmission.allocateResources();
EXPECT_TRUE(ret);
auto &gfxCoreHelper = device->getGfxCoreHelper();
size_t expectedAllocationsCnt = 3;
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (wddmDirectSubmission.isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}
@@ -186,9 +184,9 @@ HWTEST_F(WddmDirectSubmissionTest, givenWddmWhenAllocateOsResourcesResidencyFail
bool ret = wddmDirectSubmission.allocateResources();
EXPECT_FALSE(ret);
auto &gfxCoreHelper = device->getGfxCoreHelper();
size_t expectedAllocationsCnt = 3;
if (gfxCoreHelper.isRelaxedOrderingSupported()) {
if (wddmDirectSubmission.isRelaxedOrderingEnabled()) {
expectedAllocationsCnt += 2;
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2020-2022 Intel Corporation
* Copyright (C) 2020-2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -26,6 +26,7 @@ struct MockWddmDirectSubmission : public WddmDirectSubmission<GfxFamily, Dispatc
using BaseClass::handleCompletionFence;
using BaseClass::handleResidency;
using BaseClass::isCompleted;
using BaseClass::isRelaxedOrderingEnabled;
using BaseClass::miMemFenceRequired;
using BaseClass::osContextWin;
using BaseClass::ringBuffers;