From f8c104feaac42658f4e5b529b3d6141e5ff56d06 Mon Sep 17 00:00:00 2001 From: Maciej Plewka Date: Wed, 26 Jan 2022 10:59:30 +0000 Subject: [PATCH] Use fw declaration of IndirectHeap in CommandContainer Signed-off-by: Maciej Plewka --- .../source/cmdlist/cmdlist_hw_immediate.inl | 8 +-- opencl/source/command_queue/enqueue_common.h | 12 ++-- opencl/source/command_queue/gpgpu_walker.h | 6 +- .../command_queue/hardware_interface_base.inl | 12 ++-- opencl/source/helpers/task_information.cpp | 12 ++-- ...ine_data_local_id_tests_xehp_and_later.cpp | 2 +- .../aub_multicontext_tests_xehp_and_later.cpp | 6 +- .../command_stream/aub_mi_atomic_tests.cpp | 8 +-- ..._walker_partition_tests_xehp_and_later.cpp | 6 +- .../mi_math_aub_tests_dg2_and_later.cpp | 6 +- .../command_queue/command_queue_hw_tests.cpp | 18 ++--- .../command_queue/command_queue_tests.cpp | 20 +++--- .../command_queue/dispatch_walker_tests.cpp | 4 +- .../dispatch_walker_tests_xehp_and_later.cpp | 6 +- .../enqueue_command_without_kernel_tests.cpp | 8 +-- ...and_without_kernel_tests_dg2_and_later.cpp | 8 +-- .../enqueue_copy_buffer_tests.cpp | 6 +- .../enqueue_copy_buffer_to_image_tests.cpp | 2 +- .../enqueue_copy_image_tests.cpp | 6 +- .../enqueue_copy_image_to_buffer_tests.cpp | 2 +- .../enqueue_debug_kernel_tests.cpp | 6 +- .../enqueue_fill_buffer_tests.cpp | 6 +- .../enqueue_fill_image_tests.cpp | 2 +- .../command_queue/enqueue_handler_tests.cpp | 6 +- .../enqueue_read_buffer_rect_tests.cpp | 4 +- .../enqueue_read_image_tests.cpp | 2 +- .../enqueue_write_buffer_rect_tests.cpp | 4 +- .../enqueue_write_image_tests.cpp | 2 +- .../get_size_required_buffer_tests.cpp | 38 +++++------ .../get_size_required_image_tests.cpp | 38 +++++------ .../command_queue/get_size_required_tests.cpp | 8 +-- .../command_queue/oom_buffer_tests.cpp | 18 ++--- .../command_queue/oom_image_tests.cpp | 12 ++-- .../unit_test/command_queue/oom_tests.cpp | 10 +-- .../cl_command_stream_receiver_tests.cpp | 4 +- ...and_stream_receiver_flush_task_3_tests.cpp | 6 +- .../unit_test/event/event_builder_tests.cpp | 14 ++-- opencl/test/unit_test/event/event_tests.cpp | 30 ++++---- opencl/test/unit_test/gtpin/gtpin_tests.cpp | 6 +- .../hardware_commands_helper_tests.cpp | 68 +++++++++---------- .../helpers/task_information_tests.cpp | 38 +++++------ .../indirect_heap/indirect_heap_fixture.cpp | 8 +-- .../unit_test/kernel/kernel_slm_tests.cpp | 6 +- .../memory_manager/storage_info_tests.cpp | 2 +- ...d_write_buffer_scenarios_windows_tests.cpp | 4 +- .../hw_helper_tests_xe_hpc_core.cpp | 8 +-- .../source/command_container/cmdcontainer.cpp | 46 +++++++++---- .../source/command_container/cmdcontainer.h | 24 +++---- .../command_container/command_encoder.h | 2 + .../command_container/command_encoder.inl | 1 + .../implicit_scaling_xehp_and_later.inl | 1 + .../command_stream_receiver.cpp | 10 +-- .../command_stream/command_stream_receiver.h | 2 +- .../scratch_space_controller_base.cpp | 4 +- ...cratch_space_controller_xehp_and_later.cpp | 4 +- shared/source/indirect_heap/CMakeLists.txt | 3 +- shared/source/indirect_heap/indirect_heap.h | 11 +-- .../source/indirect_heap/indirect_heap_type.h | 17 +++++ shared/test/common/cmd_parse/hw_parse.h | 4 +- .../command_container_tests.cpp | 10 +-- .../command_encoder_tests.cpp | 3 +- .../command_stream_receiver_tests.cpp | 14 ++-- 62 files changed, 347 insertions(+), 317 deletions(-) create mode 100644 shared/source/indirect_heap/indirect_heap_type.h diff --git a/level_zero/core/source/cmdlist/cmdlist_hw_immediate.inl b/level_zero/core/source/cmdlist/cmdlist_hw_immediate.inl index dd8374a679..fa2db4eb63 100644 --- a/level_zero/core/source/cmdlist/cmdlist_hw_immediate.inl +++ b/level_zero/core/source/cmdlist/cmdlist_hw_immediate.inl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020-2021 Intel Corporation + * Copyright (C) 2020-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -84,9 +84,9 @@ ze_result_t CommandListCoreFamilyImmediate::executeCommandListImm auto completionStamp = this->csr->flushTask( *commandStream, commandStreamStart, - *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::DYNAMIC_STATE)), - *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::INDIRECT_OBJECT)), - *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::SURFACE_STATE)), + *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::Type::DYNAMIC_STATE)), + *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::Type::INDIRECT_OBJECT)), + *(this->commandContainer.getIndirectHeap(NEO::IndirectHeap::Type::SURFACE_STATE)), this->csr->peekTaskLevel(), dispatchFlags, *(this->device->getNEODevice())); diff --git a/opencl/source/command_queue/enqueue_common.h b/opencl/source/command_queue/enqueue_common.h index 02eaea0e23..8c64e00583 100644 --- a/opencl/source/command_queue/enqueue_common.h +++ b/opencl/source/command_queue/enqueue_common.h @@ -726,8 +726,8 @@ CompletionStamp CommandQueueHw::enqueueNonBlocked( IndirectHeap *dsh = nullptr; IndirectHeap *ioh = nullptr; - dsh = &getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - ioh = &getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); + dsh = &getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + ioh = &getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); auto allocNeedsFlushDC = false; if (!device->isFullRangeSvm()) { @@ -811,7 +811,7 @@ CompletionStamp CommandQueueHw::enqueueNonBlocked( commandStreamStart, *dsh, *ioh, - getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), taskLevel, dispatchFlags, getDevice()); @@ -1015,9 +1015,9 @@ CompletionStamp CommandQueueHw::enqueueCommandWithoutKernel( completionStamp = getGpgpuCommandStreamReceiver().flushTask( *commandStream, commandStreamStart, - getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), taskLevel, dispatchFlags, getDevice()); diff --git a/opencl/source/command_queue/gpgpu_walker.h b/opencl/source/command_queue/gpgpu_walker.h index aa6323623b..92d78d7dba 100644 --- a/opencl/source/command_queue/gpgpu_walker.h +++ b/opencl/source/command_queue/gpgpu_walker.h @@ -123,9 +123,9 @@ IndirectHeap &getIndirectHeap(CommandQueue &commandQueue, const MultiDispatchInf // clang-format off switch (heapType) { - case IndirectHeap::DYNAMIC_STATE: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredDSH(multiDispatchInfo); break; - case IndirectHeap::INDIRECT_OBJECT: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredIOH(multiDispatchInfo); break; - case IndirectHeap::SURFACE_STATE: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredSSH(multiDispatchInfo); break; + case IndirectHeap::Type::DYNAMIC_STATE: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredDSH(multiDispatchInfo); break; + case IndirectHeap::Type::INDIRECT_OBJECT: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredIOH(multiDispatchInfo); break; + case IndirectHeap::Type::SURFACE_STATE: expectedSize = HardwareCommandsHelper::getTotalSizeRequiredSSH(multiDispatchInfo); break; } // clang-format on diff --git a/opencl/source/command_queue/hardware_interface_base.inl b/opencl/source/command_queue/hardware_interface_base.inl index 3aa7588a09..37049a70bf 100644 --- a/opencl/source/command_queue/hardware_interface_base.inl +++ b/opencl/source/command_queue/hardware_interface_base.inl @@ -261,21 +261,21 @@ void HardwareInterface::obtainIndirectHeaps(CommandQueue &commandQueu dshSize = HardwareCommandsHelper::getTotalSizeRequiredDSH(multiDispatchInfo); - commandQueue.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, dshSize, dsh); + commandQueue.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, dshSize, dsh); dsh->getSpace(colorCalcSize); - commandQueue.allocateHeapMemory(IndirectHeap::SURFACE_STATE, sshSize, ssh); + commandQueue.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, sshSize, ssh); if (iohEqualsDsh) { ioh = dsh; } else { - commandQueue.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, + commandQueue.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, HardwareCommandsHelper::getTotalSizeRequiredIOH(multiDispatchInfo), ioh); } } else { - dsh = &getIndirectHeap(commandQueue, multiDispatchInfo); - ioh = &getIndirectHeap(commandQueue, multiDispatchInfo); - ssh = &getIndirectHeap(commandQueue, multiDispatchInfo); + dsh = &getIndirectHeap(commandQueue, multiDispatchInfo); + ioh = &getIndirectHeap(commandQueue, multiDispatchInfo); + ssh = &getIndirectHeap(commandQueue, multiDispatchInfo); } } diff --git a/opencl/source/helpers/task_information.cpp b/opencl/source/helpers/task_information.cpp index 37e50c5c22..f05a9d5351 100644 --- a/opencl/source/helpers/task_information.cpp +++ b/opencl/source/helpers/task_information.cpp @@ -88,9 +88,9 @@ CompletionStamp &CommandMapUnmap::submit(uint32_t taskLevel, bool terminated) { completionStamp = commandStreamReceiver.flushTask(queueCommandStream, offset, - commandQueue.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - commandQueue.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - commandQueue.getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), taskLevel, dispatchFlags, commandQueue.getDevice()); @@ -387,9 +387,9 @@ CompletionStamp &CommandWithoutKernel::submit(uint32_t taskLevel, bool terminate completionStamp = commandStreamReceiver.flushTask(*kernelOperation->commandStream, 0, - commandQueue.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - commandQueue.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - commandQueue.getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + commandQueue.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), taskLevel, dispatchFlags, commandQueue.getDevice()); diff --git a/opencl/test/unit_test/aub_tests/command_queue/aub_inline_data_local_id_tests_xehp_and_later.cpp b/opencl/test/unit_test/aub_tests/command_queue/aub_inline_data_local_id_tests_xehp_and_later.cpp index 08ff53d0bc..4edbfe4108 100644 --- a/opencl/test/unit_test/aub_tests/command_queue/aub_inline_data_local_id_tests_xehp_and_later.cpp +++ b/opencl/test/unit_test/aub_tests/command_queue/aub_inline_data_local_id_tests_xehp_and_later.cpp @@ -201,7 +201,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterAubInlineDataTest, givenCrossThreadSize cl_event *eventWaitList = nullptr; cl_event *event = nullptr; - IndirectHeap &ih = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 2048); + IndirectHeap &ih = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 2048); auto retVal = pCmdQ->enqueueKernel( kernels[3].get(), diff --git a/opencl/test/unit_test/aub_tests/command_queue/aub_multicontext_tests_xehp_and_later.cpp b/opencl/test/unit_test/aub_tests/command_queue/aub_multicontext_tests_xehp_and_later.cpp index 4770f4f252..6e10418f3e 100644 --- a/opencl/test/unit_test/aub_tests/command_queue/aub_multicontext_tests_xehp_and_later.cpp +++ b/opencl/test/unit_test/aub_tests/command_queue/aub_multicontext_tests_xehp_and_later.cpp @@ -386,9 +386,9 @@ struct StaticWalkerPartitionFourTilesTests : EnqueueWithWalkerPartitionFourTiles dispatchFlags.guardCommandBufferWithPipeControl = true; rootCsr->flushTask(stream, 0, - rootCsr->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - rootCsr->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - rootCsr->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + rootCsr->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + rootCsr->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + rootCsr->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), 0u, dispatchFlags, rootDevice->getDevice()); rootCsr->flushBatchedSubmissions(); diff --git a/opencl/test/unit_test/aub_tests/command_stream/aub_mi_atomic_tests.cpp b/opencl/test/unit_test/aub_tests/command_stream/aub_mi_atomic_tests.cpp index 942ae43659..025ce6a22e 100644 --- a/opencl/test/unit_test/aub_tests/command_stream/aub_mi_atomic_tests.cpp +++ b/opencl/test/unit_test/aub_tests/command_stream/aub_mi_atomic_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Intel Corporation + * Copyright (C) 2021-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -69,9 +69,9 @@ struct MiAtomicAubFixture : public AUBFixture { csr->makeResident(*deviceSurface); csr->makeResident(*systemSurface); csr->flushTask(taskStream, 0, - csr->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - csr->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - csr->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + csr->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), 0u, dispatchFlags, device->getDevice()); csr->flushBatchedSubmissions(); diff --git a/opencl/test/unit_test/aub_tests/command_stream/aub_walker_partition_tests_xehp_and_later.cpp b/opencl/test/unit_test/aub_tests/command_stream/aub_walker_partition_tests_xehp_and_later.cpp index 3b85ada775..79bc1d1e58 100644 --- a/opencl/test/unit_test/aub_tests/command_stream/aub_walker_partition_tests_xehp_and_later.cpp +++ b/opencl/test/unit_test/aub_tests/command_stream/aub_walker_partition_tests_xehp_and_later.cpp @@ -240,9 +240,9 @@ struct AubWalkerPartitionZeroFixture : public AubWalkerPartitionFixture { csr->makeResident(*helperSurface); csr->flushTask(*taskStream, 0, - csr->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - csr->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - csr->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + csr->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), 0u, dispatchFlags, device->getDevice()); csr->flushBatchedSubmissions(); diff --git a/opencl/test/unit_test/aub_tests/command_stream/mi_math_aub_tests_dg2_and_later.cpp b/opencl/test/unit_test/aub_tests/command_stream/mi_math_aub_tests_dg2_and_later.cpp index cf2944c02e..39b84a0439 100644 --- a/opencl/test/unit_test/aub_tests/command_stream/mi_math_aub_tests_dg2_and_later.cpp +++ b/opencl/test/unit_test/aub_tests/command_stream/mi_math_aub_tests_dg2_and_later.cpp @@ -43,9 +43,9 @@ struct MiMath : public AUBFixture, public ::testing::Test { dispatchFlags.guardCommandBufferWithPipeControl = true; csr->flushTask(*taskStream, 0, - csr->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u), - csr->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u), - csr->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u), + csr->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u), + csr->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u), 0u, dispatchFlags, device->getDevice()); csr->flushBatchedSubmissions(); diff --git a/opencl/test/unit_test/command_queue/command_queue_hw_tests.cpp b/opencl/test/unit_test/command_queue/command_queue_hw_tests.cpp index c15df3280b..93eb8d1383 100644 --- a/opencl/test/unit_test/command_queue/command_queue_hw_tests.cpp +++ b/opencl/test/unit_test/command_queue/command_queue_hw_tests.cpp @@ -581,9 +581,9 @@ HWTEST_F(BlockedCommandQueueTest, givenCommandQueueWhenBlockedCommandIsBeingSubm pCmdQ->enqueueKernel(mockKernel, 1, &offset, &size, &size, 1, &blockedEvent, nullptr); userEvent.setStatus(CL_COMPLETE); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 4096u); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 4096u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 4096u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 4096u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096u); uint32_t defaultSshUse = UnitTestHelper::getDefaultSshUsage(); @@ -604,9 +604,9 @@ HWTEST_F(BlockedCommandQueueTest, givenCommandQueueWithUsedHeapsWhenBlockedComma cl_event blockedEvent = &userEvent; - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 4096u); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 4096u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 4096u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 4096u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096u); auto spaceToUse = 4u; @@ -636,9 +636,9 @@ HWTEST_F(BlockedCommandQueueTest, givenCommandQueueWhichHasSomeUnusedHeapsWhenBl cl_event blockedEvent = &userEvent; - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 4096u); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 4096u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 4096u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 4096u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096u); auto iohBase = ioh.getCpuBase(); auto dshBase = dsh.getCpuBase(); diff --git a/opencl/test/unit_test/command_queue/command_queue_tests.cpp b/opencl/test/unit_test/command_queue/command_queue_tests.cpp index cfb2add06d..c88dcc3e52 100644 --- a/opencl/test/unit_test/command_queue/command_queue_tests.cpp +++ b/opencl/test/unit_test/command_queue/command_queue_tests.cpp @@ -576,7 +576,7 @@ HWTEST_P(CommandQueueIndirectHeapTest, givenIndirectObjectHeapWhenItIsQueriedFor auto &commandStreamReceiver = pClDevice->getUltCommandStreamReceiver(); auto &indirectHeap = cmdQ.getIndirectHeap(this->GetParam(), 8192); - if (this->GetParam() == IndirectHeap::INDIRECT_OBJECT && commandStreamReceiver.canUse4GbHeaps) { + if (this->GetParam() == IndirectHeap::Type::INDIRECT_OBJECT && commandStreamReceiver.canUse4GbHeaps) { EXPECT_TRUE(indirectHeap.getGraphicsAllocation()->is32BitAllocation()); } else { EXPECT_FALSE(indirectHeap.getGraphicsAllocation()->is32BitAllocation()); @@ -588,7 +588,7 @@ HWTEST_P(CommandQueueIndirectHeapTest, GivenIndirectHeapWhenGettingAvailableSpac MockCommandQueue cmdQ(context.get(), pClDevice, props, false); auto &indirectHeap = cmdQ.getIndirectHeap(this->GetParam(), sizeof(uint32_t)); - if (this->GetParam() == IndirectHeap::SURFACE_STATE) { + if (this->GetParam() == IndirectHeap::Type::SURFACE_STATE) { size_t expectedSshUse = cmdQ.getGpgpuCommandStreamReceiver().defaultSshSize - MemoryConstants::pageSize - UnitTestHelper::getDefaultSshUsage(); EXPECT_EQ(expectedSshUse, indirectHeap.getAvailableSpace()); } else { @@ -615,7 +615,7 @@ TEST_P(CommandQueueIndirectHeapTest, WhenGettingIndirectHeapWithNewSizeThenMaxAv const auto &indirectHeap = cmdQ.getIndirectHeap(this->GetParam(), requiredSize); ASSERT_NE(nullptr, &indirectHeap); - if (this->GetParam() == IndirectHeap::SURFACE_STATE) { + if (this->GetParam() == IndirectHeap::Type::SURFACE_STATE) { //no matter what SSH is always capped EXPECT_EQ(cmdQ.getGpgpuCommandStreamReceiver().defaultSshSize - MemoryConstants::pageSize, indirectHeap.getMaxAvailableSpace()); @@ -653,11 +653,11 @@ HWTEST_P(CommandQueueIndirectHeapTest, givenCommandStreamReceiverWithReusableAll auto &commandStreamReceiver = pClDevice->getUltCommandStreamReceiver(); auto allocationType = GraphicsAllocation::AllocationType::LINEAR_STREAM; - if (this->GetParam() == IndirectHeap::INDIRECT_OBJECT && commandStreamReceiver.canUse4GbHeaps) { + if (this->GetParam() == IndirectHeap::Type::INDIRECT_OBJECT && commandStreamReceiver.canUse4GbHeaps) { allocationType = GraphicsAllocation::AllocationType::INTERNAL_HEAP; } allocation = memoryManager->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), allocationSize, allocationType, pDevice->getDeviceBitfield()}); - if (this->GetParam() == IndirectHeap::SURFACE_STATE) { + if (this->GetParam() == IndirectHeap::Type::SURFACE_STATE) { allocation->setSize(commandStreamReceiver.defaultSshSize * 2); } @@ -672,7 +672,7 @@ HWTEST_P(CommandQueueIndirectHeapTest, givenCommandStreamReceiverWithReusableAll // if we obtain heap from reusable pool, we need to keep the size of allocation // surface state heap is an exception, it is capped at (max_ssh_size_for_HW - page_size) - if (this->GetParam() == IndirectHeap::SURFACE_STATE) { + if (this->GetParam() == IndirectHeap::Type::SURFACE_STATE) { EXPECT_EQ(commandStreamReceiver.defaultSshSize - MemoryConstants::pageSize, indirectHeap.getMaxAvailableSpace()); } else { EXPECT_EQ(allocationSize, indirectHeap.getMaxAvailableSpace()); @@ -797,7 +797,7 @@ HWTEST_P(CommandQueueIndirectHeapTest, givenCommandQueueWhenGetIndirectHeapIsCal auto heapType = this->GetParam(); - bool requireInternalHeap = IndirectHeap::INDIRECT_OBJECT == heapType && commandStreamReceiver.canUse4GbHeaps; + bool requireInternalHeap = IndirectHeap::Type::INDIRECT_OBJECT == heapType && commandStreamReceiver.canUse4GbHeaps; const auto &indirectHeap = cmdQ.getIndirectHeap(heapType, 100); auto indirectHeapAllocation = indirectHeap.getGraphicsAllocation(); ASSERT_NE(nullptr, indirectHeapAllocation); @@ -839,9 +839,9 @@ INSTANTIATE_TEST_CASE_P( Device, CommandQueueIndirectHeapTest, testing::Values( - IndirectHeap::DYNAMIC_STATE, - IndirectHeap::INDIRECT_OBJECT, - IndirectHeap::SURFACE_STATE)); + IndirectHeap::Type::DYNAMIC_STATE, + IndirectHeap::Type::INDIRECT_OBJECT, + IndirectHeap::Type::SURFACE_STATE)); using CommandQueueTests = ::testing::Test; HWTEST_F(CommandQueueTests, givenMultipleCommandQueuesWhenMarkerIsEmittedThenGraphicsAllocationIsReused) { diff --git a/opencl/test/unit_test/command_queue/dispatch_walker_tests.cpp b/opencl/test/unit_test/command_queue/dispatch_walker_tests.cpp index acefed67b0..293ea05126 100644 --- a/opencl/test/unit_test/command_queue/dispatch_walker_tests.cpp +++ b/opencl/test/unit_test/command_queue/dispatch_walker_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -960,7 +960,7 @@ HWCMDTEST_F(IGFX_GEN8_CORE, DispatchWalkerTest, GivenMultipleKernelsWhenDispatch MockMultiDispatchInfo multiDispatchInfo(pClDevice, std::vector({&kernel1, &kernel2})); // create Indirect DSH heap - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); indirectHeap.align(EncodeStates::alignInterfaceDescriptorData); auto dshBeforeMultiDisptach = indirectHeap.getUsed(); diff --git a/opencl/test/unit_test/command_queue/dispatch_walker_tests_xehp_and_later.cpp b/opencl/test/unit_test/command_queue/dispatch_walker_tests_xehp_and_later.cpp index 30ae3bd710..7307307d68 100644 --- a/opencl/test/unit_test/command_queue/dispatch_walker_tests_xehp_and_later.cpp +++ b/opencl/test/unit_test/command_queue/dispatch_walker_tests_xehp_and_later.cpp @@ -758,7 +758,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin auto cmdQ = std::make_unique>(context.get(), device.get(), nullptr); - IndirectHeap &ih = cmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 2048); + IndirectHeap &ih = cmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 2048); auto &kd = kernel->kernelInfo.kernelDescriptor; kd.kernelAttributes.flags.passInlineData = true; @@ -874,7 +874,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin DebugManager.flags.EnableHwGenerationLocalIds.set(false); auto cmdQ = std::make_unique>(context.get(), device.get(), nullptr); - IndirectHeap &ih = cmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 2048); + IndirectHeap &ih = cmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 2048); auto &kd = kernel->kernelInfo.kernelDescriptor; kd.kernelAttributes.flags.passInlineData = true; @@ -1445,7 +1445,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenEnqueueIsB HardwareParse hwParser; hwParser.parseCommands(*cmdQ->getUltCommandStreamReceiver().lastFlushedCommandStream); - hwParser.findHardwareCommands(&cmdQ->getGpgpuCommandStreamReceiver().getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0)); + hwParser.findHardwareCommands(&cmdQ->getGpgpuCommandStreamReceiver().getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0)); auto computeWalker = reinterpret_cast(hwParser.cmdWalker); ASSERT_NE(nullptr, computeWalker); EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_Y, computeWalker->getPartitionType()); diff --git a/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests.cpp index 49915bbfff..2d136eb697 100644 --- a/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -374,9 +374,9 @@ HWTEST_F(DispatchFlagsTests, givenMockKernelWhenSettingAdditionalKernelExecInfoT std::unique_ptr printfHandler(PrintfHandler::create(multiDispatchInfo, *device.get())); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); blockedCommandsData->setHeaps(dsh, ioh, ssh); std::vector v; diff --git a/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests_dg2_and_later.cpp b/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests_dg2_and_later.cpp index 0f3ad3228e..159066b2f0 100644 --- a/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests_dg2_and_later.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_command_without_kernel_tests_dg2_and_later.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Intel Corporation + * Copyright (C) 2021-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -46,9 +46,9 @@ HWTEST2_F(DispatchFlagsTests, whenSubmittingKernelWithAdditionalKernelExecInfoTh std::unique_ptr printfHandler(PrintfHandler::create(multiDispatchInfo, *device.get())); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); blockedCommandsData->setHeaps(dsh, ioh, ssh); std::vector v; diff --git a/opencl/test/unit_test/command_queue/enqueue_copy_buffer_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_copy_buffer_tests.cpp index eeb8c07b5c..66da28a409 100644 --- a/opencl/test/unit_test/command_queue/enqueue_copy_buffer_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_copy_buffer_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -331,7 +331,7 @@ HWTEST_F(EnqueueCopyBufferTest, WhenCopyingBufferThenArgumentZeroMatchesSourceAd ASSERT_NE(nullptr, kernel); // Determine where the argument is - auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 0u, pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0), rootDeviceIndex); + auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 0u, pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0), rootDeviceIndex); EXPECT_EQ(reinterpret_cast(srcBuffer->getGraphicsAllocation(pClDevice->getRootDeviceIndex())->getGpuAddress()), *pArgument); } @@ -359,7 +359,7 @@ HWTEST_F(EnqueueCopyBufferTest, WhenCopyingBufferThenArgumentOneMatchesDestinati ASSERT_NE(nullptr, kernel); // Determine where the argument is - auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 1u, pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0), rootDeviceIndex); + auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 1u, pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0), rootDeviceIndex); EXPECT_EQ(reinterpret_cast(dstBuffer->getGraphicsAllocation(pClDevice->getRootDeviceIndex())->getGpuAddress()), *pArgument); } diff --git a/opencl/test/unit_test/command_queue/enqueue_copy_buffer_to_image_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_copy_buffer_to_image_tests.cpp index 6924271c48..601ed44d35 100644 --- a/opencl/test/unit_test/command_queue/enqueue_copy_buffer_to_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_copy_buffer_to_image_tests.cpp @@ -174,7 +174,7 @@ HWTEST_F(EnqueueCopyBufferToImageTest, WhenCopyingBufferToImageThenSurfaceStateI const auto &kernelInfo = mockCmdQ->storedMultiDispatchInfo.begin()->getKernel()->getKernelInfo(); uint32_t index = static_cast(kernelInfo.getArgDescriptorAt(1).template as().bindful) / sizeof(RENDER_SURFACE_STATE); - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), index); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), index); const auto &imageDesc = dstImage->getImageDesc(); // EnqueueReadImage uses multi-byte copies depending on per-pixel-size-in-bytes EXPECT_EQ(imageDesc.image_width, surfaceState.getWidth()); diff --git a/opencl/test/unit_test/command_queue/enqueue_copy_image_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_copy_image_tests.cpp index 9510a11e86..a3ba3dab6d 100644 --- a/opencl/test/unit_test/command_queue/enqueue_copy_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_copy_image_tests.cpp @@ -177,7 +177,7 @@ HWTEST_F(EnqueueCopyImageTest, WhenCopyingImageThenSurfaceStateIsCorrect) { const auto &kernelInfo = mockCmdQ->storedMultiDispatchInfo.begin()->getKernel()->getKernelInfo(); for (uint32_t i = 0; i < 2; ++i) { uint32_t index = static_cast(kernelInfo.getArgDescriptorAt(i).template as().bindful) / sizeof(RENDER_SURFACE_STATE); - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), index); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), index); const auto &imageDesc = dstImage->getImageDesc(); EXPECT_EQ(imageDesc.image_width, surfaceState.getWidth()); EXPECT_EQ(imageDesc.image_height, surfaceState.getHeight()); @@ -196,11 +196,11 @@ HWTEST_F(EnqueueCopyImageTest, WhenCopyingImageThenSurfaceStateIsCorrect) { } uint32_t srcIndex = static_cast(kernelInfo.getArgDescriptorAt(0).template as().bindful) / sizeof(RENDER_SURFACE_STATE); - const auto &srcSurfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), srcIndex); + const auto &srcSurfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), srcIndex); EXPECT_EQ(srcImage->getGraphicsAllocation(pClDevice->getRootDeviceIndex())->getGpuAddress(), srcSurfaceState.getSurfaceBaseAddress()); uint32_t dstIndex = static_cast(kernelInfo.getArgDescriptorAt(1).template as().bindful) / sizeof(RENDER_SURFACE_STATE); - const auto &dstSurfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), dstIndex); + const auto &dstSurfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), dstIndex); EXPECT_EQ(dstImage->getGraphicsAllocation(pClDevice->getRootDeviceIndex())->getGpuAddress(), dstSurfaceState.getSurfaceBaseAddress()); } diff --git a/opencl/test/unit_test/command_queue/enqueue_copy_image_to_buffer_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_copy_image_to_buffer_tests.cpp index bc7fe644b3..b8125e904b 100644 --- a/opencl/test/unit_test/command_queue/enqueue_copy_image_to_buffer_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_copy_image_to_buffer_tests.cpp @@ -167,7 +167,7 @@ HWTEST_F(EnqueueCopyImageToBufferTest, WhenCopyingImageToBufferThenSurfaceStateI enqueueCopyImageToBuffer(); - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), 0); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), 0); const auto &imageDesc = srcImage->getImageDesc(); // EnqueueReadImage uses multi-byte copies depending on per-pixel-size-in-bytes EXPECT_EQ(imageDesc.image_width, surfaceState.getWidth()); diff --git a/opencl/test/unit_test/command_queue/enqueue_debug_kernel_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_debug_kernel_tests.cpp index 6b6727c948..19550b4467 100644 --- a/opencl/test/unit_test/command_queue/enqueue_debug_kernel_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_debug_kernel_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -100,7 +100,7 @@ HWTEST_F(EnqueueDebugKernelTest, givenDebugKernelWhenEnqueuedThenSSHAndBtiAreCor std::unique_ptr> mockCmdQ(new MockCommandQueueHw(&context, pClDevice, 0)); size_t gws[] = {1, 1, 1}; - auto &ssh = mockCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096u); + auto &ssh = mockCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096u); void *surfaceStates = ssh.getSpace(0); mockCmdQ->enqueueKernel(debugKernel, 1, nullptr, gws, nullptr, 0, nullptr, nullptr); @@ -125,7 +125,7 @@ HWTEST_F(EnqueueDebugKernelTest, givenDebugKernelWhenEnqueuedThenSurfaceStateFor std::unique_ptr> mockCmdQ(new MockCommandQueueHw(&context, pClDevice, 0)); size_t gws[] = {1, 1, 1}; - auto &ssh = mockCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096u); + auto &ssh = mockCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096u); mockCmdQ->enqueueKernel(debugKernel, 1, nullptr, gws, nullptr, 0, nullptr, nullptr); auto debugSurfaceState = reinterpret_cast(ssh.getCpuBase()); diff --git a/opencl/test/unit_test/command_queue/enqueue_fill_buffer_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_fill_buffer_tests.cpp index 7c6d911bde..194aa8967b 100644 --- a/opencl/test/unit_test/command_queue/enqueue_fill_buffer_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_fill_buffer_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -304,7 +304,7 @@ HWTEST_F(EnqueueFillBufferCmdTests, WhenFillingBufferThenArgumentZeroShouldMatch ASSERT_NE(nullptr, kernel); // Determine where the argument is - auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 0u, pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0), rootDeviceIndex); + auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 0u, pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0), rootDeviceIndex); EXPECT_EQ((void *)((uintptr_t)buffer->getGraphicsAllocation(pClDevice->getRootDeviceIndex())->getGpuAddress()), *pArgument); @@ -337,7 +337,7 @@ HWTEST_F(EnqueueFillBufferCmdTests, WhenFillingBufferThenArgumentTwoShouldMatchP ASSERT_NE(nullptr, kernel); // Determine where the argument is - auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 2u, pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0), rootDeviceIndex); + auto pArgument = (void **)getStatelessArgumentPointer(kernel->getKernelInfo(), 2u, pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0), rootDeviceIndex); EXPECT_NE(nullptr, *pArgument); context.getMemoryManager()->freeGraphicsMemory(patternAllocation); diff --git a/opencl/test/unit_test/command_queue/enqueue_fill_image_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_fill_image_tests.cpp index 694ab5046d..04dc3e2f7b 100644 --- a/opencl/test/unit_test/command_queue/enqueue_fill_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_fill_image_tests.cpp @@ -181,7 +181,7 @@ HWTEST_F(EnqueueFillImageTest, WhenFillingImageThenSurfaceStateIsCorrect) { const auto &kernelInfo = mockCmdQ->storedMultiDispatchInfo.begin()->getKernel()->getKernelInfo(); uint32_t index = static_cast(kernelInfo.getArgDescriptorAt(0).template as().bindful) / sizeof(RENDER_SURFACE_STATE); - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), index); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), index); const auto &imageDesc = image->getImageDesc(); EXPECT_EQ(imageDesc.image_width, surfaceState.getWidth()); EXPECT_EQ(imageDesc.image_height, surfaceState.getHeight()); diff --git a/opencl/test/unit_test/command_queue/enqueue_handler_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_handler_tests.cpp index 82fea1e822..9362707ee8 100644 --- a/opencl/test/unit_test/command_queue/enqueue_handler_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_handler_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -668,7 +668,7 @@ HWTEST_F(EnqueueHandlerTest, givenKernelUsingSyncBufferWhenEnqueuingKernelThenSs auto mockCmdQ = clUniquePtr(new MockCommandQueueHw(context, pClDevice, 0)); mockCmdQ->enqueueKernel(kernel, 1, &offset, &size, &size, 0, nullptr, nullptr); - sshUsageWithoutSyncBuffer = mockCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0).getUsed(); + sshUsageWithoutSyncBuffer = mockCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0).getUsed(); } { @@ -687,7 +687,7 @@ HWTEST_F(EnqueueHandlerTest, givenKernelUsingSyncBufferWhenEnqueuingKernelThenSs auto mockCmdQ = clUniquePtr(new MockCommandQueueHw(context, pClDevice, 0)); mockCmdQ->enqueueKernel(kernel, 1, &offset, &size, &size, 0, nullptr, nullptr); - auto &surfaceStateHeap = mockCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0); + auto &surfaceStateHeap = mockCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0); EXPECT_EQ(sshUsageWithoutSyncBuffer + kernelInternals.kernelInfo.heapInfo.SurfaceStateHeapSize, surfaceStateHeap.getUsed()); ClHardwareParse hwParser; diff --git a/opencl/test/unit_test/command_queue/enqueue_read_buffer_rect_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_read_buffer_rect_tests.cpp index 921c411e47..0a3dd86665 100644 --- a/opencl/test/unit_test/command_queue/enqueue_read_buffer_rect_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_read_buffer_rect_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -576,7 +576,7 @@ HWTEST_F(EnqueueReadWriteBufferRectDispatch, givenOffsetResultingInMisalignedPtr auto &kernelInfo = kernel->getKernelInfo(); if (hwInfo->capabilityTable.gpuAddressSpace == MemoryConstants::max48BitAddress) { - const auto &surfaceStateDst = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), 1); + const auto &surfaceStateDst = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), 1); if (kernelInfo.getArgDescriptorAt(1).as().pointerSize == sizeof(uint64_t)) { auto pKernelArg = (uint64_t *)(kernel->getCrossThreadData() + diff --git a/opencl/test/unit_test/command_queue/enqueue_read_image_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_read_image_tests.cpp index 6497405330..5a749dcfeb 100644 --- a/opencl/test/unit_test/command_queue/enqueue_read_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_read_image_tests.cpp @@ -616,7 +616,7 @@ HWTEST_F(EnqueueReadImageTest, WhenReadingImageThenSurfaceStateIsCorrect) { // BufferToImage kernel uses BTI=1 for destSurface uint32_t bindingTableIndex = 0; - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), bindingTableIndex); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), bindingTableIndex); // EnqueueReadImage uses multi-byte copies depending on per-pixel-size-in-bytes const auto &imageDesc = srcImage->getImageDesc(); diff --git a/opencl/test/unit_test/command_queue/enqueue_write_buffer_rect_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_write_buffer_rect_tests.cpp index 20ca448480..58670a65ab 100644 --- a/opencl/test/unit_test/command_queue/enqueue_write_buffer_rect_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_write_buffer_rect_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -574,7 +574,7 @@ HWTEST_F(EnqueueReadWriteBufferRectDispatch, givenOffsetResultingInMisalignedPtr auto &kernelInfo = kernel->getKernelInfo(); if (hwInfo->capabilityTable.gpuAddressSpace == MemoryConstants::max48BitAddress) { - const auto &surfaceState = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), 0); + const auto &surfaceState = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), 0); if (kernelInfo.getArgDescriptorAt(0).as().pointerSize == sizeof(uint64_t)) { auto pKernelArg = (uint64_t *)(kernel->getCrossThreadData() + diff --git a/opencl/test/unit_test/command_queue/enqueue_write_image_tests.cpp b/opencl/test/unit_test/command_queue/enqueue_write_image_tests.cpp index 58b949aac6..b8719203ed 100644 --- a/opencl/test/unit_test/command_queue/enqueue_write_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/enqueue_write_image_tests.cpp @@ -184,7 +184,7 @@ HWTEST_F(EnqueueWriteImageTest, WhenWritingImageThenSurfaceStateIsProgrammedCorr auto index = mockCmdQ->storedMultiDispatchInfo.begin()->getKernel()->getKernelInfo().getArgDescriptorAt(1).template as().bindful / sizeof(RENDER_SURFACE_STATE); - const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), static_cast(index)); + const auto &surfaceState = getSurfaceState(&pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), static_cast(index)); // EnqueueWriteImage uses multi-byte copies depending on per-pixel-size-in-bytes const auto &imageDesc = dstImage->getImageDesc(); diff --git a/opencl/test/unit_test/command_queue/get_size_required_buffer_tests.cpp b/opencl/test/unit_test/command_queue/get_size_required_buffer_tests.cpp index dce941ae0a..c21784549e 100644 --- a/opencl/test/unit_test/command_queue/get_size_required_buffer_tests.cpp +++ b/opencl/test/unit_test/command_queue/get_size_required_buffer_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -67,9 +67,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenFillingBufferThenHeapsAndCommandBufferCo typedef typename FamilyType::WALKER_TYPE GPGPU_WALKER; auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -121,9 +121,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenCopyingBufferThenHeapsAndCommandBufferCo typedef typename FamilyType::WALKER_TYPE GPGPU_WALKER; auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -174,9 +174,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenReadingBufferNonBlockingThenHeapsAndComm typedef typename FamilyType::WALKER_TYPE GPGPU_WALKER; auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -228,9 +228,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenReadingBufferBlockingThenThenHeapsAndCom typedef typename FamilyType::WALKER_TYPE GPGPU_WALKER; auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -283,9 +283,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenWritingBufferNonBlockingThenHeapsAndComm typedef typename FamilyType::WALKER_TYPE GPGPU_WALKER; auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -334,9 +334,9 @@ HWTEST_F(GetSizeRequiredBufferTest, WhenWritingBufferNonBlockingThenHeapsAndComm HWTEST_F(GetSizeRequiredBufferTest, WhenWritingBufferBlockingThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); diff --git a/opencl/test/unit_test/command_queue/get_size_required_image_tests.cpp b/opencl/test/unit_test/command_queue/get_size_required_image_tests.cpp index 39f8ddb158..6470a062fb 100644 --- a/opencl/test/unit_test/command_queue/get_size_required_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/get_size_required_image_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -61,9 +61,9 @@ struct GetSizeRequiredImageTest : public CommandEnqueueFixture, HWTEST_F(GetSizeRequiredImageTest, WhenCopyingImageThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -112,9 +112,9 @@ HWTEST_F(GetSizeRequiredImageTest, WhenCopyingImageThenHeapsAndCommandBufferCons HWTEST_F(GetSizeRequiredImageTest, WhenCopyingReadWriteImageThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -159,9 +159,9 @@ HWTEST_F(GetSizeRequiredImageTest, WhenCopyingReadWriteImageThenHeapsAndCommandB HWTEST_F(GetSizeRequiredImageTest, WhenReadingImageNonBlockingThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -214,9 +214,9 @@ HWTEST_F(GetSizeRequiredImageTest, WhenReadingImageNonBlockingThenHeapsAndComman HWTEST_F(GetSizeRequiredImageTest, WhenReadingImageBlockingThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -269,9 +269,9 @@ HWTEST_F(GetSizeRequiredImageTest, WhenReadingImageBlockingThenHeapsAndCommandBu HWTEST_F(GetSizeRequiredImageTest, WhenWritingImageNonBlockingThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); @@ -324,9 +324,9 @@ HWTEST_F(GetSizeRequiredImageTest, WhenWritingImageNonBlockingThenHeapsAndComman HWTEST_F(GetSizeRequiredImageTest, WhenWritingImageBlockingThenHeapsAndCommandBufferConsumedMinimumRequiredSize) { auto &commandStream = pCmdQ->getCS(1024); auto usedBeforeCS = commandStream.getUsed(); - auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + auto &dsh = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + auto &ioh = pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + auto &ssh = pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); auto usedBeforeSSH = ssh.getUsed(); diff --git a/opencl/test/unit_test/command_queue/get_size_required_tests.cpp b/opencl/test/unit_test/command_queue/get_size_required_tests.cpp index 2b997c362b..561242bc19 100644 --- a/opencl/test/unit_test/command_queue/get_size_required_tests.cpp +++ b/opencl/test/unit_test/command_queue/get_size_required_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -22,9 +22,9 @@ struct GetSizeRequiredTest : public CommandEnqueueFixture, void SetUp() override { CommandEnqueueFixture::SetUp(); - dsh = &pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0u); - ioh = &pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 0u); - ssh = &pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0u); + dsh = &pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0u); + ioh = &pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 0u); + ssh = &pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0u); usedBeforeDSH = dsh->getUsed(); usedBeforeIOH = ioh->getUsed(); diff --git a/opencl/test/unit_test/command_queue/oom_buffer_tests.cpp b/opencl/test/unit_test/command_queue/oom_buffer_tests.cpp index d758907d04..b837473e56 100644 --- a/opencl/test/unit_test/command_queue/oom_buffer_tests.cpp +++ b/opencl/test/unit_test/command_queue/oom_buffer_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -68,7 +68,7 @@ struct OOMCommandQueueBufferTest : public MemoryManagementFixture, } if (oomSetting.oomISH) { - auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, oomSize); + auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, oomSize); // IndirectHeap may be larger than requested so grab what wasnt requested ish.getSpace(ish.getAvailableSpace() - oomSize); @@ -96,7 +96,7 @@ HWTEST_P(OOMCommandQueueBufferTest, WhenCopyingBufferThenMaxAvailableSpaceIsNotE CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -120,7 +120,7 @@ HWTEST_P(OOMCommandQueueBufferTest, WhenFillingBufferThenMaxAvailableSpaceIsNotE CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -144,7 +144,7 @@ HWTEST_P(OOMCommandQueueBufferTest, WhenReadingBufferThenMaxAvailableSpaceIsNotE CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -168,7 +168,7 @@ HWTEST_P(OOMCommandQueueBufferTest, WhenWritingBufferThenMaxAvailableSpaceIsNotE CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -192,7 +192,7 @@ HWTEST_P(OOMCommandQueueBufferTest, WhenWritingBufferRectThenMaxAvailableSpaceIs CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -217,7 +217,7 @@ HWTEST_P(OOMCommandQueueBufferTest, GivenHelloWorldWhenEnqueingKernelThenMaxAvai CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -247,7 +247,7 @@ HWTEST_P(OOMCommandQueueBufferTest, GivenSimpleArgWhenEnqueingKernelThenMaxAvail CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); diff --git a/opencl/test/unit_test/command_queue/oom_image_tests.cpp b/opencl/test/unit_test/command_queue/oom_image_tests.cpp index 92c6c23908..15fe49b2dc 100644 --- a/opencl/test/unit_test/command_queue/oom_image_tests.cpp +++ b/opencl/test/unit_test/command_queue/oom_image_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -56,7 +56,7 @@ struct OOMCommandQueueImageTest : public ClDeviceFixture, } if (oomSetting.oomISH) { - auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, oomSize); + auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, oomSize); // IndirectHeap may be larger than requested so grab what wasnt requested ish.getSpace(ish.getAvailableSpace() - oomSize); @@ -85,7 +85,7 @@ HWTEST_P(OOMCommandQueueImageTest, WhenCopyingImageThenMaxAvailableSpaceIsNotExc CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -109,7 +109,7 @@ HWTEST_P(OOMCommandQueueImageTest, WhenFillingImageThenMaxAvailableSpaceIsNotExc CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -133,7 +133,7 @@ HWTEST_P(OOMCommandQueueImageTest, WhenReadingImageThenMaxAvailableSpaceIsNotExc CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -157,7 +157,7 @@ HWTEST_P(OOMCommandQueueImageTest, WhenWritingImageThenMaxAvailableSpaceIsNotExc CommandQueueHw cmdQ(context, pClDevice, 0, false); auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); diff --git a/opencl/test/unit_test/command_queue/oom_tests.cpp b/opencl/test/unit_test/command_queue/oom_tests.cpp index c592503069..f713165425 100644 --- a/opencl/test/unit_test/command_queue/oom_tests.cpp +++ b/opencl/test/unit_test/command_queue/oom_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -51,7 +51,7 @@ struct OOMCommandQueueTest : public ClDeviceFixture, } if (oomSetting.oomISH) { - auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, oomSize); + auto &ish = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, oomSize); // IndirectHeap may be larger than requested so grab what wasnt requested ish.getSpace(ish.getAvailableSpace() - oomSize); @@ -70,7 +70,7 @@ struct OOMCommandQueueTest : public ClDeviceFixture, HWTEST_P(OOMCommandQueueTest, WhenFinishingThenMaxAvailableSpaceIsNotExceeded) { auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -86,7 +86,7 @@ HWTEST_P(OOMCommandQueueTest, WhenFinishingThenMaxAvailableSpaceIsNotExceeded) { HWTEST_P(OOMCommandQueueTest, WhenEnqueingMarkerThenMaxAvailableSpaceIsNotExceeded) { auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); @@ -109,7 +109,7 @@ HWTEST_P(OOMCommandQueueTest, WhenEnqueingMarkerThenMaxAvailableSpaceIsNotExceed HWTEST_P(OOMCommandQueueTest, WhenEnqueingBarrierThenMaxAvailableSpaceIsNotExceeded) { auto &commandStream = pCmdQ->getCS(1024); - auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10); + auto &indirectHeap = pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeISH = indirectHeap.getUsed(); diff --git a/opencl/test/unit_test/command_stream/cl_command_stream_receiver_tests.cpp b/opencl/test/unit_test/command_stream/cl_command_stream_receiver_tests.cpp index cbf654f8cb..55ccac83c2 100644 --- a/opencl/test/unit_test/command_stream/cl_command_stream_receiver_tests.cpp +++ b/opencl/test/unit_test/command_stream/cl_command_stream_receiver_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -101,7 +101,7 @@ TEST_F(CommandStreamReceiverMultiRootDeviceTest, WhenCreatingCommandStreamGraphi EXPECT_EQ(expectedRootDeviceIndex, debugSurface->getRootDeviceIndex()); // Indirect heaps - IndirectHeap::Type heapTypes[]{IndirectHeap::DYNAMIC_STATE, IndirectHeap::INDIRECT_OBJECT, IndirectHeap::SURFACE_STATE}; + IndirectHeap::Type heapTypes[]{IndirectHeap::Type::DYNAMIC_STATE, IndirectHeap::Type::INDIRECT_OBJECT, IndirectHeap::Type::SURFACE_STATE}; for (auto heapType : heapTypes) { IndirectHeap *heap = nullptr; commandStreamReceiver->allocateHeapMemory(heapType, MemoryConstants::pageSize, heap); diff --git a/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_3_tests.cpp b/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_3_tests.cpp index 66720b3b55..89f93f66f5 100644 --- a/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_3_tests.cpp +++ b/opencl/test/unit_test/command_stream/command_stream_receiver_flush_task_3_tests.cpp @@ -1768,9 +1768,9 @@ HWTEST_F(CommandStreamReceiverFlushTaskTests, GivenBlockedKernelWhenItIsUnblocke auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - pCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - pCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - pCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); auto blockedCommandsData = std::make_unique(cmdStream, *pCmdQ->getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); blockedCommandsData->setHeaps(dsh, ioh, ssh); diff --git a/opencl/test/unit_test/event/event_builder_tests.cpp b/opencl/test/unit_test/event/event_builder_tests.cpp index a84ff96c3f..227c105a9d 100644 --- a/opencl/test/unit_test/event/event_builder_tests.cpp +++ b/opencl/test/unit_test/event/event_builder_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -88,9 +88,9 @@ TEST(EventBuilder, givenVirtualEventWithCommandThenFinalizeAddChild) { MockKernelWithInternals kernel(*device); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); std::vector surfaces; @@ -138,9 +138,9 @@ TEST(EventBuilder, givenVirtualEventWithSubmittedCommandAsParentThenFinalizeNotA MockKernelWithInternals kernel(*device); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); std::vector surfaces; diff --git a/opencl/test/unit_test/event/event_tests.cpp b/opencl/test/unit_test/event/event_tests.cpp index f6100c93df..8fa310fecf 100644 --- a/opencl/test/unit_test/event/event_tests.cpp +++ b/opencl/test/unit_test/event/event_tests.cpp @@ -486,9 +486,9 @@ TEST_F(InternalsEventTest, GivenSubmitCommandFalseWhenSubmittingCommandsThenRefA auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), true, 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, false, pDevice->getDeviceBitfield()})); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); auto blockedCommandsData = std::make_unique(cmdStream, *cmdQ.getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); blockedCommandsData->setHeaps(dsh, ioh, ssh); @@ -538,9 +538,9 @@ TEST_F(InternalsEventTest, GivenSubmitCommandTrueWhenSubmittingCommandsThenRefAp auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); auto blockedCommandsData = std::make_unique(cmdStream, *cmdQ.getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); blockedCommandsData->setHeaps(dsh, ioh, ssh); @@ -573,9 +573,9 @@ TEST_F(InternalsEventTest, givenBlockedKernelWithPrintfWhenSubmittedThenPrintOut auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - mockCmdQueue.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - mockCmdQueue.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - mockCmdQueue.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + mockCmdQueue.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + mockCmdQueue.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + mockCmdQueue.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); auto blockedCommandsData = std::make_unique(cmdStream, *mockCmdQueue.getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); blockedCommandsData->setHeaps(dsh, ioh, ssh); @@ -1025,9 +1025,9 @@ HWTEST_F(EventTest, givenVirtualEventWhenCommandSubmittedThenLockCsrOccurs) { MockKernelWithInternals kernel(*pClDevice); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - pCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - pCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - pCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); std::vector surfaces; @@ -1570,9 +1570,9 @@ HWTEST_F(InternalsEventTest, givenAbortedCommandWhenSubmitCalledThenDontUpdateFl auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 4096, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); IndirectHeap *dsh = nullptr, *ioh = nullptr, *ssh = nullptr; - pCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); - pCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 4096u, ioh); - pCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 4096u, ioh); + pCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); auto blockedCommandsData = std::make_unique(cmdStream, *pCmdQ->getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); blockedCommandsData->setHeaps(dsh, ioh, ssh); PreemptionMode preemptionMode = pDevice->getPreemptionMode(); diff --git a/opencl/test/unit_test/gtpin/gtpin_tests.cpp b/opencl/test/unit_test/gtpin/gtpin_tests.cpp index 908abe1cf0..096ab5ce4b 100644 --- a/opencl/test/unit_test/gtpin/gtpin_tests.cpp +++ b/opencl/test/unit_test/gtpin/gtpin_tests.cpp @@ -2361,9 +2361,9 @@ HWTEST_F(GTPinTests, givenGtPinInitializedWhenSubmittingKernelCommandThenFlushed EXPECT_EQ(GTPIN_DI_SUCCESS, retFromGtPin); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 128, ih1); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 128, ih2); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 128, ih3); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 128, ih1); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 128, ih2); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 128, ih3); PreemptionMode preemptionMode = pDevice->getPreemptionMode(); auto cmdStream = new LinearStream(pDevice->getMemoryManager()->allocateGraphicsMemoryWithProperties({pDevice->getRootDeviceIndex(), 128, GraphicsAllocation::AllocationType::COMMAND_BUFFER, pDevice->getDeviceBitfield()})); diff --git a/opencl/test/unit_test/helpers/hardware_commands_helper_tests.cpp b/opencl/test/unit_test/helpers/hardware_commands_helper_tests.cpp index f0e816372f..448c139ff7 100644 --- a/opencl/test/unit_test/helpers/hardware_commands_helper_tests.cpp +++ b/opencl/test/unit_test/helpers/hardware_commands_helper_tests.cpp @@ -83,7 +83,7 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, WhenProgramInterfaceDescriptor ASSERT_NE(nullptr, kernel); typedef typename FamilyType::INTERFACE_DESCRIPTOR_DATA INTERFACE_DESCRIPTOR_DATA; - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); auto usedIndirectHeapBefore = indirectHeap.getUsed(); indirectHeap.getSpace(sizeof(INTERFACE_DESCRIPTOR_DATA)); @@ -157,7 +157,7 @@ HWTEST_F(HardwareCommandsTest, WhenCrossThreadDataIsCreatedThenOnlyRequiredSpace auto kernel = multiDispatchInfo.begin()->getKernel(); ASSERT_NE(nullptr, kernel); - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); auto usedBefore = indirectHeap.getUsed(); auto sizeCrossThreadData = kernel->getCrossThreadDataSize(); HardwareCommandsHelper::sendCrossThreadData( @@ -181,7 +181,7 @@ HWTEST_F(HardwareCommandsTest, givenSendCrossThreadDataWhenWhenAddPatchInfoComme std::unique_ptr kernel(new MockKernel(&program, *kernelInfo, *pClDevice)); - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); PatchInfoData patchInfoData = {0xaaaaaaaa, 0, PatchInfoAllocationType::KernelArg, 0xbbbbbbbb, 0, PatchInfoAllocationType::IndirectObjectHeap}; kernel->getPatchInfoDataList().push_back(patchInfoData); @@ -247,7 +247,7 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, givenSendCrossThreadDataWhenWh std::unique_ptr kernel(new MockKernel(&program, *kernelInfo, *pClDevice)); - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); indirectHeap.getSpace(128u); PatchInfoData patchInfoData1 = {0xaaaaaaaa, 0, PatchInfoAllocationType::KernelArg, 0xbbbbbbbb, 0, PatchInfoAllocationType::IndirectObjectHeap}; @@ -313,9 +313,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, WhenAllocatingIndirectStateRes auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); auto usedBeforeCS = commandStream.getUsed(); auto usedBeforeDSH = dsh.getUsed(); auto usedBeforeIOH = ioh.getUsed(); @@ -379,9 +379,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, givenKernelWithFourBindingTabl auto expectedBindingTableCount = 3u; mockKernelWithInternal->mockKernel->numberOfBindingTableStates = expectedBindingTableCount; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); const size_t localWorkSize = 256; const size_t localWorkSizes[3]{localWorkSize, 1, 1}; uint32_t interfaceDescriptorIndex = 0; @@ -425,9 +425,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, givenKernelWith100BindingTable auto expectedBindingTableCount = 100u; mockKernelWithInternal->mockKernel->numberOfBindingTableStates = expectedBindingTableCount; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); const size_t localWorkSize = 256; const size_t localWorkSizes[3]{localWorkSize, 1, 1}; uint32_t interfaceDescriptorIndex = 0; @@ -491,9 +491,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, whenSendingIndirectStateThenKe auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); dsh.align(EncodeStates::alignInterfaceDescriptorData); size_t IDToffset = dsh.getUsed(); @@ -582,9 +582,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, WhenSendingIndirectStateThenBi auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); auto sshUsed = ssh.getUsed(); @@ -692,9 +692,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, WhenGettingBindingTableStateTh auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); // Initialize binding table state pointers with pattern EXPECT_EQ(numSurfaces, pKernel->getNumberOfBindingTableStates()); @@ -770,7 +770,7 @@ HWTEST_F(HardwareCommandsTest, GivenBuffersNotRequiringSshWhenSettingBindingTabl ASSERT_EQ(CL_SUCCESS, pKernel->initialize()); CommandQueueHw cmdQ(nullptr, pClDevice, 0, false); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); ssh.align(8); auto usedBefore = ssh.getUsed(); @@ -813,7 +813,7 @@ HWTEST_F(HardwareCommandsTest, GivenZeroSurfaceStatesWhenSettingBindingTableStat ASSERT_EQ(CL_SUCCESS, pKernel->initialize()); CommandQueueHw cmdQ(nullptr, pClDevice, 0, false); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); // Initialize binding table state pointers with pattern auto numSurfaceStates = pKernel->getNumberOfBindingTableStates(); @@ -841,9 +841,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, GivenKernelWithInvalidSamplerS auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); const size_t localWorkSize = 256; const size_t localWorkSizes[3]{localWorkSize, 1, 1}; uint32_t interfaceDescriptorIndex = 0; @@ -913,9 +913,9 @@ HWCMDTEST_F(IGFX_GEN8_CORE, HardwareCommandsTest, GivenKernelWithSamplersWhenInd auto pWalkerCmd = static_cast(commandStream.getSpace(sizeof(GPGPU_WALKER))); *pWalkerCmd = FamilyType::cmdInitGpgpuWalker; - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); const uint32_t samplerTableOffset = 64; const uint32_t samplerStateSize = sizeof(SAMPLER_STATE) * 2; @@ -1285,9 +1285,9 @@ HWTEST_F(HardwareCommandsImplicitArgsTests, givenKernelWithImplicitArgsWhenSendi auto &commandStream = cmdQ.getCS(1024); auto pWalkerCmd = reinterpret_cast(commandStream.getSpace(0)); - auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); - auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::SURFACE_STATE, 8192); + auto &dsh = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + auto &ioh = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); + auto &ssh = cmdQ.getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 8192); dsh.align(EncodeStates::alignInterfaceDescriptorData); auto interfaceDescriptor = reinterpret_cast(dsh.getSpace(0)); @@ -1379,7 +1379,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, HardwareCommandsTestXeHpAndLater, givenSendCrossThr std::unique_ptr kernel(new MockKernel(&program, *kernelInfo, *pClDevice)); - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 8192); indirectHeap.getSpace(128u); PatchInfoData patchInfoData1 = {0xaaaaaaaa, 0, PatchInfoAllocationType::KernelArg, 0xbbbbbbbb, 0, PatchInfoAllocationType::IndirectObjectHeap}; diff --git a/opencl/test/unit_test/helpers/task_information_tests.cpp b/opencl/test/unit_test/helpers/task_information_tests.cpp index 06a636a735..61bc933093 100644 --- a/opencl/test/unit_test/helpers/task_information_tests.cpp +++ b/opencl/test/unit_test/helpers/task_information_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -102,9 +102,9 @@ TEST(CommandTest, givenWaitlistRequestWhenCommandComputeKernelIsCreatedThenMakeL MockKernelWithInternals kernel(*device); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); std::vector surfaces; @@ -135,9 +135,9 @@ TEST(KernelOperationDestruction, givenKernelOperationWhenItIsDestructedThenAllAl auto &allocationsForReuse = allocationStorage.getAllocationsForReuse(); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - cmdQ.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - cmdQ.allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - cmdQ.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + cmdQ.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + cmdQ.allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + cmdQ.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); auto &heapAllocation1 = *ih1->getGraphicsAllocation(); @@ -212,9 +212,9 @@ HWTEST_F(DispatchFlagsTests, givenCommandComputeKernelWhenSubmitThenPassCorrectD auto mockCsr = static_cast(&mockCmdQ->getGpgpuCommandStreamReceiver()); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); PreemptionMode preemptionMode = device->getPreemptionMode(); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); @@ -260,9 +260,9 @@ HWTEST_F(DispatchFlagsTests, givenClCommandCopyImageWhenSubmitThenFlushTextureCa auto mockCsr = static_cast(&mockCmdQ->getGpgpuCommandStreamReceiver()); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); PreemptionMode preemptionMode = device->getPreemptionMode(); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); @@ -313,9 +313,9 @@ HWTEST_F(DispatchFlagsTests, givenCommandWithoutKernelWhenSubmitThenPassCorrectD mockCmdQ->timestampPacketContainer = std::make_unique(); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; TimestampPacketDependencies timestampPacketDependencies; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); auto cmdStream = new LinearStream(device->getMemoryManager()->allocateGraphicsMemoryWithProperties({device->getRootDeviceIndex(), 1, GraphicsAllocation::AllocationType::COMMAND_BUFFER, device->getDeviceBitfield()})); auto kernelOperation = std::make_unique(cmdStream, *mockCmdQ->getGpgpuCommandStreamReceiver().getInternalAllocationStorage()); @@ -349,9 +349,9 @@ HWTEST_F(DispatchFlagsTests, givenCommandComputeKernelWhenSubmitThenPassCorrectD auto mockCsr = static_cast(&mockCmdQ->getGpgpuCommandStreamReceiver()); IndirectHeap *ih1 = nullptr, *ih2 = nullptr, *ih3 = nullptr; - mockCmdQ->allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 1, ih1); - mockCmdQ->allocateHeapMemory(IndirectHeap::INDIRECT_OBJECT, 1, ih2); - mockCmdQ->allocateHeapMemory(IndirectHeap::SURFACE_STATE, 1, ih3); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 1, ih1); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::INDIRECT_OBJECT, 1, ih2); + mockCmdQ->allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 1, ih3); mockCmdQ->dispatchHints = 1234; PreemptionMode preemptionMode = device->getPreemptionMode(); diff --git a/opencl/test/unit_test/indirect_heap/indirect_heap_fixture.cpp b/opencl/test/unit_test/indirect_heap/indirect_heap_fixture.cpp index e0df6e33f8..e9a82c4309 100644 --- a/opencl/test/unit_test/indirect_heap/indirect_heap_fixture.cpp +++ b/opencl/test/unit_test/indirect_heap/indirect_heap_fixture.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -12,8 +12,8 @@ namespace NEO { void IndirectHeapFixture::SetUp(CommandQueue *pCmdQ) { - pDSH = &pCmdQ->getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); - pSSH = &pCmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 4096); - pIOH = &pCmdQ->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, 4096); + pDSH = &pCmdQ->getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); + pSSH = &pCmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 4096); + pIOH = &pCmdQ->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, 4096); } } // namespace NEO diff --git a/opencl/test/unit_test/kernel/kernel_slm_tests.cpp b/opencl/test/unit_test/kernel/kernel_slm_tests.cpp index 4a08e6490c..de9b730c02 100644 --- a/opencl/test/unit_test/kernel/kernel_slm_tests.cpp +++ b/opencl/test/unit_test/kernel/kernel_slm_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -65,7 +65,7 @@ HWCMDTEST_P(IGFX_GEN8_CORE, KernelSLMAndBarrierTest, GivenStaticSlmSizeWhenProgr ASSERT_EQ(CL_SUCCESS, kernel.initialize()); // After creating Mock Kernel now create Indirect Heap - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); uint64_t interfaceDescriptorOffset = indirectHeap.getUsed(); @@ -152,7 +152,7 @@ HWTEST_F(KernelSLMAndBarrierTest, GivenInterfaceDescriptorProgrammedWhenOverride ASSERT_EQ(CL_SUCCESS, kernel.initialize()); CommandQueueHw cmdQ(nullptr, pClDevice, 0, false); - auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 8192); + auto &indirectHeap = cmdQ.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 8192); uint64_t interfaceDescriptorOffset = indirectHeap.getUsed(); INTERFACE_DESCRIPTOR_DATA interfaceDescriptorData; diff --git a/opencl/test/unit_test/memory_manager/storage_info_tests.cpp b/opencl/test/unit_test/memory_manager/storage_info_tests.cpp index 5e7fd05bbe..6041eda0ec 100644 --- a/opencl/test/unit_test/memory_manager/storage_info_tests.cpp +++ b/opencl/test/unit_test/memory_manager/storage_info_tests.cpp @@ -224,7 +224,7 @@ TEST_F(MultiDeviceStorageInfoTest, whenCreatingStorageInfoForWorkPartitionSurfac HWTEST_F(MultiDeviceStorageInfoTest, givenSingleTileCsrWhenAllocatingCsrSpecificAllocationsThenStoreThemInSystemMemory) { auto commandStreamReceiver = static_cast *>(factory.rootDevices[0]->getSubDevice(tileIndex)->getDefaultEngine().commandStreamReceiver); - auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, MemoryConstants::pageSize64k); + auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, MemoryConstants::pageSize64k); auto heapAllocation = heap.getGraphicsAllocation(); if (commandStreamReceiver->canUse4GbHeaps) { EXPECT_EQ(GraphicsAllocation::AllocationType::INTERNAL_HEAP, heapAllocation->getAllocationType()); diff --git a/opencl/test/unit_test/scenarios/windows/enqueue_read_write_buffer_scenarios_windows_tests.cpp b/opencl/test/unit_test/scenarios/windows/enqueue_read_write_buffer_scenarios_windows_tests.cpp index d608b24a12..dc19b6f524 100644 --- a/opencl/test/unit_test/scenarios/windows/enqueue_read_write_buffer_scenarios_windows_tests.cpp +++ b/opencl/test/unit_test/scenarios/windows/enqueue_read_write_buffer_scenarios_windows_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -112,7 +112,7 @@ HWTEST_F(EnqueueBufferWindowsTest, givenMisalignedHostPtrWhenEnqueueReadBufferCa auto &kernelInfo = kernel->getKernelInfo(); if (hwInfo->capabilityTable.gpuAddressSpace == MemoryConstants::max48BitAddress) { - const auto &surfaceStateDst = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::SURFACE_STATE, 0), 1); + const auto &surfaceStateDst = getSurfaceState(&cmdQ->getIndirectHeap(IndirectHeap::Type::SURFACE_STATE, 0), 1); const auto &arg1AsPtr = kernelInfo.getArgDescriptorAt(1).as(); if (arg1AsPtr.pointerSize == sizeof(uint64_t)) { diff --git a/opencl/test/unit_test/xe_hpc_core/hw_helper_tests_xe_hpc_core.cpp b/opencl/test/unit_test/xe_hpc_core/hw_helper_tests_xe_hpc_core.cpp index 2594f987e2..c627a42178 100644 --- a/opencl/test/unit_test/xe_hpc_core/hw_helper_tests_xe_hpc_core.cpp +++ b/opencl/test/unit_test/xe_hpc_core/hw_helper_tests_xe_hpc_core.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Intel Corporation + * Copyright (C) 2021-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -62,7 +62,7 @@ XE_HPC_CORETEST_F(HwHelperTestsXeHpcCore, givenSingleTileCsrWhenAllocatingCsrSpe hwInfo->platform.usRevId = 0b111000; // not BD A0 auto commandStreamReceiver = clDevice->getSubDevice(tileIndex)->getDefaultEngine().commandStreamReceiver; - auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, MemoryConstants::pageSize64k); + auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, MemoryConstants::pageSize64k); auto heapAllocation = heap.getGraphicsAllocation(); if (commandStreamReceiver->canUse4GbHeaps) { EXPECT_EQ(GraphicsAllocation::AllocationType::INTERNAL_HEAP, heapAllocation->getAllocationType()); @@ -94,7 +94,7 @@ XE_HPC_CORETEST_F(HwHelperTestsXeHpcCore, givenMultiTileCsrWhenAllocatingCsrSpec hwInfo->platform.usRevId = 0b111000; // not BD A0 auto commandStreamReceiver = clDevice->getDefaultEngine().commandStreamReceiver; - auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, MemoryConstants::pageSize64k); + auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, MemoryConstants::pageSize64k); auto heapAllocation = heap.getGraphicsAllocation(); if (commandStreamReceiver->canUse4GbHeaps) { EXPECT_EQ(GraphicsAllocation::AllocationType::INTERNAL_HEAP, heapAllocation->getAllocationType()); @@ -127,7 +127,7 @@ XE_HPC_CORETEST_F(HwHelperTestsXeHpcCore, givenSingleTileBdA0CsrWhenAllocatingCs hwInfo->platform.usRevId = 0; // BD A0 auto commandStreamReceiver = clDevice->getSubDevice(tileIndex)->getDefaultEngine().commandStreamReceiver; - auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::INDIRECT_OBJECT, MemoryConstants::pageSize64k); + auto &heap = commandStreamReceiver->getIndirectHeap(IndirectHeap::Type::INDIRECT_OBJECT, MemoryConstants::pageSize64k); auto heapAllocation = heap.getGraphicsAllocation(); if (commandStreamReceiver->canUse4GbHeaps) { EXPECT_EQ(GraphicsAllocation::AllocationType::INTERNAL_HEAP, heapAllocation->getAllocationType()); diff --git a/shared/source/command_container/cmdcontainer.cpp b/shared/source/command_container/cmdcontainer.cpp index 9ba089cf08..45e9dec80a 100644 --- a/shared/source/command_container/cmdcontainer.cpp +++ b/shared/source/command_container/cmdcontainer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -41,6 +41,20 @@ CommandContainer::~CommandContainer() { } } +CommandContainer::CommandContainer() { + for (auto &indirectHeap : indirectHeaps) { + indirectHeap = nullptr; + } + + for (auto &allocationIndirectHeap : allocationIndirectHeaps) { + allocationIndirectHeap = nullptr; + } +} + +CommandContainer::CommandContainer(uint32_t maxNumAggregatedIdds) : CommandContainer() { + numIddsPerBlock = maxNumAggregatedIdds; +} + ErrorCode CommandContainer::initialize(Device *device, AllocationsList *reusableAllocationList) { this->device = device; this->reusableAllocationList = reusableAllocationList; @@ -57,6 +71,7 @@ ErrorCode CommandContainer::initialize(Device *device, AllocationsList *reusable commandStream = std::unique_ptr(new LinearStream(cmdBufferAllocation->getUnderlyingBuffer(), defaultListCmdBufferSize)); + commandStream->replaceGraphicsAllocation(cmdBufferAllocation); if (!getFlushTaskUsedForImmediate()) { @@ -67,7 +82,7 @@ ErrorCode CommandContainer::initialize(Device *device, AllocationsList *reusable heapHelper = std::unique_ptr(new HeapHelper(device->getMemoryManager(), device->getDefaultEngine().commandStreamReceiver->getInternalAllocationStorage(), device->getNumGenericSubDevices() > 1u)); for (uint32_t i = 0; i < IndirectHeap::Type::NUM_TYPES; i++) { - if (NEO::ApiSpecificConfig::getBindlessConfiguration() && i != IndirectHeap::INDIRECT_OBJECT) { + if (NEO::ApiSpecificConfig::getBindlessConfiguration() && i != IndirectHeap::Type::INDIRECT_OBJECT) { continue; } allocationIndirectHeaps[i] = heapHelper->getHeapAllocation(i, @@ -79,7 +94,7 @@ ErrorCode CommandContainer::initialize(Device *device, AllocationsList *reusable } residencyContainer.push_back(allocationIndirectHeaps[i]); - bool requireInternalHeap = (IndirectHeap::INDIRECT_OBJECT == i); + bool requireInternalHeap = (IndirectHeap::Type::INDIRECT_OBJECT == i); indirectHeaps[i] = std::make_unique(allocationIndirectHeaps[i], requireInternalHeap); if (i == IndirectHeap::Type::SURFACE_STATE) { indirectHeaps[i]->getSpace(reservedSshSize); @@ -259,20 +274,25 @@ void CommandContainer::allocateNextCommandBuffer() { void CommandContainer::prepareBindfulSsh() { if (ApiSpecificConfig::getBindlessConfiguration()) { - if (allocationIndirectHeaps[IndirectHeap::SURFACE_STATE] == nullptr) { + if (allocationIndirectHeaps[IndirectHeap::Type::SURFACE_STATE] == nullptr) { size_t alignedSize = alignUp(totalCmdBufferSize, MemoryConstants::pageSize64k); constexpr size_t heapSize = 65536u; - allocationIndirectHeaps[IndirectHeap::SURFACE_STATE] = heapHelper->getHeapAllocation(IndirectHeap::SURFACE_STATE, - heapSize, - alignedSize, - device->getRootDeviceIndex()); - UNRECOVERABLE_IF(!allocationIndirectHeaps[IndirectHeap::SURFACE_STATE]); - residencyContainer.push_back(allocationIndirectHeaps[IndirectHeap::SURFACE_STATE]); + allocationIndirectHeaps[IndirectHeap::Type::SURFACE_STATE] = heapHelper->getHeapAllocation(IndirectHeap::Type::SURFACE_STATE, + heapSize, + alignedSize, + device->getRootDeviceIndex()); + UNRECOVERABLE_IF(!allocationIndirectHeaps[IndirectHeap::Type::SURFACE_STATE]); + residencyContainer.push_back(allocationIndirectHeaps[IndirectHeap::Type::SURFACE_STATE]); - indirectHeaps[IndirectHeap::SURFACE_STATE] = std::make_unique(allocationIndirectHeaps[IndirectHeap::SURFACE_STATE], false); - indirectHeaps[IndirectHeap::SURFACE_STATE]->getSpace(reservedSshSize); + indirectHeaps[IndirectHeap::Type::SURFACE_STATE] = std::make_unique(allocationIndirectHeaps[IndirectHeap::Type::SURFACE_STATE], false); + indirectHeaps[IndirectHeap::Type::SURFACE_STATE]->getSpace(reservedSshSize); } - setHeapDirty(IndirectHeap::SURFACE_STATE); + setHeapDirty(IndirectHeap::Type::SURFACE_STATE); } } + +IndirectHeap *CommandContainer::getIndirectHeap(HeapType heapType) { + return indirectHeaps[heapType].get(); +} + } // namespace NEO diff --git a/shared/source/command_container/cmdcontainer.h b/shared/source/command_container/cmdcontainer.h index 50dfe8d098..884f30c49f 100644 --- a/shared/source/command_container/cmdcontainer.h +++ b/shared/source/command_container/cmdcontainer.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -9,7 +9,7 @@ #include "shared/source/command_stream/csr_definitions.h" #include "shared/source/helpers/heap_helper.h" #include "shared/source/helpers/non_copyable_or_moveable.h" -#include "shared/source/indirect_heap/indirect_heap.h" +#include "shared/source/indirect_heap/indirect_heap_type.h" #include #include @@ -21,10 +21,12 @@ class Device; class GraphicsAllocation; class LinearStream; class AllocationsList; +class IndirectHeap; using ResidencyContainer = std::vector; using CmdBufferContainer = std::vector; -using HeapType = IndirectHeap::Type; +using HeapContainer = std::vector; +using HeapType = IndirectHeapType; enum class ErrorCode { SUCCESS = 0, @@ -39,19 +41,9 @@ class CommandContainer : public NonCopyableOrMovableClass { MemoryConstants::cacheLineSize + CSRequirements::csOverfetchSize; - CommandContainer() { - for (auto &indirectHeap : indirectHeaps) { - indirectHeap = nullptr; - } + CommandContainer(); - for (auto &allocationIndirectHeap : allocationIndirectHeaps) { - allocationIndirectHeap = nullptr; - } - } - - CommandContainer(uint32_t maxNumAggregatedIdds) : CommandContainer() { - numIddsPerBlock = maxNumAggregatedIdds; - } + CommandContainer(uint32_t maxNumAggregatedIdds); CmdBufferContainer &getCmdBufferAllocations() { return cmdBufferAllocations; } @@ -64,7 +56,7 @@ class CommandContainer : public NonCopyableOrMovableClass { LinearStream *getCommandStream() { return commandStream.get(); } - IndirectHeap *getIndirectHeap(HeapType heapType) { return indirectHeaps[heapType].get(); } + IndirectHeap *getIndirectHeap(HeapType heapType); HeapHelper *getHeapHelper() { return heapHelper.get(); } diff --git a/shared/source/command_container/command_encoder.h b/shared/source/command_container/command_encoder.h index a623eb539d..f6458c5408 100644 --- a/shared/source/command_container/command_encoder.h +++ b/shared/source/command_container/command_encoder.h @@ -13,6 +13,7 @@ #include "shared/source/helpers/definitions/mi_flush_args.h" #include "shared/source/helpers/register_offsets.h" #include "shared/source/helpers/simd_helper.h" +#include "shared/source/helpers/vec.h" #include "shared/source/kernel/dispatch_kernel_encoder_interface.h" #include "shared/source/kernel/kernel_arg_descriptor.h" @@ -25,6 +26,7 @@ namespace NEO { class BindlessHeapsHelper; class GmmHelper; class IndirectHeap; +class Gmm; struct HardwareInfo; struct StateComputeModeProperties; diff --git a/shared/source/command_container/command_encoder.inl b/shared/source/command_container/command_encoder.inl index ce4fe77dd9..0f0173e1a8 100644 --- a/shared/source/command_container/command_encoder.inl +++ b/shared/source/command_container/command_encoder.inl @@ -21,6 +21,7 @@ #include "shared/source/helpers/simd_helper.h" #include "shared/source/helpers/string.h" #include "shared/source/image/image_surface_state.h" +#include "shared/source/indirect_heap/indirect_heap.h" #include "shared/source/kernel/dispatch_kernel_encoder_interface.h" #include "shared/source/kernel/implicit_args.h" #include "shared/source/kernel/kernel_descriptor.h" diff --git a/shared/source/command_container/implicit_scaling_xehp_and_later.inl b/shared/source/command_container/implicit_scaling_xehp_and_later.inl index d42ea8acd3..b00bef2554 100644 --- a/shared/source/command_container/implicit_scaling_xehp_and_later.inl +++ b/shared/source/command_container/implicit_scaling_xehp_and_later.inl @@ -10,6 +10,7 @@ #include "shared/source/command_container/walker_partition_xehp_and_later.h" #include "shared/source/command_stream/linear_stream.h" #include "shared/source/helpers/hw_helper.h" +#include "shared/source/memory_manager/graphics_allocation.h" namespace NEO { diff --git a/shared/source/command_stream/command_stream_receiver.cpp b/shared/source/command_stream/command_stream_receiver.cpp index 5f8c5d06d6..4321e7815e 100644 --- a/shared/source/command_stream/command_stream_receiver.cpp +++ b/shared/source/command_stream/command_stream_receiver.cpp @@ -54,7 +54,7 @@ CommandStreamReceiver::CommandStreamReceiver(ExecutionEnvironment &executionEnvi this->dispatchMode = (DispatchMode)DebugManager.flags.CsrDispatchMode.get(); } flushStamp.reset(new FlushStampTracker(true)); - for (int i = 0; i < IndirectHeap::NUM_TYPES; ++i) { + for (int i = 0; i < IndirectHeap::Type::NUM_TYPES; ++i) { indirectHeap[i] = nullptr; } internalAllocationStorage = std::make_unique(*this); @@ -80,7 +80,7 @@ CommandStreamReceiver::~CommandStreamReceiver() { userPauseConfirmation->join(); } - for (int i = 0; i < IndirectHeap::NUM_TYPES; ++i) { + for (int i = 0; i < IndirectHeap::Type::NUM_TYPES; ++i) { if (indirectHeap[i] != nullptr) { auto allocation = indirectHeap[i]->getGraphicsAllocation(); if (allocation != nullptr) { @@ -450,10 +450,10 @@ void CommandStreamReceiver::allocateHeapMemory(IndirectHeap::Type heapType, size_t minRequiredSize, IndirectHeap *&indirectHeap) { size_t reservedSize = 0; auto finalHeapSize = defaultHeapSize; - if (IndirectHeap::SURFACE_STATE == heapType) { + if (IndirectHeap::Type::SURFACE_STATE == heapType) { finalHeapSize = defaultSshSize; } - bool requireInternalHeap = IndirectHeap::INDIRECT_OBJECT == heapType ? canUse4GbHeaps : false; + bool requireInternalHeap = IndirectHeap::Type::INDIRECT_OBJECT == heapType ? canUse4GbHeaps : false; if (DebugManager.flags.AddPatchInfoCommentsForAUBDump.get()) { requireInternalHeap = false; @@ -475,7 +475,7 @@ void CommandStreamReceiver::allocateHeapMemory(IndirectHeap::Type heapType, finalHeapSize = std::max(heapMemory->getUnderlyingBufferSize(), finalHeapSize); } - if (IndirectHeap::SURFACE_STATE == heapType) { + if (IndirectHeap::Type::SURFACE_STATE == heapType) { DEBUG_BREAK_IF(minRequiredSize > defaultSshSize - MemoryConstants::pageSize); finalHeapSize = defaultSshSize - MemoryConstants::pageSize; } diff --git a/shared/source/command_stream/command_stream_receiver.h b/shared/source/command_stream/command_stream_receiver.h index da6d26d742..ac8d361ba5 100644 --- a/shared/source/command_stream/command_stream_receiver.h +++ b/shared/source/command_stream/command_stream_receiver.h @@ -359,7 +359,7 @@ class CommandStreamReceiver { MultiGraphicsAllocation *tagsMultiAllocation = nullptr; - IndirectHeap *indirectHeap[IndirectHeap::NUM_TYPES]; + IndirectHeap *indirectHeap[IndirectHeap::Type::NUM_TYPES]; OsContext *osContext = nullptr; // current taskLevel. Used for determining if a PIPE_CONTROL is needed. diff --git a/shared/source/command_stream/scratch_space_controller_base.cpp b/shared/source/command_stream/scratch_space_controller_base.cpp index d90afda3db..9c86e88633 100644 --- a/shared/source/command_stream/scratch_space_controller_base.cpp +++ b/shared/source/command_stream/scratch_space_controller_base.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -74,7 +74,7 @@ uint64_t ScratchSpaceControllerBase::getScratchPatchAddress() { } void ScratchSpaceControllerBase::reserveHeap(IndirectHeap::Type heapType, IndirectHeap *&indirectHeap) { - if (heapType == IndirectHeap::SURFACE_STATE) { + if (heapType == IndirectHeap::Type::SURFACE_STATE) { auto &hwHelper = HwHelper::get(executionEnvironment.rootDeviceEnvironments[rootDeviceIndex]->getHardwareInfo()->platform.eRenderCoreFamily); auto surfaceStateSize = hwHelper.getRenderSurfaceStateSize(); indirectHeap->getSpace(surfaceStateSize); diff --git a/shared/source/command_stream/scratch_space_controller_xehp_and_later.cpp b/shared/source/command_stream/scratch_space_controller_xehp_and_later.cpp index 56085e2878..b8300d31f8 100644 --- a/shared/source/command_stream/scratch_space_controller_xehp_and_later.cpp +++ b/shared/source/command_stream/scratch_space_controller_xehp_and_later.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 Intel Corporation + * Copyright (C) 2021-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -127,7 +127,7 @@ size_t ScratchSpaceControllerXeHPAndLater::getOffsetToSurfaceState(uint32_t requ } void ScratchSpaceControllerXeHPAndLater::reserveHeap(IndirectHeap::Type heapType, IndirectHeap *&indirectHeap) { - if (heapType == IndirectHeap::SURFACE_STATE) { + if (heapType == IndirectHeap::Type::SURFACE_STATE) { indirectHeap->getSpace(getOffsetToSurfaceState(stateSlotsCount)); } } diff --git a/shared/source/indirect_heap/CMakeLists.txt b/shared/source/indirect_heap/CMakeLists.txt index cb825f13f5..93439f3773 100644 --- a/shared/source/indirect_heap/CMakeLists.txt +++ b/shared/source/indirect_heap/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2022 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -7,6 +7,7 @@ set(NEO_CORE_INDIRECT_HEAP ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/indirect_heap.h + ${CMAKE_CURRENT_SOURCE_DIR}/indirect_heap_type.h ) set_property(GLOBAL PROPERTY NEO_CORE_INDIRECT_HEAP ${NEO_CORE_INDIRECT_HEAP}) diff --git a/shared/source/indirect_heap/indirect_heap.h b/shared/source/indirect_heap/indirect_heap.h index ca1c8217fa..e3dde78d57 100644 --- a/shared/source/indirect_heap/indirect_heap.h +++ b/shared/source/indirect_heap/indirect_heap.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -11,6 +11,7 @@ #include "shared/source/helpers/basic_math.h" #include "shared/source/helpers/constants.h" #include "shared/source/helpers/ptr_math.h" +#include "shared/source/indirect_heap/indirect_heap_type.h" #include "shared/source/memory_manager/graphics_allocation.h" namespace NEO { @@ -24,13 +25,7 @@ class IndirectHeap : public LinearStream { typedef LinearStream BaseClass; public: - enum Type { - DYNAMIC_STATE = 0, - INDIRECT_OBJECT, - SURFACE_STATE, - NUM_TYPES - }; - + using Type = IndirectHeapType; IndirectHeap(void *graphicsAllocation, size_t bufferSize) : BaseClass(graphicsAllocation, bufferSize){}; IndirectHeap(GraphicsAllocation *graphicsAllocation) : BaseClass(graphicsAllocation) {} IndirectHeap(GraphicsAllocation *graphicsAllocation, bool canBeUtilizedAs4GbHeap) diff --git a/shared/source/indirect_heap/indirect_heap_type.h b/shared/source/indirect_heap/indirect_heap_type.h new file mode 100644 index 0000000000..c0ae28237d --- /dev/null +++ b/shared/source/indirect_heap/indirect_heap_type.h @@ -0,0 +1,17 @@ +/* + * Copyright (C) 2022 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once + +namespace NEO { +enum IndirectHeapType { + DYNAMIC_STATE = 0, + INDIRECT_OBJECT, + SURFACE_STATE, + NUM_TYPES +}; +} // namespace NEO diff --git a/shared/test/common/cmd_parse/hw_parse.h b/shared/test/common/cmd_parse/hw_parse.h index 354360d6d8..a8c8a65644 100644 --- a/shared/test/common/cmd_parse/hw_parse.h +++ b/shared/test/common/cmd_parse/hw_parse.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -83,7 +83,7 @@ struct HardwareParse { previousCS = &commandStream; sizeUsed = commandStream.getUsed(); - findHardwareCommands(&commandStreamReceiver.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 0)); + findHardwareCommands(&commandStreamReceiver.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 0)); } template diff --git a/shared/test/unit_test/command_container/command_container_tests.cpp b/shared/test/unit_test/command_container/command_container_tests.cpp index efa6d3dc52..8647c2abbe 100644 --- a/shared/test/unit_test/command_container/command_container_tests.cpp +++ b/shared/test/unit_test/command_container/command_container_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2021 Intel Corporation + * Copyright (C) 2019-2022 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -523,9 +523,9 @@ INSTANTIATE_TEST_CASE_P( Device, CommandContainerHeaps, testing::Values( - IndirectHeap::DYNAMIC_STATE, - IndirectHeap::INDIRECT_OBJECT, - IndirectHeap::SURFACE_STATE)); + IndirectHeap::Type::DYNAMIC_STATE, + IndirectHeap::Type::INDIRECT_OBJECT, + IndirectHeap::Type::SURFACE_STATE)); TEST_P(CommandContainerHeaps, givenCommandContainerWhenGetAllowHeapGrowCalledThenHeapIsReturned) { HeapType heap = GetParam(); @@ -557,7 +557,7 @@ TEST_P(CommandContainerHeaps, givenCommandContainerWhenGetingMoreThanAvailableSi auto usedSpaceAfter = cmdContainer.getIndirectHeap(heap)->getUsed(); auto availableSizeAfter = cmdContainer.getIndirectHeap(heap)->getAvailableSpace(); EXPECT_GT(usedSpaceAfter + availableSizeAfter, usedSpaceBefore + availableSizeBefore); - EXPECT_EQ(!cmdContainer.isHeapDirty(heap), heap == IndirectHeap::INDIRECT_OBJECT); + EXPECT_EQ(!cmdContainer.isHeapDirty(heap), heap == IndirectHeap::Type::INDIRECT_OBJECT); } TEST_P(CommandContainerHeaps, givenCommandContainerForDifferentRootDevicesThenHeapsAreCreatedWithCorrectRootDeviceIndex) { diff --git a/shared/test/unit_test/command_container/command_encoder_tests.cpp b/shared/test/unit_test/command_container/command_encoder_tests.cpp index abcf5a2a56..9f87cd371d 100644 --- a/shared/test/unit_test/command_container/command_encoder_tests.cpp +++ b/shared/test/unit_test/command_container/command_encoder_tests.cpp @@ -1,11 +1,12 @@ /* - * Copyright (C) 2020-2021 Intel Corporation + * Copyright (C) 2020-2022 Intel Corporation * * SPDX-License-Identifier: MIT * */ #include "shared/source/command_container/command_encoder.h" +#include "shared/source/memory_manager/graphics_allocation.h" #include "shared/test/common/helpers/default_hw_info.h" #include "shared/test/common/helpers/unit_test_helper.h" #include "shared/test/common/test_macros/test.h" diff --git a/shared/test/unit_test/command_stream/command_stream_receiver_tests.cpp b/shared/test/unit_test/command_stream/command_stream_receiver_tests.cpp index 5f3a57d91c..d2d8b055df 100644 --- a/shared/test/unit_test/command_stream/command_stream_receiver_tests.cpp +++ b/shared/test/unit_test/command_stream/command_stream_receiver_tests.cpp @@ -213,16 +213,16 @@ HWTEST_F(CommandStreamReceiverTest, givenL0CommandStreamReceiverThenDefaultDispa HWTEST_F(CommandStreamReceiverTest, givenCsrWhenGetIndirectHeapIsCalledThenHeapIsReturned) { auto &csr = pDevice->getUltCommandStreamReceiver(); - auto &heap = csr.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10u); + auto &heap = csr.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10u); EXPECT_NE(nullptr, heap.getGraphicsAllocation()); - EXPECT_NE(nullptr, csr.indirectHeap[IndirectHeap::DYNAMIC_STATE]); - EXPECT_EQ(&heap, csr.indirectHeap[IndirectHeap::DYNAMIC_STATE]); + EXPECT_NE(nullptr, csr.indirectHeap[IndirectHeap::Type::DYNAMIC_STATE]); + EXPECT_EQ(&heap, csr.indirectHeap[IndirectHeap::Type::DYNAMIC_STATE]); } HWTEST_F(CommandStreamReceiverTest, givenCsrWhenReleaseIndirectHeapIsCalledThenHeapAllocationIsNull) { auto &csr = pDevice->getUltCommandStreamReceiver(); - auto &heap = csr.getIndirectHeap(IndirectHeap::DYNAMIC_STATE, 10u); - csr.releaseIndirectHeap(IndirectHeap::DYNAMIC_STATE); + auto &heap = csr.getIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE, 10u); + csr.releaseIndirectHeap(IndirectHeap::Type::DYNAMIC_STATE); EXPECT_EQ(nullptr, heap.getGraphicsAllocation()); EXPECT_EQ(0u, heap.getMaxAvailableSpace()); } @@ -230,7 +230,7 @@ HWTEST_F(CommandStreamReceiverTest, givenCsrWhenReleaseIndirectHeapIsCalledThenH HWTEST_F(CommandStreamReceiverTest, givenCsrWhenAllocateHeapMemoryIsCalledThenHeapMemoryIsAllocated) { auto &csr = pDevice->getUltCommandStreamReceiver(); IndirectHeap *dsh = nullptr; - csr.allocateHeapMemory(IndirectHeap::DYNAMIC_STATE, 4096u, dsh); + csr.allocateHeapMemory(IndirectHeap::Type::DYNAMIC_STATE, 4096u, dsh); EXPECT_NE(nullptr, dsh); ASSERT_NE(nullptr, dsh->getGraphicsAllocation()); csr.getMemoryManager()->freeGraphicsMemory(dsh->getGraphicsAllocation()); @@ -240,7 +240,7 @@ HWTEST_F(CommandStreamReceiverTest, givenCsrWhenAllocateHeapMemoryIsCalledThenHe HWTEST_F(CommandStreamReceiverTest, givenSurfaceStateHeapTypeWhenAllocateHeapMemoryIsCalledThenSSHHasInitialSpaceReserevedForBindlessOffsets) { auto &csr = pDevice->getUltCommandStreamReceiver(); IndirectHeap *ssh = nullptr; - csr.allocateHeapMemory(IndirectHeap::SURFACE_STATE, 4096u, ssh); + csr.allocateHeapMemory(IndirectHeap::Type::SURFACE_STATE, 4096u, ssh); EXPECT_NE(nullptr, ssh); ASSERT_NE(nullptr, ssh->getGraphicsAllocation());