Skip to content

Commit 71957e8

Browse files
authored
Merge pull request #1100 from kbenzie/benie/fixup-multi-device-compile
[CUDA][HIP][OpenCL][NATIVECPU] Fix multi-device compile
2 parents ce152a6 + e001b98 commit 71957e8

File tree

8 files changed

+68
-13
lines changed

8 files changed

+68
-13
lines changed

source/adapters/cuda/program.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,8 +263,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urProgramBuild(ur_context_handle_t hContext,
263263
}
264264

265265
UR_APIEXPORT ur_result_t UR_APICALL urProgramLinkExp(
266-
ur_context_handle_t, uint32_t, const ur_program_handle_t *, uint32_t,
267-
ur_device_handle_t *, const char *, ur_program_handle_t *) {
266+
ur_context_handle_t, uint32_t, ur_device_handle_t *, uint32_t,
267+
const ur_program_handle_t *, const char *, ur_program_handle_t *) {
268268
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
269269
}
270270

source/adapters/cuda/ur_interface_loader.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -399,9 +399,9 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetProgramExpProcAddrTable(
399399
if (UR_RESULT_SUCCESS != retVal) {
400400
return retVal;
401401
}
402-
pDdiTable->pfnBuildExp = nullptr;
403-
pDdiTable->pfnCompileExp = nullptr;
404-
pDdiTable->pfnLinkExp = nullptr;
402+
pDdiTable->pfnBuildExp = urProgramBuildExp;
403+
pDdiTable->pfnCompileExp = urProgramCompileExp;
404+
pDdiTable->pfnLinkExp = urProgramLinkExp;
405405
return retVal;
406406
}
407407

source/adapters/hip/program.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -279,8 +279,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urProgramBuild(ur_context_handle_t,
279279
}
280280

281281
UR_APIEXPORT ur_result_t UR_APICALL urProgramLinkExp(
282-
ur_context_handle_t, uint32_t, const ur_program_handle_t *, uint32_t,
283-
ur_device_handle_t *, const char *, ur_program_handle_t *) {
282+
ur_context_handle_t, uint32_t, ur_device_handle_t *, uint32_t,
283+
const ur_program_handle_t *, const char *, ur_program_handle_t *) {
284284
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
285285
}
286286

source/adapters/hip/ur_interface_loader.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -354,9 +354,9 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetProgramExpProcAddrTable(
354354
if (UR_RESULT_SUCCESS != retVal) {
355355
return retVal;
356356
}
357-
pDdiTable->pfnBuildExp = nullptr;
358-
pDdiTable->pfnCompileExp = nullptr;
359-
pDdiTable->pfnLinkExp = nullptr;
357+
pDdiTable->pfnBuildExp = urProgramBuildExp;
358+
pDdiTable->pfnCompileExp = urProgramCompileExp;
359+
pDdiTable->pfnLinkExp = urProgramLinkExp;
360360
return retVal;
361361
}
362362

source/adapters/native_cpu/program.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,26 @@ urProgramLink(ur_context_handle_t hContext, uint32_t count,
8787
DIE_NO_IMPLEMENTATION
8888
}
8989

90+
UR_APIEXPORT ur_result_t UR_APICALL urProgramCompileExp(ur_program_handle_t,
91+
uint32_t,
92+
ur_device_handle_t *,
93+
const char *) {
94+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
95+
}
96+
97+
UR_APIEXPORT ur_result_t UR_APICALL urProgramBuildExp(ur_program_handle_t,
98+
uint32_t,
99+
ur_device_handle_t *,
100+
const char *) {
101+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
102+
}
103+
104+
UR_APIEXPORT ur_result_t UR_APICALL urProgramLinkExp(
105+
ur_context_handle_t, uint32_t, ur_device_handle_t *, uint32_t,
106+
const ur_program_handle_t *, const char *, ur_program_handle_t *) {
107+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
108+
}
109+
90110
UR_APIEXPORT ur_result_t UR_APICALL
91111
urProgramRetain(ur_program_handle_t hProgram) {
92112
hProgram->incrementReferenceCount();

source/adapters/native_cpu/ur_interface_loader.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -380,4 +380,19 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetVirtualMemProcAddrTable(
380380
return retVal;
381381
}
382382

383+
UR_DLLEXPORT ur_result_t UR_APICALL urGetProgramExpProcAddrTable(
384+
ur_api_version_t version, ///< [in] API version requested
385+
ur_program_exp_dditable_t
386+
*pDdiTable ///< [in,out] pointer to table of DDI function pointers
387+
) {
388+
auto retVal = validateProcInputs(version, pDdiTable);
389+
if (UR_RESULT_SUCCESS != retVal) {
390+
return retVal;
391+
}
392+
pDdiTable->pfnBuildExp = urProgramBuildExp;
393+
pDdiTable->pfnCompileExp = urProgramCompileExp;
394+
pDdiTable->pfnLinkExp = urProgramLinkExp;
395+
return retVal;
396+
}
397+
383398
} // extern "C"

source/adapters/opencl/program.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,26 @@ urProgramLink(ur_context_handle_t hContext, uint32_t count,
220220
return UR_RESULT_SUCCESS;
221221
}
222222

223+
UR_APIEXPORT ur_result_t UR_APICALL urProgramCompileExp(ur_program_handle_t,
224+
uint32_t,
225+
ur_device_handle_t *,
226+
const char *) {
227+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
228+
}
229+
230+
UR_APIEXPORT ur_result_t UR_APICALL urProgramBuildExp(ur_program_handle_t,
231+
uint32_t,
232+
ur_device_handle_t *,
233+
const char *) {
234+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
235+
}
236+
237+
UR_APIEXPORT ur_result_t UR_APICALL urProgramLinkExp(
238+
ur_context_handle_t, uint32_t, ur_device_handle_t *, uint32_t,
239+
const ur_program_handle_t *, const char *, ur_program_handle_t *) {
240+
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
241+
}
242+
223243
static cl_int mapURProgramBuildInfoToCL(ur_program_build_info_t URPropName) {
224244

225245
switch (static_cast<uint32_t>(URPropName)) {

source/adapters/opencl/ur_interface_loader.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -390,9 +390,9 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetProgramExpProcAddrTable(
390390
if (UR_RESULT_SUCCESS != retVal) {
391391
return retVal;
392392
}
393-
pDdiTable->pfnBuildExp = nullptr;
394-
pDdiTable->pfnCompileExp = nullptr;
395-
pDdiTable->pfnLinkExp = nullptr;
393+
pDdiTable->pfnBuildExp = urProgramBuildExp;
394+
pDdiTable->pfnCompileExp = urProgramCompileExp;
395+
pDdiTable->pfnLinkExp = urProgramLinkExp;
396396
return retVal;
397397
}
398398

0 commit comments

Comments
 (0)