diff --git a/opencl/source/event/event.cpp b/opencl/source/event/event.cpp index 17561cc606..c257518913 100644 --- a/opencl/source/event/event.cpp +++ b/opencl/source/event/event.cpp @@ -236,14 +236,6 @@ TaskCountType Event::peekBcsTaskCountFromCommandQueue() { } } -bool Event::isBcsEvent() const { - return bcsState.isValid() && bcsState.taskCount > 0; -} - -aub_stream::EngineType Event::getBcsEngineType() const { - return bcsState.engineType; -} - TaskCountType Event::getCompletionStamp() const { return this->taskCount; } diff --git a/opencl/source/event/event.h b/opencl/source/event/event.h index ecba58dbae..dd7ed18471 100644 --- a/opencl/source/event/event.h +++ b/opencl/source/event/event.h @@ -92,8 +92,6 @@ class Event : public BaseObject<_cl_event>, public IDNode { void setupBcs(aub_stream::EngineType bcsEngineType); TaskCountType peekBcsTaskCountFromCommandQueue(); - bool isBcsEvent() const; - aub_stream::EngineType getBcsEngineType() const; TaskCountType getCompletionStamp() const; void updateCompletionStamp(TaskCountType taskCount, TaskCountType bcsTaskCount, TaskCountType tasklevel, FlushStamp flushStamp); diff --git a/opencl/source/helpers/properties_helper.cpp b/opencl/source/helpers/properties_helper.cpp index 1e4959b9b2..08bf10b3c9 100644 --- a/opencl/source/helpers/properties_helper.cpp +++ b/opencl/source/helpers/properties_helper.cpp @@ -39,21 +39,16 @@ void EventsRequest::fillCsrDependenciesForTimestampPacketContainer(CsrDependenci continue; } - const auto sameRootDevice = event->getCommandQueue()->getClDevice().getRootDeviceIndex() == currentCsr.getRootDeviceIndex(); + auto sameRootDevice = event->getCommandQueue()->getClDevice().getRootDeviceIndex() == currentCsr.getRootDeviceIndex(); if (!sameRootDevice) { continue; } - CommandStreamReceiver *dependentCsr; - if (event->isBcsEvent()) { - dependentCsr = event->getCommandQueue()->getBcsCommandStreamReceiver(event->getBcsEngineType()); - } else { - dependentCsr = &event->getCommandQueue()->getGpgpuCommandStreamReceiver(); - } - const auto sameCsr = (dependentCsr == ¤tCsr); - const auto pushDependency = (CsrDependencies::DependenciesType::OnCsr == depsType && sameCsr) || - (CsrDependencies::DependenciesType::OutOfCsr == depsType && !sameCsr) || - (CsrDependencies::DependenciesType::All == depsType); + auto &dependentCsr = event->getCommandQueue()->getGpgpuCommandStreamReceiver(); + auto sameCsr = (&dependentCsr == ¤tCsr); + bool pushDependency = (CsrDependencies::DependenciesType::OnCsr == depsType && sameCsr) || + (CsrDependencies::DependenciesType::OutOfCsr == depsType && !sameCsr) || + (CsrDependencies::DependenciesType::All == depsType); if (pushDependency) { csrDeps.timestampPacketContainer.push_back(timestampPacketContainer); @@ -61,9 +56,9 @@ void EventsRequest::fillCsrDependenciesForTimestampPacketContainer(CsrDependenci if (!sameCsr) { const auto &productHelper = event->getCommandQueue()->getDevice().getProductHelper(); if (productHelper.isDcFlushAllowed()) { - if (!dependentCsr->isLatestTaskCountFlushed()) { - flushDependentCsr(*dependentCsr, csrDeps); - currentCsr.makeResident(*dependentCsr->getTagAllocation()); + if (!dependentCsr.isLatestTaskCountFlushed()) { + flushDependentCsr(dependentCsr, csrDeps); + currentCsr.makeResident(*dependentCsr.getTagAllocation()); } } } diff --git a/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_4_tests.cpp b/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_4_tests.cpp index fe14e4b5bb..9802fe8a05 100644 --- a/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_4_tests.cpp +++ b/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_4_tests.cpp @@ -518,12 +518,8 @@ HWTEST_F(CrossDeviceDependenciesTests, givenWaitListWithEventBlockedByUserEventW HardwareParse csHwParser; csHwParser.parseCommands(pCmdQ1->getGpgpuCommandStreamReceiver().getCS(0)); auto semaphores = findAll(csHwParser.cmdList.begin(), csHwParser.cmdList.end()); - if (pCmdQ1->getBcsCommandStreamReceiver(aub_stream::EngineType::ENGINE_BCS) && - pCmdQ1->getBcsCommandStreamReceiver(aub_stream::EngineType::ENGINE_BCS)->peekTaskCount() > 0) { - EXPECT_EQ(1u, semaphores.size()); - } else { - EXPECT_EQ(0u, semaphores.size()); - } + + EXPECT_EQ(0u, semaphores.size()); } buffer->release(); } diff --git a/opencl/test/unit_test/event/event_tests.cpp b/opencl/test/unit_test/event/event_tests.cpp index 58ada5ee58..a9a74fae7b 100644 --- a/opencl/test/unit_test/event/event_tests.cpp +++ b/opencl/test/unit_test/event/event_tests.cpp @@ -264,27 +264,6 @@ TEST(Event, givenReadyEventsOnWaitlistWhenCheckingUserEventDependeciesThenFalseI EXPECT_FALSE(userEventDependencies); } -TEST_F(EventTest, givenBcsStateWhenCheckingIsBcsEventAndEngineTypeThenCorrectValuesAreReturned) { - MockEvent event(pCmdQ, 0, 0, 0); - { - event.bcsState.engineType = aub_stream::EngineType::NUM_ENGINES; - EXPECT_FALSE(event.isBcsEvent()); - EXPECT_EQ(aub_stream::EngineType::NUM_ENGINES, event.getBcsEngineType()); - } - { - event.bcsState.engineType = aub_stream::EngineType::ENGINE_BCS; - event.bcsState.taskCount = 0u; - EXPECT_FALSE(event.isBcsEvent()); - EXPECT_EQ(aub_stream::EngineType::ENGINE_BCS, event.getBcsEngineType()); - } - { - event.bcsState.engineType = aub_stream::EngineType::ENGINE_BCS1; - event.bcsState.taskCount = 1u; - EXPECT_TRUE(event.isBcsEvent()); - EXPECT_EQ(aub_stream::EngineType::ENGINE_BCS1, event.getBcsEngineType()); - } -} - TEST_F(EventTest, WhenGettingClEventCommandExecutionStatusThenCorrectSizeIsReturned) { Event event(pCmdQ, CL_COMMAND_NDRANGE_KERNEL, 1, 5); cl_int eventStatus = -1; diff --git a/opencl/test/unit_test/helpers/timestamp_packet_1_tests.cpp b/opencl/test/unit_test/helpers/timestamp_packet_1_tests.cpp index 4f3b8eb59b..020a50d4f1 100644 --- a/opencl/test/unit_test/helpers/timestamp_packet_1_tests.cpp +++ b/opencl/test/unit_test/helpers/timestamp_packet_1_tests.cpp @@ -23,10 +23,9 @@ #include "opencl/source/platform/platform.h" #include "opencl/test/unit_test/command_queue/hardware_interface_helper.h" #include "opencl/test/unit_test/helpers/timestamp_packet_tests.h" -#include "opencl/test/unit_test/mocks/mock_event.h" #include "opencl/test/unit_test/mocks/mock_mdi.h" #include "opencl/test/unit_test/mocks/mock_platform.h" -#include "opencl/test/unit_test/test_macros/test_checks_ocl.h" + using namespace NEO; HWCMDTEST_F(IGFX_GEN8_CORE, TimestampPacketTests, givenTimestampPacketWriteEnabledWhenEstimatingStreamSizeThenAddPipeControl) { @@ -1285,44 +1284,6 @@ HWTEST_F(TimestampPacketTests, givenTimestampPacketWriteEnabledAndDependenciesRe EXPECT_EQ(1u, semaphoresFound); // total number of semaphores found in cmdList } -HWTEST_F(TimestampPacketTests, givenTimestampPacketWriteEnabledAndDependenciesResolvedViaPipeControlsIfEventOnBlitThenStillProgramSemaphores) { - DebugManagerStateRestore restorer; - DebugManager.flags.ResolveDependenciesViaPipeControls.set(1); - DebugManager.flags.ProgramGlobalFenceAsMiMemFenceCommandInCommandStream.set(1); - using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; - - device->getUltCommandStreamReceiver().timestampPacketWriteEnabled = true; - - REQUIRE_FULL_BLITTER_OR_SKIP(*device->getExecutionEnvironment()->rootDeviceEnvironments[mockRootDeviceIndex]); - MockCommandQueueHw cmdQ1(context, device.get(), nullptr); - ASSERT_NE(nullptr, cmdQ1.getBcsCommandStreamReceiver(aub_stream::EngineType::ENGINE_BCS)); - auto &cmdStream = device->getUltCommandStreamReceiver().getCS(0); - const cl_uint eventsOnWaitlist = 1; - - MockEvent event(&cmdQ1, 0, 0, 0); - event.bcsState.engineType = aub_stream::EngineType::ENGINE_BCS; - event.bcsState.taskCount = 1u; - MockTimestampPacketContainer timestamp(*device->getGpgpuCommandStreamReceiver().getTimestampPacketAllocator(), 1); - event.addTimestampPacketNodes(timestamp); - - cl_event waitlist[] = {&event}; - ASSERT_EQ(cmdQ1.enqueueKernel(kernel->mockKernel, 1, nullptr, gws, nullptr, eventsOnWaitlist, waitlist, nullptr), CL_SUCCESS); - - HardwareParse hwParser; - hwParser.parseCommands(cmdStream, 0u); - - uint32_t semaphoresFound = 0; - - for (auto it = hwParser.cmdList.begin(); it != hwParser.cmdList.end(); ++it) { - auto semaphoreCmd = genCmdCast(*it); - if (semaphoreCmd) { - ++semaphoresFound; - verifySemaphore(semaphoreCmd, timestamp.getNode(0), 0); - } - } - EXPECT_EQ(1u, semaphoresFound); -} - HWTEST_F(TimestampPacketTests, givenTimestampPacketWriteEnabledAndDependenciesResolvedViaPipeControlsAndSingleIOQWhenEnqueueKernelThenDoNotProgramSemaphoresButProgramPipeControlBeforeGpgpuWalker) { DebugManagerStateRestore restorer; DebugManager.flags.ResolveDependenciesViaPipeControls.set(1); diff --git a/opencl/test/unit_test/mocks/mock_event.h b/opencl/test/unit_test/mocks/mock_event.h index 7ae9f80372..6636dd9362 100644 --- a/opencl/test/unit_test/mocks/mock_event.h +++ b/opencl/test/unit_test/mocks/mock_event.h @@ -35,7 +35,6 @@ struct MockEvent : public BaseEventType { FORWARD_FUNC(submitCommand, BaseEventType); using BaseEventType::timeStampNode; - using Event::bcsState; using Event::calcProfilingData; using Event::calculateSubmitTimestampData; using Event::isWaitForTimestampsEnabled;