Skip to content

Commit b006f18

Browse files
committed
Set loader callback and add adapter implementations.
1 parent dac251d commit b006f18

File tree

7 files changed

+61
-0
lines changed

7 files changed

+61
-0
lines changed

scripts/templates/ldrddi.cpp.mako

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ namespace ur_loader
5151
add_local = False
5252
%>
5353

54+
%if re.match(r"\w+SetLoggerCallback$", th.make_func_name(n, tags, obj)):
55+
56+
ur_loader::urSetLoggerCallback(${obj['params'][0]['name']}, ${obj['params'][1]['name']}, ${obj['params'][2]['name']});
57+
58+
%endif
59+
5460
%if re.match(r"\w+AdapterGet$", th.make_func_name(n, tags, obj)):
5561

5662
size_t adapterIndex = 0;

source/adapters/cuda/adapter.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,3 +110,14 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
110110

111111
return UR_RESULT_SUCCESS;
112112
}
113+
114+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
115+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
116+
void *pUserData) {
117+
118+
if (adapter) {
119+
adapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
120+
}
121+
122+
return UR_RESULT_SUCCESS;
123+
}

source/adapters/hip/adapter.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,3 +99,14 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
9999

100100
return UR_RESULT_SUCCESS;
101101
}
102+
103+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
104+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
105+
void *pUserData) {
106+
107+
if (adapter) {
108+
adapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
109+
}
110+
111+
return UR_RESULT_SUCCESS;
112+
}

source/adapters/level_zero/adapter.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,3 +333,14 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
333333

334334
return UR_RESULT_SUCCESS;
335335
}
336+
337+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
338+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
339+
void *pUserData) {
340+
341+
if (GlobalAdapter) {
342+
GlobalAdapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
343+
}
344+
345+
return UR_RESULT_SUCCESS;
346+
}

source/adapters/native_cpu/adapter.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,12 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
6363

6464
return UR_RESULT_SUCCESS;
6565
}
66+
67+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
68+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
69+
void *pUserData) {
70+
71+
Adapter.logger.setSinkCallback(pfnLoggerCallback, pUserData);
72+
73+
return UR_RESULT_SUCCESS;
74+
}

source/adapters/opencl/adapter.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,14 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
101101

102102
return UR_RESULT_SUCCESS;
103103
}
104+
105+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
106+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
107+
void *pUserData) {
108+
109+
if (adapter) {
110+
adapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
111+
}
112+
113+
return UR_RESULT_SUCCESS;
114+
}

source/loader/ur_ldrddi.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,8 @@ __urdlllocal ur_result_t UR_APICALL urSetLoggerCallback(
202202
) {
203203
ur_result_t result = UR_RESULT_SUCCESS;
204204

205+
ur_loader::urSetLoggerCallback(hAdapter, pfnLoggerCallback, pUserData);
206+
205207
// extract platform's function pointer table
206208
auto dditable = reinterpret_cast<ur_adapter_object_t *>(hAdapter)->dditable;
207209
auto pfnSetLoggerCallback = dditable->ur.Global.pfnSetLoggerCallback;

0 commit comments

Comments
 (0)