Dont defer BCS context initialization
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
parent
8d0e2034fe
commit
907dec5f11
|
@ -1645,20 +1645,3 @@ HWTEST_F(CommandQueueOnSpecificEngineTests, givenNotInitializedCcsOsContextWhenC
|
|||
ASSERT_EQ(&osContext, queue.gpgpuEngine->osContext);
|
||||
EXPECT_TRUE(osContext.isInitialized());
|
||||
}
|
||||
|
||||
HWTEST_F(CommandQueueOnSpecificEngineTests, givenNotInitializedBcsOsContextWhenCreatingQueueThenInitializeOsContext) {
|
||||
DebugManagerStateRestore restore{};
|
||||
DebugManager.flags.DeferOsContextInitialization.set(1);
|
||||
|
||||
auto raiiHwHelper = overrideHwHelper<FamilyType, MockHwHelper<FamilyType, 1, 1, 1>>();
|
||||
MockContext context{};
|
||||
cl_command_queue_properties properties[5] = {};
|
||||
|
||||
OsContext &osContext = *context.getDevice(0)->getEngine(aub_stream::ENGINE_BCS, EngineUsage::Regular).osContext;
|
||||
EXPECT_FALSE(osContext.isInitialized());
|
||||
|
||||
fillProperties(properties, 2, 0);
|
||||
MockCommandQueueHw<FamilyType> queue(&context, context.getDevice(0), properties);
|
||||
ASSERT_EQ(&osContext, queue.bcsEngine->osContext);
|
||||
EXPECT_TRUE(osContext.isInitialized());
|
||||
}
|
||||
|
|
|
@ -81,6 +81,7 @@ struct DeferredOsContextCreationTests : ::testing::Test {
|
|||
std::unique_ptr<MockDevice> device;
|
||||
static inline const EngineTypeUsage engineTypeUsageRegular{aub_stream::ENGINE_RCS, EngineUsage::Regular};
|
||||
static inline const EngineTypeUsage engineTypeUsageInternal{aub_stream::ENGINE_RCS, EngineUsage::Internal};
|
||||
static inline const EngineTypeUsage engineTypeUsageBlitter{aub_stream::ENGINE_BCS, EngineUsage::Regular};
|
||||
};
|
||||
|
||||
TEST_F(DeferredOsContextCreationTests, givenRegularEngineWhenCreatingOsContextThenOsContextIsInitializedDeferred) {
|
||||
|
@ -119,6 +120,18 @@ TEST_F(DeferredOsContextCreationTests, givenInternalEngineWhenCreatingOsContextT
|
|||
expectImmediateContextCreation(engineTypeUsageInternal, false);
|
||||
}
|
||||
|
||||
TEST_F(DeferredOsContextCreationTests, givenBlitterEngineWhenCreatingOsContextThenOsContextIsInitializedImmediately) {
|
||||
DebugManagerStateRestore restore{};
|
||||
|
||||
expectImmediateContextCreation(engineTypeUsageBlitter, false);
|
||||
|
||||
DebugManager.flags.DeferOsContextInitialization.set(1);
|
||||
expectImmediateContextCreation(engineTypeUsageBlitter, false);
|
||||
|
||||
DebugManager.flags.DeferOsContextInitialization.set(0);
|
||||
expectImmediateContextCreation(engineTypeUsageBlitter, false);
|
||||
}
|
||||
|
||||
TEST_F(DeferredOsContextCreationTests, givenEnsureContextInitializeCalledMultipleTimesWhenOsContextIsCreatedThenInitializeOnlyOnce) {
|
||||
struct MyOsContext : OsContext {
|
||||
MyOsContext(uint32_t contextId,
|
||||
|
|
|
@ -35,6 +35,10 @@ bool OsContext::isImmediateContextInitializationEnabled(bool isDefaultEngine) co
|
|||
return true;
|
||||
}
|
||||
|
||||
if (engineType == aub_stream::EngineType::ENGINE_BCS) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue