Skip to content

Commit 3f6d1f5

Browse files
Jaime ArteagaCompute-Runtime-Automation
authored andcommitted
Correctly pass descriptors to L0 shared alloc function
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
1 parent 9473abc commit 3f6d1f5

File tree

11 files changed

+51
-32
lines changed

11 files changed

+51
-32
lines changed

level_zero/api/core/ze_memory.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ zeMemAllocShared(
1717
size_t alignment,
1818
ze_device_handle_t hDevice,
1919
void **pptr) {
20-
return L0::Context::fromHandle(hContext)->allocSharedMem(hDevice, deviceDesc->flags, hostDesc->flags, size, alignment, pptr);
20+
return L0::Context::fromHandle(hContext)->allocSharedMem(hDevice, deviceDesc, hostDesc, size, alignment, pptr);
2121
}
2222

2323
ZE_APIEXPORT ze_result_t ZE_APICALL

level_zero/core/source/context/context.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ struct Context : _ze_context_handle_t {
3232
size_t size,
3333
size_t alignment, void **ptr) = 0;
3434
virtual ze_result_t allocSharedMem(ze_device_handle_t hDevice,
35-
ze_device_mem_alloc_flags_t deviceFlags,
36-
ze_host_mem_alloc_flags_t hostFlags,
35+
const ze_device_mem_alloc_desc_t *deviceDesc,
36+
const ze_host_mem_alloc_desc_t *hostDesc,
3737
size_t size,
3838
size_t alignment,
3939
void **ptr) = 0;

level_zero/core/source/context/context_imp.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,15 @@ ze_result_t ContextImp::allocDeviceMem(ze_device_handle_t hDevice,
6464
}
6565

6666
ze_result_t ContextImp::allocSharedMem(ze_device_handle_t hDevice,
67-
ze_device_mem_alloc_flags_t deviceFlags,
68-
ze_host_mem_alloc_flags_t hostFlags,
67+
const ze_device_mem_alloc_desc_t *deviceDesc,
68+
const ze_host_mem_alloc_desc_t *hostDesc,
6969
size_t size,
7070
size_t alignment,
7171
void **ptr) {
7272
DEBUG_BREAK_IF(nullptr == this->driverHandle);
7373
return this->driverHandle->allocSharedMem(hDevice,
74-
deviceFlags,
75-
hostFlags,
74+
deviceDesc,
75+
hostDesc,
7676
size,
7777
alignment,
7878
ptr);

level_zero/core/source/context/context_imp.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ struct ContextImp : Context {
2727
size_t size,
2828
size_t alignment, void **ptr) override;
2929
ze_result_t allocSharedMem(ze_device_handle_t hDevice,
30-
ze_device_mem_alloc_flags_t deviceFlags,
31-
ze_host_mem_alloc_flags_t hostFlags,
30+
const ze_device_mem_alloc_desc_t *deviceDesc,
31+
const ze_host_mem_alloc_desc_t *hostDesc,
3232
size_t size,
3333
size_t alignment,
3434
void **ptr) override;

level_zero/core/source/driver/driver_handle.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,10 @@ struct DriverHandle : _ze_driver_handle_t {
4141
virtual ze_result_t allocDeviceMem(ze_device_handle_t hDevice, const ze_device_mem_alloc_desc_t *deviceDesc, size_t size,
4242
size_t alignment, void **ptr) = 0;
4343

44-
virtual ze_result_t allocSharedMem(ze_device_handle_t hDevice, ze_device_mem_alloc_flags_t deviceFlags,
45-
ze_host_mem_alloc_flags_t hostFlags, size_t size, size_t alignment,
44+
virtual ze_result_t allocSharedMem(ze_device_handle_t hDevice, const ze_device_mem_alloc_desc_t *deviceDesc,
45+
const ze_host_mem_alloc_desc_t *hostDesc,
46+
size_t size,
47+
size_t alignment,
4648
void **ptr) = 0;
4749
virtual ze_result_t freeMem(const void *ptr) = 0;
4850
virtual NEO::MemoryManager *getMemoryManager() = 0;

level_zero/core/source/driver/driver_handle_imp.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,11 @@ struct DriverHandleImp : public DriverHandle {
3333
ze_result_t allocDeviceMem(ze_device_handle_t hDevice, const ze_device_mem_alloc_desc_t *deviceDesc, size_t size,
3434
size_t alignment, void **ptr) override;
3535

36-
ze_result_t allocSharedMem(ze_device_handle_t hDevice, ze_device_mem_alloc_flags_t deviceFlags,
37-
ze_host_mem_alloc_flags_t hostFlags, size_t size, size_t alignment,
36+
ze_result_t allocSharedMem(ze_device_handle_t hDevice,
37+
const ze_device_mem_alloc_desc_t *deviceDesc,
38+
const ze_host_mem_alloc_desc_t *hostDesc,
39+
size_t size,
40+
size_t alignment,
3841
void **ptr) override;
3942

4043
ze_result_t getMemAddressRange(const void *ptr, void **pBase, size_t *pSize) override;

level_zero/core/source/memory/memory.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,10 @@ ze_result_t DriverHandleImp::allocDeviceMem(ze_device_handle_t hDevice, const ze
139139
return ZE_RESULT_SUCCESS;
140140
}
141141

142-
ze_result_t DriverHandleImp::allocSharedMem(ze_device_handle_t hDevice, ze_device_mem_alloc_flags_t deviceFlags,
143-
ze_host_mem_alloc_flags_t hostFlags, size_t size, size_t alignment,
142+
ze_result_t DriverHandleImp::allocSharedMem(ze_device_handle_t hDevice, const ze_device_mem_alloc_desc_t *deviceDesc,
143+
const ze_host_mem_alloc_desc_t *hostDesc,
144+
size_t size,
145+
size_t alignment,
144146
void **ptr) {
145147
ze_device_handle_t device;
146148
void *unifiedMemoryPropertiesDevice = nullptr;

level_zero/core/test/unit_tests/mocks/mock_context.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ struct Mock<Context> : public Context {
5757
MOCK_METHOD(ze_result_t,
5858
allocSharedMem,
5959
(ze_device_handle_t hDevice,
60-
ze_device_mem_alloc_flags_t deviceFlags,
61-
ze_host_mem_alloc_flags_t hostFlags,
60+
const ze_device_mem_alloc_desc_t *deviceDesc,
61+
const ze_host_mem_alloc_desc_t *hostDesc,
6262
size_t size,
6363
size_t alignment,
6464
void **ptr),

level_zero/core/test/unit_tests/mocks/mock_driver_handle.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@ struct Mock<DriverHandle> : public DriverHandleImp {
115115
MOCK_METHOD(ze_result_t,
116116
allocSharedMem,
117117
(ze_device_handle_t hDevice,
118-
ze_device_mem_alloc_flags_t deviceFlags,
119-
ze_host_mem_alloc_flags_t hostFlags,
118+
const ze_device_mem_alloc_desc_t *deviceDesc,
119+
const ze_host_mem_alloc_desc_t *hostDesc,
120120
size_t size,
121121
size_t alignment,
122122
void **ptr),

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_launch_kernel.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -488,7 +488,9 @@ HWTEST_F(CommandListDualStroage, givenIndirectDispatchWithSharedDualStorageMemor
488488
std::unique_ptr<L0::CommandList> commandList(L0::CommandList::create(productFamily, device, NEO::EngineGroupType::RenderCompute, returnValue));
489489

490490
void *alloc = nullptr;
491-
auto result = device->getDriverHandle()->allocSharedMem(device->toHandle(), 0u, 0u, 16384u, 4096u, &alloc);
491+
ze_device_mem_alloc_desc_t deviceDesc = {};
492+
ze_host_mem_alloc_desc_t hostDesc = {};
493+
auto result = device->getDriverHandle()->allocSharedMem(device->toHandle(), &deviceDesc, &hostDesc, 16384u, 4096u, &alloc);
492494
ASSERT_EQ(ZE_RESULT_SUCCESS, result);
493495

494496
ze_group_count_t *pThreadGroupDimensions = static_cast<ze_group_count_t *>(ptrOffset(alloc, sizeof(ze_group_count_t)));

0 commit comments

Comments
 (0)