@@ -258,6 +258,7 @@ typedef enum ur_structure_type_t {
258
258
UR_STRUCTURE_TYPE_KERNEL_EXEC_INFO_PROPERTIES = 31, ///< ::ur_kernel_exec_info_properties_t
259
259
UR_STRUCTURE_TYPE_KERNEL_ARG_VALUE_PROPERTIES = 32, ///< ::ur_kernel_arg_value_properties_t
260
260
UR_STRUCTURE_TYPE_KERNEL_ARG_LOCAL_PROPERTIES = 33, ///< ::ur_kernel_arg_local_properties_t
261
+ UR_STRUCTURE_TYPE_USM_ALLOC_LOCATION_DESC = 35, ///< ::ur_usm_alloc_location_desc_t
261
262
UR_STRUCTURE_TYPE_EXP_COMMAND_BUFFER_DESC = 0x1000, ///< ::ur_exp_command_buffer_desc_t
262
263
UR_STRUCTURE_TYPE_EXP_SAMPLER_MIP_PROPERTIES = 0x2000, ///< ::ur_exp_sampler_mip_properties_t
263
264
UR_STRUCTURE_TYPE_EXP_INTEROP_MEM_DESC = 0x2001, ///< ::ur_exp_interop_mem_desc_t
@@ -3287,6 +3288,25 @@ typedef struct ur_usm_device_desc_t {
3287
3288
3288
3289
} ur_usm_device_desc_t;
3289
3290
3291
+ ///////////////////////////////////////////////////////////////////////////////
3292
+ /// @brief USM allocation location desc
3293
+ ///
3294
+ /// @details
3295
+ /// - Specify these properties in ::urUSMHostAlloc, ::urUSMDeviceAlloc and
3296
+ /// ::urUSMSharedAlloc via ::ur_usm_desc_t as part of a `pNext` chain.
3297
+ ///
3298
+ /// @remarks
3299
+ /// _Analogues_
3300
+ /// - cl_intel_mem_alloc_buffer_location
3301
+ typedef struct ur_usm_alloc_location_desc_t {
3302
+ ur_structure_type_t stype; ///< [in] type of this structure, must be
3303
+ ///< ::UR_STRUCTURE_TYPE_USM_ALLOC_LOCATION_DESC
3304
+ const void *pNext; ///< [in][optional] pointer to extension-specific structure
3305
+ uint32_t location; ///< [in] Identifies the ID of global memory partition to which the memory
3306
+ ///< should be allocated.
3307
+
3308
+ } ur_usm_alloc_location_desc_t;
3309
+
3290
3310
///////////////////////////////////////////////////////////////////////////////
3291
3311
/// @brief USM pool descriptor type
3292
3312
typedef struct ur_usm_pool_desc_t {
@@ -3324,6 +3344,7 @@ typedef struct ur_usm_pool_limits_desc_t {
3324
3344
/// - Any flags/hints passed through pUSMDesc only affect the single
3325
3345
/// allocation.
3326
3346
/// - See also ::ur_usm_host_desc_t.
3347
+ /// - See also ::ur_usm_alloc_location_desc_t.
3327
3348
///
3328
3349
/// @returns
3329
3350
/// - ::UR_RESULT_SUCCESS
@@ -3369,6 +3390,7 @@ urUSMHostAlloc(
3369
3390
/// - Any flags/hints passed through pUSMDesc only affect the single
3370
3391
/// allocation.
3371
3392
/// - See also ::ur_usm_device_desc_t.
3393
+ /// - See also ::ur_usm_alloc_location_desc_t.
3372
3394
///
3373
3395
/// @returns
3374
3396
/// - ::UR_RESULT_SUCCESS
@@ -3417,6 +3439,7 @@ urUSMDeviceAlloc(
3417
3439
/// allocation.
3418
3440
/// - See also ::ur_usm_host_desc_t.
3419
3441
/// - See also ::ur_usm_device_desc_t.
3442
+ /// - See also ::ur_usm_alloc_location_desc_t.
3420
3443
///
3421
3444
/// @returns
3422
3445
/// - ::UR_RESULT_SUCCESS
0 commit comments