diff --git a/level_zero/core/source/cmdlist/cmdlist_hw.inl b/level_zero/core/source/cmdlist/cmdlist_hw.inl index bc6d3c4c4b..4900cea62e 100644 --- a/level_zero/core/source/cmdlist/cmdlist_hw.inl +++ b/level_zero/core/source/cmdlist/cmdlist_hw.inl @@ -214,6 +214,35 @@ ze_result_t CommandListCoreFamily::appendLaunchMultipleKernelsInd return ret; } +template +ze_result_t CommandListCoreFamily::appendEventReset(ze_event_handle_t hEvent) { + using POST_SYNC_OPERATION = typename GfxFamily::PIPE_CONTROL::POST_SYNC_OPERATION; + auto event = Event::fromHandle(hEvent); + + uint64_t baseAddr = event->getGpuAddress(); + size_t eventOffset = 0; + if (event->isTimestampEvent) { + eventOffset = offsetof(TimestampPacketStorage::Packet, contextEnd); + event->resetPackets(); + } + commandContainer.addToResidencyContainer(&event->getAllocation()); + if (isCopyOnly()) { + NEO::EncodeMiFlushDW::programMiFlushDw(*commandContainer.getCommandStream(), event->getGpuAddress(), Event::STATE_CLEARED, false, true); + } else { + NEO::PipeControlArgs args; + args.dcFlushEnable = (!event->signalScope) ? false : true; + NEO::MemorySynchronizationCommands::addPipeControlAndProgramPostSyncOperation( + *commandContainer.getCommandStream(), + POST_SYNC_OPERATION::POST_SYNC_OPERATION_WRITE_IMMEDIATE_DATA, + ptrOffset(baseAddr, eventOffset), + Event::STATE_CLEARED, + commandContainer.getDevice()->getHardwareInfo(), + args); + } + + return ZE_RESULT_SUCCESS; +} + template ze_result_t CommandListCoreFamily::appendBarrier(ze_event_handle_t hSignalEvent, uint32_t numWaitEvents, @@ -1467,34 +1496,6 @@ ze_result_t CommandListCoreFamily::appendSignalEvent(ze_event_han return ZE_RESULT_SUCCESS; } -template -ze_result_t CommandListCoreFamily::appendEventReset(ze_event_handle_t hEvent) { - using POST_SYNC_OPERATION = typename GfxFamily::PIPE_CONTROL::POST_SYNC_OPERATION; - auto event = Event::fromHandle(hEvent); - - uint64_t baseAddr = event->getGpuAddress(); - size_t eventOffset = 0; - if (event->isTimestampEvent) { - eventOffset = offsetof(TimestampPacketStorage::Packet, contextEnd); - } - commandContainer.addToResidencyContainer(&event->getAllocation()); - if (isCopyOnly()) { - NEO::EncodeMiFlushDW::programMiFlushDw(*commandContainer.getCommandStream(), event->getGpuAddress(), Event::STATE_CLEARED, false, true); - } else { - NEO::PipeControlArgs args; - args.dcFlushEnable = (!event->signalScope) ? false : true; - NEO::MemorySynchronizationCommands::addPipeControlAndProgramPostSyncOperation( - *commandContainer.getCommandStream(), - POST_SYNC_OPERATION::POST_SYNC_OPERATION_WRITE_IMMEDIATE_DATA, - ptrOffset(baseAddr, eventOffset), - Event::STATE_CLEARED, - commandContainer.getDevice()->getHardwareInfo(), - args); - } - - return ZE_RESULT_SUCCESS; -} - template ze_result_t CommandListCoreFamily::appendWaitOnEvents(uint32_t numEvents, ze_event_handle_t *phEvent) { diff --git a/level_zero/core/source/event/event.cpp b/level_zero/core/source/event/event.cpp index 26eb0a84c0..6e7bf87814 100644 --- a/level_zero/core/source/event/event.cpp +++ b/level_zero/core/source/event/event.cpp @@ -19,8 +19,6 @@ #include "shared/source/memory_manager/memory_operations_handler.h" #include "shared/source/utilities/cpuintrinsics.h" -#include "level_zero/core/source/cmdlist/cmdlist.h" -#include "level_zero/core/source/cmdqueue/cmdqueue.h" #include "level_zero/core/source/device/device.h" #include "level_zero/core/source/device/device_imp.h" #include "level_zero/tools/source/metrics/metric.h" @@ -58,52 +56,23 @@ ze_result_t EventPoolImp::initialize(DriverHandle *driver, uint32_t numDevices, maxRootDeviceIndex = rootDeviceIndices[0]; } - if (this->devices.size() > 1) { - this->allocOnDevice = false; - } - - if (allocOnDevice) { - ze_command_queue_desc_t cmdQueueDesc = {}; - cmdQueueDesc.ordinal = 0; - cmdQueueDesc.index = 0; - cmdQueueDesc.flags = 0; - cmdQueueDesc.stype = ZE_STRUCTURE_TYPE_COMMAND_QUEUE_DESC; - cmdQueueDesc.mode = ZE_COMMAND_QUEUE_MODE_SYNCHRONOUS; - ze_result_t returnValue = ZE_RESULT_SUCCESS; - eventPoolCommandList = - CommandList::createImmediate( - static_cast(this->devices[0])->neoDevice->getHardwareInfo().platform.eProductFamily, - this->devices[0], - &cmdQueueDesc, - true, - NEO::EngineGroupType::RenderCompute, - returnValue); - - if (!this->eventPoolCommandList) { - this->allocOnDevice = false; - } - } - eventPoolAllocations = new NEO::MultiGraphicsAllocation(maxRootDeviceIndex); uint32_t rootDeviceIndex = rootDeviceIndices.at(0); auto deviceBitfield = devices[0]->getNEODevice()->getDeviceBitfield(); - auto allocationType = isEventPoolUsedForTimestamp ? NEO::GraphicsAllocation::AllocationType::TIMESTAMP_PACKET_TAG_BUFFER : NEO::GraphicsAllocation::AllocationType::BUFFER_HOST_MEMORY; - if (this->allocOnDevice) { - allocationType = NEO::GraphicsAllocation::AllocationType::GPU_TIMESTAMP_DEVICE_BUFFER; - } - NEO::AllocationProperties eventPoolAllocationProperties{rootDeviceIndex, - true, - alignUp(numEvents * eventSize, MemoryConstants::pageSize64k), - allocationType, - deviceBitfield.count() > 1, - false, - deviceBitfield}; - eventPoolAllocationProperties.alignment = MemoryConstants::cacheLineSize; + NEO::AllocationProperties unifiedMemoryProperties{rootDeviceIndex, + true, + alignUp(numEvents * eventSize, MemoryConstants::pageSize64k), + isEventPoolUsedForTimestamp ? NEO::GraphicsAllocation::AllocationType::TIMESTAMP_PACKET_TAG_BUFFER + : NEO::GraphicsAllocation::AllocationType::BUFFER_HOST_MEMORY, + deviceBitfield.count() > 1, + deviceBitfield.count() > 1, + deviceBitfield}; + unifiedMemoryProperties.alignment = eventAlignment; void *eventPoolPtr = driver->getMemoryManager()->createMultiGraphicsAllocation(rootDeviceIndices, - eventPoolAllocationProperties, + unifiedMemoryProperties, *eventPoolAllocations); if (!eventPoolPtr) { return ZE_RESULT_ERROR_OUT_OF_HOST_MEMORY; @@ -119,11 +88,6 @@ EventPoolImp::~EventPoolImp() { } delete eventPoolAllocations; eventPoolAllocations = nullptr; - - if (eventPoolCommandList) { - eventPoolCommandList->destroy(); - eventPoolCommandList = nullptr; - } } ze_result_t EventPoolImp::getIpcHandle(ze_ipc_event_pool_handle_t *pIpcHandle) { @@ -158,10 +122,6 @@ Event *Event::create(EventPool *eventPool, const ze_event_desc_t *desc, Device * event->timestampsData = std::make_unique(); } - if (eventPool->allocOnDevice) { - event->allocOnDevice = true; - } - auto alloc = eventPool->getAllocation().getGraphicsAllocation(device->getNEODevice()->getRootDeviceIndex()); uint64_t baseHostAddr = reinterpret_cast(alloc->getUnderlyingBuffer()); @@ -172,10 +132,6 @@ Event *Event::create(EventPool *eventPool, const ze_event_desc_t *desc, Device * event->csr = static_cast(device)->neoDevice->getDefaultEngine().commandStreamReceiver; event->reset(); - if (event->allocOnDevice) { - eventPool->eventPoolCommandList->appendEventReset(event->toHandle()); - } - return event; } @@ -232,10 +188,6 @@ void EventImp::assignTimestampData(void *address) { } } -uint64_t Event::getGpuAddress() { - return gpuAddress; -} - ze_result_t Event::destroy() { delete this; return ZE_RESULT_SUCCESS; @@ -340,10 +292,6 @@ ze_result_t EventImp::hostSynchronize(uint64_t timeout) { } ze_result_t EventImp::reset() { - if (allocOnDevice) { - return ZE_RESULT_SUCCESS; - } - resetPackets(); return hostEventSetValue(Event::STATE_INITIAL); } diff --git a/level_zero/core/source/event/event.h b/level_zero/core/source/event/event.h index 9c33bd2023..7d990a6dee 100644 --- a/level_zero/core/source/event/event.h +++ b/level_zero/core/source/event/event.h @@ -48,18 +48,17 @@ struct Event : _ze_event_handle_t { void increasePacketsInUse() { packetsInUse++; } void resetPackets() { packetsInUse = 0; } + uint64_t getGpuAddress() { return gpuAddress; } uint32_t getPacketsInUse() { return packetsInUse; } uint64_t getTimestampPacketAddress(); - virtual uint64_t getGpuAddress(); void *hostAddress = nullptr; + uint64_t gpuAddress; uint32_t packetsInUse; - uint64_t gpuAddress = 0u; ze_event_scope_flags_t signalScope = 0u; ze_event_scope_flags_t waitScope = 0u; bool isTimestampEvent = false; - bool allocOnDevice = false; std::unique_ptr timestampsData = nullptr; uint64_t globalStartTS; @@ -119,12 +118,9 @@ struct EventPool : _ze_event_pool_handle_t { virtual NEO::MultiGraphicsAllocation &getAllocation() { return *eventPoolAllocations; } - virtual size_t getEventSize() = 0; + virtual uint32_t getEventSize() = 0; bool isEventPoolUsedForTimestamp = false; - bool allocOnDevice = false; - - CommandList *eventPoolCommandList = nullptr; protected: NEO::MultiGraphicsAllocation *eventPoolAllocations = nullptr; @@ -135,10 +131,6 @@ struct EventPoolImp : public EventPool { if (flags & ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP) { isEventPoolUsedForTimestamp = true; } - - if (!(flags & ZE_EVENT_POOL_FLAG_HOST_VISIBLE)) { - allocOnDevice = true; - } } ze_result_t initialize(DriverHandle *driver, @@ -156,7 +148,7 @@ struct EventPoolImp : public EventPool { ze_result_t createEvent(const ze_event_desc_t *desc, ze_event_handle_t *phEvent) override; - size_t getEventSize() override { return eventSize; } + uint32_t getEventSize() override { return eventSize; } size_t getNumEvents() { return numEvents; } Device *getDevice() override { return devices[0]; } diff --git a/level_zero/core/test/unit_tests/gen12lp/test_events_gen12lp.cpp b/level_zero/core/test/unit_tests/gen12lp/test_events_gen12lp.cpp index 9adb7fdae3..b681e4079e 100644 --- a/level_zero/core/test/unit_tests/gen12lp/test_events_gen12lp.cpp +++ b/level_zero/core/test/unit_tests/gen12lp/test_events_gen12lp.cpp @@ -20,7 +20,7 @@ struct TimestampEvent : public Test { DeviceFixture::SetUp(); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/mocks/mock_event.h b/level_zero/core/test/unit_tests/mocks/mock_event.h index a4155a8463..53c7320755 100644 --- a/level_zero/core/test/unit_tests/mocks/mock_event.h +++ b/level_zero/core/test/unit_tests/mocks/mock_event.h @@ -72,7 +72,7 @@ struct Mock : public EventPool { MOCK_METHOD2(reserveEventFromPool, ze_result_t(int index, ::L0::Event *event)); MOCK_METHOD1(releaseEventToPool, ze_result_t(::L0::Event *event)); MOCK_METHOD0(getDevice, Device *()); - MOCK_METHOD0(getEventSize, size_t()); + MOCK_METHOD0(getEventSize, uint32_t()); std::vector pool; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp index 5a4676451c..ab6cced218 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp @@ -1033,7 +1033,7 @@ HWTEST2_F(CommandListCreate, givenCopyCommandListWhenProfilingBeforeCommandForCo commandList->initialize(device, NEO::EngineGroupType::Copy); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; @@ -1070,7 +1070,7 @@ HWTEST2_F(CommandListCreate, givenCopyCommandListWhenProfilingAfterCommandForCop commandList->initialize(device, NEO::EngineGroupType::Copy); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_2.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_2.cpp index 9ec3e4afde..3c9488b920 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_2.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_2.cpp @@ -1079,7 +1079,7 @@ HWTEST2_F(CommandListCreate, givenCopyCommandListWhenTimestampPassedToMemoryCopy void *srcPtr = reinterpret_cast(0x1234); void *dstPtr = reinterpret_cast(0x2345); ze_event_pool_desc_t eventPoolDesc = {}; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; eventPoolDesc.count = 1; ze_event_desc_t eventDesc = {}; @@ -1170,7 +1170,7 @@ HWTEST2_F(CommandListCreate, givenCommandListWhenTimestampPassedToMemoryCopyThen ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_event_reset.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_event_reset.cpp index 35ac84a831..f894bdca7a 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_event_reset.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_event_reset.cpp @@ -129,7 +129,7 @@ HWTEST2_F(CommandListAppendEventReset, givenTimestampEventUsedInResetThenPipeCon ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; @@ -170,7 +170,6 @@ HWTEST2_F(CommandListAppendEventReset, givenEventWithHostScopeUsedInResetThenPip ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_launch_kernel.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_launch_kernel.cpp index f561617225..4128759bf3 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_launch_kernel.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_launch_kernel.cpp @@ -292,7 +292,7 @@ HWTEST2_F(CommandListAppendLaunchKernel, givenTimestampEventsWhenAppendingKernel auto usedSpaceBefore = commandList->commandContainer.getCommandStream()->getUsed(); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; @@ -382,7 +382,7 @@ HWTEST2_F(CommandListAppendLaunchKernel, givenKernelLaunchWithTSEventAndScopeFla auto usedSpaceBefore = commandList->commandContainer.getCommandStream()->getUsed(); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; const ze_event_desc_t eventDesc = { ZE_STRUCTURE_TYPE_EVENT_DESC, diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_signal_event.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_signal_event.cpp index a5a89cea62..d6f99e6a4e 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_signal_event.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_signal_event.cpp @@ -193,7 +193,7 @@ HWTEST2_F(CommandListAppendSignalEvent, givenTimestampEventUsedInSignalThenPipeC ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_blit.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_blit.cpp index eafec05282..a0f64cf247 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_blit.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_blit.cpp @@ -185,7 +185,7 @@ HWTEST2_F(AppendMemoryCopy, givenCopyCommandListWhenTimestampPassedToMemoryCopyR commandList->initialize(device, NEO::EngineGroupType::Copy); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; @@ -244,7 +244,7 @@ HWTEST2_F(AppendMemoryCopy, givenCopyCommandListWhenTimestampPassedToImageCopyBl commandList->initialize(device, NEO::EngineGroupType::Copy); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; diff --git a/level_zero/core/test/unit_tests/sources/event/test_event.cpp b/level_zero/core/test/unit_tests/sources/event/test_event.cpp index f0c3cb3a41..583c4213c4 100644 --- a/level_zero/core/test/unit_tests/sources/event/test_event.cpp +++ b/level_zero/core/test/unit_tests/sources/event/test_event.cpp @@ -30,7 +30,7 @@ TEST_F(EventPoolCreate, GivenEventPoolThenAllocationContainsAtLeast16Bytes) { auto allocation = &eventPool->getAllocation(); ASSERT_NE(nullptr, allocation); - size_t minAllocationSize = eventPool->getEventSize(); + uint32_t minAllocationSize = eventPool->getEventSize(); EXPECT_GE(allocation->getGraphicsAllocation(device->getNEODevice()->getRootDeviceIndex())->getUnderlyingBufferSize(), minAllocationSize); } @@ -38,7 +38,7 @@ TEST_F(EventPoolCreate, GivenEventPoolThenAllocationContainsAtLeast16Bytes) { TEST_F(EventPoolCreate, givenTimestampEventsThenEventSizeSufficientForAllKernelTimestamps) { ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; std::unique_ptr eventPool(EventPool::create(driverHandle.get(), 0, nullptr, &eventPoolDesc)); ASSERT_NE(nullptr, eventPool); @@ -142,37 +142,6 @@ TEST_F(EventPoolCreate, GivenDeviceThenEventPoolIsCreated) { eventPool->destroy(); } -TEST_F(EventPoolCreate, whenHostVisibleFlagNotSetThenEventAllocationIsOnDevice) { - ze_event_pool_desc_t eventPoolDesc = { - ZE_STRUCTURE_TYPE_EVENT_POOL_DESC, - nullptr, - 0u, - 4}; - - auto deviceHandle = device->toHandle(); - auto eventPool = EventPool::create(driverHandle.get(), 1, &deviceHandle, &eventPoolDesc); - - ASSERT_NE(nullptr, eventPool); - - EXPECT_EQ(NEO::GraphicsAllocation::AllocationType::GPU_TIMESTAMP_DEVICE_BUFFER, eventPool->getAllocation().getAllocationType()); - eventPool->destroy(); -} - -TEST_F(EventPoolCreate, whenHostVisibleFlagNotSetThenEventPoolCommandListIsCreated) { - ze_event_pool_desc_t eventPoolDesc = { - ZE_STRUCTURE_TYPE_EVENT_POOL_DESC, - nullptr, - 0u, - 4}; - - auto deviceHandle = device->toHandle(); - auto eventPool = EventPool::create(driverHandle.get(), 1, &deviceHandle, &eventPoolDesc); - - ASSERT_NE(nullptr, eventPool->eventPoolCommandList); - - eventPool->destroy(); -} - struct EventCreateAllocationResidencyTest : public ::testing::Test { void SetUp() override { neoDevice = NEO::MockDevice::createWithNewExecutionEnvironment(NEO::defaultHwInfo.get()); @@ -201,7 +170,7 @@ class TimestampEventCreate : public Test { DeviceFixture::SetUp(); ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP | ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_KERNEL_TIMESTAMP; ze_event_desc_t eventDesc = {}; eventDesc.index = 0; @@ -244,7 +213,7 @@ TEST_F(TimestampEventCreate, givenSingleTimestampEventThenAllocationSizeCreatedF auto allocation = &eventPool->getAllocation(); ASSERT_NE(nullptr, allocation); - size_t minTimestampEventAllocation = eventPool->getEventSize(); + uint32_t minTimestampEventAllocation = eventPool->getEventSize(); EXPECT_GE(allocation->getGraphicsAllocation(device->getNEODevice()->getRootDeviceIndex())->getUnderlyingBufferSize(), minTimestampEventAllocation); } @@ -332,37 +301,6 @@ TEST_F(EventPoolCreateMultiDevice, whenCreatingEventPoolWithMultipleDevicesThenE delete[] devices; } -TEST_F(EventPoolCreateMultiDevice, whenCreatingEventPoolWithMultipleDevicesAndHostVisibleFlagNotSetThenEventPoolCreateSucceedsButEventAllocNotPlacedOnDevice) { - ze_event_pool_desc_t eventPoolDesc = {}; - eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; - eventPoolDesc.count = 32; - - uint32_t deviceCount = 0; - ze_result_t result = zeDeviceGet(driverHandle.get(), &deviceCount, nullptr); - EXPECT_EQ(ZE_RESULT_SUCCESS, result); - EXPECT_EQ(deviceCount, numRootDevices); - - ze_device_handle_t *devices = new ze_device_handle_t[deviceCount]; - result = zeDeviceGet(driverHandle.get(), &deviceCount, devices); - EXPECT_EQ(ZE_RESULT_SUCCESS, result); - - std::unique_ptr eventPool(EventPool::create(driverHandle.get(), - deviceCount, - devices, - &eventPoolDesc)); - EXPECT_NE(nullptr, eventPool); - - auto allocation = &eventPool->getAllocation(); - EXPECT_NE(nullptr, allocation); - - EXPECT_EQ(allocation->getGraphicsAllocations().size(), numRootDevices); - - EXPECT_EQ(false, eventPool->allocOnDevice); - - delete[] devices; -} - TEST_F(EventPoolCreateMultiDevice, whenCreatingEventPoolWithNoDevicesThenEventPoolCreatedWithOneDevice) { ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; diff --git a/level_zero/tools/test/unit_tests/sources/metrics/test_metric_query_pool_1.cpp b/level_zero/tools/test/unit_tests/sources/metrics/test_metric_query_pool_1.cpp index 860200598b..514771992b 100644 --- a/level_zero/tools/test/unit_tests/sources/metrics/test_metric_query_pool_1.cpp +++ b/level_zero/tools/test/unit_tests/sources/metrics/test_metric_query_pool_1.cpp @@ -537,7 +537,7 @@ TEST_F(MetricQueryPoolTest, givenCorrectArgumentsWhenZeEventPoolCreateIsCalledTh ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; // Create event pool. @@ -554,7 +554,7 @@ TEST_F(MetricQueryPoolTest, givenIncorrectArgumentsWhenZeEventCreateIsCalledThen ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; // Create event pool. @@ -572,7 +572,7 @@ TEST_F(MetricQueryPoolTest, givenCorrectArgumentsWhenZeEventCreateIsCalledThenRe ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {}; @@ -606,7 +606,7 @@ TEST_F(MetricQueryPoolTest, givenIncorrectArgumentsWhenZetCommandListAppendMetri ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {}; @@ -717,7 +717,7 @@ TEST_F(MetricQueryPoolTest, givenCorrectArgumentsWhenZetCommandListAppendMetricQ ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {}; @@ -834,7 +834,7 @@ TEST_F(MetricQueryPoolTest, givenIncorrectArgumentsWhenZetMetricQueryGetDataIsCa ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {}; @@ -950,7 +950,7 @@ TEST_F(MetricQueryPoolTest, givenCorrectArgumentsWhenZetMetricQueryGetDataIsCall ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {}; @@ -1094,7 +1094,7 @@ TEST_F(MetricQueryPoolTest, givenCorrectArgumentsWhenZetMetricQueryGetDataIsCall ze_event_pool_handle_t eventPoolHandle = {}; ze_event_pool_desc_t eventPoolDesc = {}; eventPoolDesc.count = 1; - eventPoolDesc.flags = ZE_EVENT_POOL_FLAG_HOST_VISIBLE; + eventPoolDesc.flags = 0; eventPoolDesc.stype = ZE_STRUCTURE_TYPE_EVENT_POOL_DESC; ze_event_handle_t eventHandle = {};