Skip to content

Commit 1481b22

Browse files
committed
Set loader callback and add adapter implementations.
1 parent 831b46d commit 1481b22

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
@@ -114,3 +114,14 @@ UR_APIEXPORT ur_result_t UR_APICALL urAdapterGetInfo(ur_adapter_handle_t,
114114

115115
return UR_RESULT_SUCCESS;
116116
}
117+
118+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
119+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
120+
void *pUserData) {
121+
122+
if (adapter) {
123+
adapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
124+
}
125+
126+
return UR_RESULT_SUCCESS;
127+
}

source/adapters/hip/adapter.cpp

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

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

source/adapters/level_zero/adapter.cpp

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

337337
return UR_RESULT_SUCCESS;
338338
}
339+
340+
UR_APIEXPORT ur_result_t UR_APICALL urSetLoggerCallback(
341+
ur_adapter_handle_t, ur_logger_output_callback_t pfnLoggerCallback,
342+
void *pUserData) {
343+
344+
if (GlobalAdapter) {
345+
GlobalAdapter->log.setSinkCallback(pfnLoggerCallback, pUserData);
346+
}
347+
348+
return UR_RESULT_SUCCESS;
349+
}

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
@@ -201,6 +201,8 @@ __urdlllocal ur_result_t UR_APICALL urSetLoggerCallback(
201201
) {
202202
ur_result_t result = UR_RESULT_SUCCESS;
203203

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

0 commit comments

Comments
 (0)