@@ -196,9 +196,6 @@ typedef enum ur_function_t {
196
196
UR_FUNCTION_ADAPTER_RETAIN = 179, ///< Enumerator for ::urAdapterRetain
197
197
UR_FUNCTION_ADAPTER_GET_LAST_ERROR = 180, ///< Enumerator for ::urAdapterGetLastError
198
198
UR_FUNCTION_ADAPTER_GET_INFO = 181, ///< Enumerator for ::urAdapterGetInfo
199
- UR_FUNCTION_PROGRAM_BUILD_EXP = 197, ///< Enumerator for ::urProgramBuildExp
200
- UR_FUNCTION_PROGRAM_COMPILE_EXP = 198, ///< Enumerator for ::urProgramCompileExp
201
- UR_FUNCTION_PROGRAM_LINK_EXP = 199, ///< Enumerator for ::urProgramLinkExp
202
199
UR_FUNCTION_LOADER_CONFIG_SET_CODE_LOCATION_CALLBACK = 200, ///< Enumerator for ::urLoaderConfigSetCodeLocationCallback
203
200
UR_FUNCTION_LOADER_INIT = 201, ///< Enumerator for ::urLoaderInit
204
201
UR_FUNCTION_LOADER_TEAR_DOWN = 202, ///< Enumerator for ::urLoaderTearDown
@@ -4091,17 +4088,21 @@ urProgramCreateWithBinary(
4091
4088
/// - ::UR_RESULT_ERROR_DEVICE_LOST
4092
4089
/// - ::UR_RESULT_ERROR_ADAPTER_SPECIFIC
4093
4090
/// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
4094
- /// + `NULL == hContext`
4095
4091
/// + `NULL == hProgram`
4092
+ /// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
4093
+ /// + `NULL == phDevices`
4096
4094
/// - ::UR_RESULT_ERROR_INVALID_PROGRAM
4097
4095
/// + If `hProgram` isn't a valid program object.
4098
4096
/// - ::UR_RESULT_ERROR_PROGRAM_BUILD_FAILURE
4099
4097
/// + If an error occurred when building `hProgram`.
4098
+ /// - ::UR_RESULT_ERROR_INVALID_SIZE
4099
+ /// + `numDevices == 0`
4100
4100
UR_APIEXPORT ur_result_t UR_APICALL
4101
4101
urProgramBuild(
4102
- ur_context_handle_t hContext, ///< [in] handle of the context instance.
4103
- ur_program_handle_t hProgram, ///< [in] Handle of the program to build.
4104
- const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
4102
+ ur_program_handle_t hProgram, ///< [in] Handle of the program to build.
4103
+ uint32_t numDevices, ///< [in] length of `phDevices`
4104
+ ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
4105
+ const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
4105
4106
);
4106
4107
4107
4108
///////////////////////////////////////////////////////////////////////////////
@@ -4123,17 +4124,21 @@ urProgramBuild(
4123
4124
/// - ::UR_RESULT_ERROR_DEVICE_LOST
4124
4125
/// - ::UR_RESULT_ERROR_ADAPTER_SPECIFIC
4125
4126
/// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
4126
- /// + `NULL == hContext`
4127
4127
/// + `NULL == hProgram`
4128
+ /// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
4129
+ /// + `NULL == phDevices`
4128
4130
/// - ::UR_RESULT_ERROR_INVALID_PROGRAM
4129
4131
/// + If `hProgram` isn't a valid program object.
4130
4132
/// - ::UR_RESULT_ERROR_PROGRAM_BUILD_FAILURE
4131
4133
/// + If an error occurred while compiling `hProgram`.
4134
+ /// - ::UR_RESULT_ERROR_INVALID_SIZE
4135
+ /// + `numDevices == 0`
4132
4136
UR_APIEXPORT ur_result_t UR_APICALL
4133
4137
urProgramCompile(
4134
- ur_context_handle_t hContext, ///< [in] handle of the context instance.
4135
- ur_program_handle_t hProgram, ///< [in][out] handle of the program to compile.
4136
- const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
4138
+ ur_program_handle_t hProgram, ///< [in][out] handle of the program to compile.
4139
+ uint32_t numDevices, ///< [in] length of `phDevices`
4140
+ ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
4141
+ const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
4137
4142
);
4138
4143
4139
4144
///////////////////////////////////////////////////////////////////////////////
@@ -4158,17 +4163,21 @@ urProgramCompile(
4158
4163
/// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
4159
4164
/// + `NULL == hContext`
4160
4165
/// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
4166
+ /// + `NULL == phDevices`
4161
4167
/// + `NULL == phPrograms`
4162
4168
/// + `NULL == phProgram`
4163
4169
/// - ::UR_RESULT_ERROR_INVALID_PROGRAM
4164
4170
/// + If one of the programs in `phPrograms` isn't a valid program object.
4165
4171
/// - ::UR_RESULT_ERROR_INVALID_SIZE
4172
+ /// + `numDevices == 0`
4166
4173
/// + `count == 0`
4167
4174
/// - ::UR_RESULT_ERROR_PROGRAM_LINK_FAILURE
4168
4175
/// + If an error occurred while linking `phPrograms`.
4169
4176
UR_APIEXPORT ur_result_t UR_APICALL
4170
4177
urProgramLink(
4171
4178
ur_context_handle_t hContext, ///< [in] handle of the context instance.
4179
+ uint32_t numDevices, ///< [in] number of devices
4180
+ ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
4172
4181
uint32_t count, ///< [in] number of program handles in `phPrograms`.
4173
4182
const ur_program_handle_t *phPrograms, ///< [in][range(0, count)] pointer to array of program handles.
4174
4183
const char *pOptions, ///< [in][optional] pointer to linker options null-terminated string.
@@ -8423,131 +8432,6 @@ urKernelSuggestMaxCooperativeGroupCountExp(
8423
8432
uint32_t *pGroupCountRet ///< [out] pointer to maximum number of groups
8424
8433
);
8425
8434
8426
- #if !defined(__GNUC__)
8427
- #pragma endregion
8428
- #endif
8429
- // Intel 'oneAPI' Unified Runtime Experimental APIs for multi-device compile
8430
- #if !defined(__GNUC__)
8431
- #pragma region multi device compile(experimental)
8432
- #endif
8433
- ///////////////////////////////////////////////////////////////////////////////
8434
- #ifndef UR_MULTI_DEVICE_COMPILE_EXTENSION_STRING_EXP
8435
- /// @brief The extension string which defines support for test
8436
- /// which is returned when querying device extensions.
8437
- #define UR_MULTI_DEVICE_COMPILE_EXTENSION_STRING_EXP "ur_exp_multi_device_compile"
8438
- #endif // UR_MULTI_DEVICE_COMPILE_EXTENSION_STRING_EXP
8439
-
8440
- ///////////////////////////////////////////////////////////////////////////////
8441
- /// @brief Produces an executable program from one program, negates need for the
8442
- /// linking step.
8443
- ///
8444
- /// @details
8445
- /// - The application may call this function from simultaneous threads.
8446
- /// - Following a successful call to this entry point, the program passed
8447
- /// will contain a binary of the ::UR_PROGRAM_BINARY_TYPE_EXECUTABLE type
8448
- /// for each device in `phDevices`.
8449
- ///
8450
- /// @remarks
8451
- /// _Analogues_
8452
- /// - **clBuildProgram**
8453
- ///
8454
- /// @returns
8455
- /// - ::UR_RESULT_SUCCESS
8456
- /// - ::UR_RESULT_ERROR_UNINITIALIZED
8457
- /// - ::UR_RESULT_ERROR_DEVICE_LOST
8458
- /// - ::UR_RESULT_ERROR_ADAPTER_SPECIFIC
8459
- /// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
8460
- /// + `NULL == hProgram`
8461
- /// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
8462
- /// + `NULL == phDevices`
8463
- /// - ::UR_RESULT_ERROR_INVALID_PROGRAM
8464
- /// + If `hProgram` isn't a valid program object.
8465
- /// - ::UR_RESULT_ERROR_PROGRAM_BUILD_FAILURE
8466
- /// + If an error occurred when building `hProgram`.
8467
- UR_APIEXPORT ur_result_t UR_APICALL
8468
- urProgramBuildExp(
8469
- ur_program_handle_t hProgram, ///< [in] Handle of the program to build.
8470
- uint32_t numDevices, ///< [in] number of devices
8471
- ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
8472
- const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
8473
- );
8474
-
8475
- ///////////////////////////////////////////////////////////////////////////////
8476
- /// @brief Produces an executable program from one or more programs.
8477
- ///
8478
- /// @details
8479
- /// - The application may call this function from simultaneous threads.
8480
- /// - Following a successful call to this entry point `hProgram` will
8481
- /// contain a binary of the ::UR_PROGRAM_BINARY_TYPE_COMPILED_OBJECT type
8482
- /// for each device in `phDevices`.
8483
- ///
8484
- /// @remarks
8485
- /// _Analogues_
8486
- /// - **clCompileProgram**
8487
- ///
8488
- /// @returns
8489
- /// - ::UR_RESULT_SUCCESS
8490
- /// - ::UR_RESULT_ERROR_UNINITIALIZED
8491
- /// - ::UR_RESULT_ERROR_DEVICE_LOST
8492
- /// - ::UR_RESULT_ERROR_ADAPTER_SPECIFIC
8493
- /// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
8494
- /// + `NULL == hProgram`
8495
- /// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
8496
- /// + `NULL == phDevices`
8497
- /// - ::UR_RESULT_ERROR_INVALID_PROGRAM
8498
- /// + If `hProgram` isn't a valid program object.
8499
- /// - ::UR_RESULT_ERROR_PROGRAM_BUILD_FAILURE
8500
- /// + If an error occurred while compiling `hProgram`.
8501
- UR_APIEXPORT ur_result_t UR_APICALL
8502
- urProgramCompileExp(
8503
- ur_program_handle_t hProgram, ///< [in][out] handle of the program to compile.
8504
- uint32_t numDevices, ///< [in] number of devices
8505
- ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
8506
- const char *pOptions ///< [in][optional] pointer to build options null-terminated string.
8507
- );
8508
-
8509
- ///////////////////////////////////////////////////////////////////////////////
8510
- /// @brief Produces an executable program from one or more programs.
8511
- ///
8512
- /// @details
8513
- /// - The application may call this function from simultaneous threads.
8514
- /// - Following a successful call to this entry point the program returned
8515
- /// in `phProgram` will contain a binary of the
8516
- /// ::UR_PROGRAM_BINARY_TYPE_EXECUTABLE type for each device in
8517
- /// `phDevices`.
8518
- ///
8519
- /// @remarks
8520
- /// _Analogues_
8521
- /// - **clLinkProgram**
8522
- ///
8523
- /// @returns
8524
- /// - ::UR_RESULT_SUCCESS
8525
- /// - ::UR_RESULT_ERROR_UNINITIALIZED
8526
- /// - ::UR_RESULT_ERROR_DEVICE_LOST
8527
- /// - ::UR_RESULT_ERROR_ADAPTER_SPECIFIC
8528
- /// - ::UR_RESULT_ERROR_INVALID_NULL_HANDLE
8529
- /// + `NULL == hContext`
8530
- /// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
8531
- /// + `NULL == phDevices`
8532
- /// + `NULL == phPrograms`
8533
- /// + `NULL == phProgram`
8534
- /// - ::UR_RESULT_ERROR_INVALID_PROGRAM
8535
- /// + If one of the programs in `phPrograms` isn't a valid program object.
8536
- /// - ::UR_RESULT_ERROR_INVALID_SIZE
8537
- /// + `count == 0`
8538
- /// - ::UR_RESULT_ERROR_PROGRAM_LINK_FAILURE
8539
- /// + If an error occurred while linking `phPrograms`.
8540
- UR_APIEXPORT ur_result_t UR_APICALL
8541
- urProgramLinkExp(
8542
- ur_context_handle_t hContext, ///< [in] handle of the context instance.
8543
- uint32_t numDevices, ///< [in] number of devices
8544
- ur_device_handle_t *phDevices, ///< [in][range(0, numDevices)] pointer to array of device handles
8545
- uint32_t count, ///< [in] number of program handles in `phPrograms`.
8546
- const ur_program_handle_t *phPrograms, ///< [in][range(0, count)] pointer to array of program handles.
8547
- const char *pOptions, ///< [in][optional] pointer to linker options null-terminated string.
8548
- ur_program_handle_t *phProgram ///< [out] pointer to handle of program object created.
8549
- );
8550
-
8551
8435
#if !defined(__GNUC__)
8552
8436
#pragma endregion
8553
8437
#endif
@@ -9054,68 +8938,36 @@ typedef struct ur_program_create_with_binary_params_t {
9054
8938
/// @details Each entry is a pointer to the parameter passed to the function;
9055
8939
/// allowing the callback the ability to modify the parameter's value
9056
8940
typedef struct ur_program_build_params_t {
9057
- ur_context_handle_t *phContext;
9058
- ur_program_handle_t *phProgram;
9059
- const char **ppOptions;
9060
- } ur_program_build_params_t;
9061
-
9062
- ///////////////////////////////////////////////////////////////////////////////
9063
- /// @brief Function parameters for urProgramBuildExp
9064
- /// @details Each entry is a pointer to the parameter passed to the function;
9065
- /// allowing the callback the ability to modify the parameter's value
9066
- typedef struct ur_program_build_exp_params_t {
9067
8941
ur_program_handle_t *phProgram;
9068
8942
uint32_t *pnumDevices;
9069
8943
ur_device_handle_t **pphDevices;
9070
8944
const char **ppOptions;
9071
- } ur_program_build_exp_params_t ;
8945
+ } ur_program_build_params_t ;
9072
8946
9073
8947
///////////////////////////////////////////////////////////////////////////////
9074
8948
/// @brief Function parameters for urProgramCompile
9075
8949
/// @details Each entry is a pointer to the parameter passed to the function;
9076
8950
/// allowing the callback the ability to modify the parameter's value
9077
8951
typedef struct ur_program_compile_params_t {
9078
- ur_context_handle_t *phContext;
9079
- ur_program_handle_t *phProgram;
9080
- const char **ppOptions;
9081
- } ur_program_compile_params_t;
9082
-
9083
- ///////////////////////////////////////////////////////////////////////////////
9084
- /// @brief Function parameters for urProgramCompileExp
9085
- /// @details Each entry is a pointer to the parameter passed to the function;
9086
- /// allowing the callback the ability to modify the parameter's value
9087
- typedef struct ur_program_compile_exp_params_t {
9088
8952
ur_program_handle_t *phProgram;
9089
8953
uint32_t *pnumDevices;
9090
8954
ur_device_handle_t **pphDevices;
9091
8955
const char **ppOptions;
9092
- } ur_program_compile_exp_params_t ;
8956
+ } ur_program_compile_params_t ;
9093
8957
9094
8958
///////////////////////////////////////////////////////////////////////////////
9095
8959
/// @brief Function parameters for urProgramLink
9096
8960
/// @details Each entry is a pointer to the parameter passed to the function;
9097
8961
/// allowing the callback the ability to modify the parameter's value
9098
8962
typedef struct ur_program_link_params_t {
9099
- ur_context_handle_t *phContext;
9100
- uint32_t *pcount;
9101
- const ur_program_handle_t **pphPrograms;
9102
- const char **ppOptions;
9103
- ur_program_handle_t **pphProgram;
9104
- } ur_program_link_params_t;
9105
-
9106
- ///////////////////////////////////////////////////////////////////////////////
9107
- /// @brief Function parameters for urProgramLinkExp
9108
- /// @details Each entry is a pointer to the parameter passed to the function;
9109
- /// allowing the callback the ability to modify the parameter's value
9110
- typedef struct ur_program_link_exp_params_t {
9111
8963
ur_context_handle_t *phContext;
9112
8964
uint32_t *pnumDevices;
9113
8965
ur_device_handle_t **pphDevices;
9114
8966
uint32_t *pcount;
9115
8967
const ur_program_handle_t **pphPrograms;
9116
8968
const char **ppOptions;
9117
8969
ur_program_handle_t **pphProgram;
9118
- } ur_program_link_exp_params_t ;
8970
+ } ur_program_link_params_t ;
9119
8971
9120
8972
///////////////////////////////////////////////////////////////////////////////
9121
8973
/// @brief Function parameters for urProgramRetain
0 commit comments