Skip to content

Commit db5c33b

Browse files
committed
[UR] Remove UMF sources and use standalone UMF repo instead
UMF has become a separate project with its own repository. It is currently under active development and is intended to be used by various oneAPI components, not just UR. All further enhancements and fixes will only go into the UMF repository - we do not plan to merge such changes here in the UR repository and into the UMF repository separately.
1 parent f15234d commit db5c33b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+148
-5695
lines changed

source/adapters/cuda/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@ endif()
8383
target_link_libraries(${TARGET_NAME} PRIVATE
8484
${PROJECT_NAME}::headers
8585
${PROJECT_NAME}::common
86-
${PROJECT_NAME}::unified_malloc_framework
8786
Threads::Threads
8887
cudadrv
8988
)

source/adapters/cuda/usm.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -401,28 +401,28 @@ ur_usm_pool_handle_t_::ur_usm_pool_handle_t_(ur_context_handle_t Context,
401401
.second;
402402

403403
HostMemPool =
404-
umf::poolMakeUnique<usm::DisjointPool, 1>(
405-
{std::move(MemProvider)},
406-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
404+
umf::poolMakeUniqueFromOps(
405+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
406+
&this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
407407
.second;
408408

409409
auto Device = Context->DeviceID;
410410
MemProvider =
411411
umf::memoryProviderMakeUnique<USMDeviceMemoryProvider>(Context, Device)
412412
.second;
413413
DeviceMemPool =
414-
umf::poolMakeUnique<usm::DisjointPool, 1>(
415-
{std::move(MemProvider)},
416-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Device])
414+
umf::poolMakeUniqueFromOps(
415+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
416+
&this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Device])
417417
.second;
418418

419419
MemProvider =
420420
umf::memoryProviderMakeUnique<USMSharedMemoryProvider>(Context, Device)
421421
.second;
422422
SharedMemPool =
423-
umf::poolMakeUnique<usm::DisjointPool, 1>(
424-
{std::move(MemProvider)},
425-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Shared])
423+
umf::poolMakeUniqueFromOps(
424+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
425+
&this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Shared])
426426
.second;
427427
Context->addPool(this);
428428
}

source/adapters/hip/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,6 @@ if("${UR_HIP_PLATFORM}" STREQUAL "AMD")
139139
target_link_libraries(${TARGET_NAME} PRIVATE
140140
${PROJECT_NAME}::headers
141141
${PROJECT_NAME}::common
142-
${PROJECT_NAME}::unified_malloc_framework
143142
rocmdrv
144143
)
145144

source/adapters/hip/usm.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -345,29 +345,29 @@ ur_usm_pool_handle_t_::ur_usm_pool_handle_t_(ur_context_handle_t Context,
345345
.second;
346346

347347
HostMemPool =
348-
umf::poolMakeUnique<usm::DisjointPool, 1>(
349-
{std::move(MemProvider)},
350-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
348+
umf::poolMakeUniqueFromOps(
349+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
350+
&this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
351351
.second;
352352

353353
for (const auto &Device : Context->getDevices()) {
354354
MemProvider =
355355
umf::memoryProviderMakeUnique<USMDeviceMemoryProvider>(Context, Device)
356356
.second;
357-
DeviceMemPool =
358-
umf::poolMakeUnique<usm::DisjointPool, 1>(
359-
{std::move(MemProvider)},
360-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Device])
361-
.second;
357+
DeviceMemPool = umf::poolMakeUniqueFromOps(
358+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
359+
&this->DisjointPoolConfigs
360+
.Configs[usm::DisjointPoolMemType::Device])
361+
.second;
362362

363363
MemProvider =
364364
umf::memoryProviderMakeUnique<USMSharedMemoryProvider>(Context, Device)
365365
.second;
366-
SharedMemPool =
367-
umf::poolMakeUnique<usm::DisjointPool, 1>(
368-
{std::move(MemProvider)},
369-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Shared])
370-
.second;
366+
SharedMemPool = umf::poolMakeUniqueFromOps(
367+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
368+
&this->DisjointPoolConfigs
369+
.Configs[usm::DisjointPoolMemType::Shared])
370+
.second;
371371
Context->addPool(this);
372372
}
373373
}

source/adapters/level_zero/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,6 @@ endif()
140140
target_link_libraries(${TARGET_NAME} PRIVATE
141141
${PROJECT_NAME}::headers
142142
${PROJECT_NAME}::common
143-
${PROJECT_NAME}::unified_malloc_framework
144143
LevelZeroLoader
145144
LevelZeroLoader-Headers
146145
)

source/adapters/level_zero/context.cpp

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -189,21 +189,21 @@ ur_result_t ur_context_handle_t_::initialize() {
189189
.second;
190190
DeviceMemPools.emplace(
191191
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
192-
std::make_tuple(umf::poolMakeUnique<usm::DisjointPool, 1>(
193-
{std::move(MemProvider)},
194-
DisjointPoolConfigInstance
195-
.Configs[usm::DisjointPoolMemType::Device])
192+
std::make_tuple(umf::poolMakeUniqueFromOps(
193+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
194+
&DisjointPoolConfigInstance
195+
.Configs[usm::DisjointPoolMemType::Device])
196196
.second));
197197

198198
MemProvider = umf::memoryProviderMakeUnique<L0SharedMemoryProvider>(
199199
reinterpret_cast<ur_context_handle_t>(this), Device)
200200
.second;
201201
SharedMemPools.emplace(
202202
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
203-
std::make_tuple(umf::poolMakeUnique<usm::DisjointPool, 1>(
204-
{std::move(MemProvider)},
205-
DisjointPoolConfigInstance
206-
.Configs[usm::DisjointPoolMemType::Shared])
203+
std::make_tuple(umf::poolMakeUniqueFromOps(
204+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
205+
&DisjointPoolConfigInstance
206+
.Configs[usm::DisjointPoolMemType::Shared])
207207
.second));
208208

209209
MemProvider = umf::memoryProviderMakeUnique<L0SharedReadOnlyMemoryProvider>(
@@ -212,10 +212,10 @@ ur_result_t ur_context_handle_t_::initialize() {
212212
SharedReadOnlyMemPools.emplace(
213213
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
214214
std::make_tuple(
215-
umf::poolMakeUnique<usm::DisjointPool, 1>(
216-
{std::move(MemProvider)},
217-
DisjointPoolConfigInstance
218-
.Configs[usm::DisjointPoolMemType::SharedReadOnly])
215+
umf::poolMakeUniqueFromOps(
216+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
217+
&DisjointPoolConfigInstance
218+
.Configs[usm::DisjointPoolMemType::SharedReadOnly])
219219
.second));
220220

221221
MemProvider = umf::memoryProviderMakeUnique<L0DeviceMemoryProvider>(
@@ -224,26 +224,23 @@ ur_result_t ur_context_handle_t_::initialize() {
224224
DeviceMemProxyPools.emplace(
225225
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
226226
std::make_tuple(
227-
umf::poolMakeUnique<USMProxyPool, 1>({std::move(MemProvider)})
228-
.second));
227+
umf::poolMakeUnique<USMProxyPool>(std::move(MemProvider)).second));
229228

230229
MemProvider = umf::memoryProviderMakeUnique<L0SharedMemoryProvider>(
231230
reinterpret_cast<ur_context_handle_t>(this), Device)
232231
.second;
233232
SharedMemProxyPools.emplace(
234233
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
235234
std::make_tuple(
236-
umf::poolMakeUnique<USMProxyPool, 1>({std::move(MemProvider)})
237-
.second));
235+
umf::poolMakeUnique<USMProxyPool>(std::move(MemProvider)).second));
238236

239237
MemProvider = umf::memoryProviderMakeUnique<L0SharedReadOnlyMemoryProvider>(
240238
reinterpret_cast<ur_context_handle_t>(this), Device)
241239
.second;
242240
SharedReadOnlyMemProxyPools.emplace(
243241
std::piecewise_construct, std::make_tuple(Device->ZeDevice),
244242
std::make_tuple(
245-
umf::poolMakeUnique<USMProxyPool, 1>({std::move(MemProvider)})
246-
.second));
243+
umf::poolMakeUnique<USMProxyPool>(std::move(MemProvider)).second));
247244
};
248245

249246
// Recursive helper to call createUSMAllocators for all sub-devices
@@ -268,16 +265,16 @@ ur_result_t ur_context_handle_t_::initialize() {
268265
reinterpret_cast<ur_context_handle_t>(this), nullptr)
269266
.second;
270267
HostMemPool =
271-
umf::poolMakeUnique<usm::DisjointPool, 1>(
272-
{std::move(MemProvider)},
273-
DisjointPoolConfigInstance.Configs[usm::DisjointPoolMemType::Host])
268+
umf::poolMakeUniqueFromOps(
269+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
270+
&DisjointPoolConfigInstance.Configs[usm::DisjointPoolMemType::Host])
274271
.second;
275272

276273
MemProvider = umf::memoryProviderMakeUnique<L0HostMemoryProvider>(
277274
reinterpret_cast<ur_context_handle_t>(this), nullptr)
278275
.second;
279276
HostMemProxyPool =
280-
umf::poolMakeUnique<USMProxyPool, 1>({std::move(MemProvider)}).second;
277+
umf::poolMakeUnique<USMProxyPool>(std::move(MemProvider)).second;
281278

282279
// We may allocate memory to this root device so create allocators.
283280
if (SingleRootDevice &&

source/adapters/level_zero/usm.cpp

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -834,9 +834,9 @@ ur_usm_pool_handle_t_::ur_usm_pool_handle_t_(ur_context_handle_t Context,
834834
.second;
835835

836836
HostMemPool =
837-
umf::poolMakeUnique<usm::DisjointPool, 1>(
838-
{std::move(MemProvider)},
839-
this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
837+
umf::poolMakeUniqueFromOps(
838+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
839+
&this->DisjointPoolConfigs.Configs[usm::DisjointPoolMemType::Host])
840840
.second;
841841

842842
for (auto device : Context->Devices) {
@@ -845,21 +845,21 @@ ur_usm_pool_handle_t_::ur_usm_pool_handle_t_(ur_context_handle_t Context,
845845
.second;
846846
DeviceMemPools.emplace(
847847
std::piecewise_construct, std::make_tuple(device),
848-
std::make_tuple(umf::poolMakeUnique<usm::DisjointPool, 1>(
849-
{std::move(MemProvider)},
850-
this->DisjointPoolConfigs
851-
.Configs[usm::DisjointPoolMemType::Device])
848+
std::make_tuple(umf::poolMakeUniqueFromOps(
849+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
850+
&this->DisjointPoolConfigs
851+
.Configs[usm::DisjointPoolMemType::Device])
852852
.second));
853853

854854
MemProvider =
855855
umf::memoryProviderMakeUnique<L0SharedMemoryProvider>(Context, device)
856856
.second;
857857
SharedMemPools.emplace(
858858
std::piecewise_construct, std::make_tuple(device),
859-
std::make_tuple(umf::poolMakeUnique<usm::DisjointPool, 1>(
860-
{std::move(MemProvider)},
861-
this->DisjointPoolConfigs
862-
.Configs[usm::DisjointPoolMemType::Shared])
859+
std::make_tuple(umf::poolMakeUniqueFromOps(
860+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
861+
&this->DisjointPoolConfigs
862+
.Configs[usm::DisjointPoolMemType::Shared])
863863
.second));
864864

865865
MemProvider = umf::memoryProviderMakeUnique<L0SharedReadOnlyMemoryProvider>(
@@ -868,10 +868,10 @@ ur_usm_pool_handle_t_::ur_usm_pool_handle_t_(ur_context_handle_t Context,
868868
SharedReadOnlyMemPools.emplace(
869869
std::piecewise_construct, std::make_tuple(device),
870870
std::make_tuple(
871-
umf::poolMakeUnique<usm::DisjointPool, 1>(
872-
{std::move(MemProvider)},
873-
this->DisjointPoolConfigs
874-
.Configs[usm::DisjointPoolMemType::SharedReadOnly])
871+
umf::poolMakeUniqueFromOps(
872+
&UMF_DISJOINT_POOL_OPS, std::move(MemProvider),
873+
&this->DisjointPoolConfigs
874+
.Configs[usm::DisjointPoolMemType::SharedReadOnly])
875875
.second));
876876
}
877877
}

source/adapters/level_zero/usm.hpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -139,11 +139,8 @@ class L0HostMemoryProvider final : public L0MemoryProvider {
139139
// capabilities.
140140
class USMProxyPool {
141141
public:
142-
umf_result_t initialize(umf_memory_provider_handle_t *Providers,
143-
size_t NumProviders) noexcept {
144-
std::ignore = NumProviders;
145-
146-
this->hProvider = Providers[0];
142+
umf_result_t initialize(umf_memory_provider_handle_t Provider) noexcept {
143+
this->hProvider = Provider;
147144
return UMF_RESULT_SUCCESS;
148145
}
149146
void *malloc(size_t Size) noexcept { return aligned_malloc(Size, 0); }

source/adapters/native_cpu/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ find_package(Threads REQUIRED)
5252
target_link_libraries(${TARGET_NAME} PRIVATE
5353
${PROJECT_NAME}::headers
5454
${PROJECT_NAME}::common
55-
${PROJECT_NAME}::unified_malloc_framework
5655
Threads::Threads
5756
)
5857

source/adapters/opencl/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ target_include_directories(${TARGET_NAME} PRIVATE
9595
target_link_libraries(${TARGET_NAME} PRIVATE
9696
${PROJECT_NAME}::headers
9797
${PROJECT_NAME}::common
98-
${PROJECT_NAME}::unified_malloc_framework
9998
Threads::Threads
10099
${OpenCLICDLoaderLibrary}
101100
)

0 commit comments

Comments
 (0)