@@ -18,32 +18,6 @@ std::mutex ZeCall::GlobalLock;
18
18
19
19
ZeUSMImportExtension ZeUSMImport;
20
20
21
- void zePrint (const char *Format, ...) {
22
- if (ZeDebug & ZE_DEBUG_BASIC) {
23
- va_list Args;
24
- va_start (Args, Format);
25
- vfprintf (stderr, Format, Args);
26
- va_end (Args);
27
- }
28
- }
29
-
30
- // This function will ensure compatibility with both Linux and Windows for
31
- // setting environment variables.
32
- bool setEnvVar (const char *name, const char *value) {
33
- #ifdef _WIN32
34
- int Res = _putenv_s (name, value);
35
- #else
36
- int Res = setenv (name, value, 1 );
37
- #endif
38
- if (Res != 0 ) {
39
- zePrint (
40
- " Level Zero plugin was unable to set the environment variable: %s\n " ,
41
- name);
42
- return false ;
43
- }
44
- return true ;
45
- }
46
-
47
21
// Trace a call to Level-Zero RT
48
22
#define ZE_CALL (ZeName, ZeArgs ) \
49
23
{ \
@@ -52,182 +26,6 @@ bool setEnvVar(const char *name, const char *value) {
52
26
return ze2urResult (Result); \
53
27
}
54
28
55
- // This will count the calls to Level-Zero
56
- std::map<const char *, int > *ZeCallCount = nullptr ;
57
-
58
- inline void zeParseError (ze_result_t ZeError, const char *&ErrorString) {
59
- switch (ZeError) {
60
- #define ZE_ERRCASE (ERR ) \
61
- case ERR: \
62
- ErrorString = " " #ERR; \
63
- break ;
64
-
65
- ZE_ERRCASE (ZE_RESULT_SUCCESS)
66
- ZE_ERRCASE (ZE_RESULT_NOT_READY)
67
- ZE_ERRCASE (ZE_RESULT_ERROR_DEVICE_LOST)
68
- ZE_ERRCASE (ZE_RESULT_ERROR_OUT_OF_HOST_MEMORY)
69
- ZE_ERRCASE (ZE_RESULT_ERROR_OUT_OF_DEVICE_MEMORY)
70
- ZE_ERRCASE (ZE_RESULT_ERROR_MODULE_BUILD_FAILURE)
71
- ZE_ERRCASE (ZE_RESULT_ERROR_INSUFFICIENT_PERMISSIONS)
72
- ZE_ERRCASE (ZE_RESULT_ERROR_NOT_AVAILABLE)
73
- ZE_ERRCASE (ZE_RESULT_ERROR_UNINITIALIZED)
74
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_VERSION)
75
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_FEATURE)
76
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_ARGUMENT)
77
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_NULL_HANDLE)
78
- ZE_ERRCASE (ZE_RESULT_ERROR_HANDLE_OBJECT_IN_USE)
79
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_NULL_POINTER)
80
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_SIZE)
81
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_SIZE)
82
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_ALIGNMENT)
83
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_SYNCHRONIZATION_OBJECT)
84
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_ENUMERATION)
85
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_ENUMERATION)
86
- ZE_ERRCASE (ZE_RESULT_ERROR_UNSUPPORTED_IMAGE_FORMAT)
87
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_NATIVE_BINARY)
88
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_GLOBAL_NAME)
89
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_KERNEL_NAME)
90
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_FUNCTION_NAME)
91
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_GROUP_SIZE_DIMENSION)
92
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_GLOBAL_WIDTH_DIMENSION)
93
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_KERNEL_ARGUMENT_INDEX)
94
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_KERNEL_ARGUMENT_SIZE)
95
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_KERNEL_ATTRIBUTE_VALUE)
96
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_COMMAND_LIST_TYPE)
97
- ZE_ERRCASE (ZE_RESULT_ERROR_OVERLAPPING_REGIONS)
98
- ZE_ERRCASE (ZE_RESULT_ERROR_INVALID_MODULE_UNLINKED)
99
- ZE_ERRCASE (ZE_RESULT_ERROR_UNKNOWN)
100
-
101
- #undef ZE_ERRCASE
102
- default :
103
- assert (false && " Unexpected Error code" );
104
- } // switch
105
- }
106
-
107
- ze_result_t ZeCall::doCall (ze_result_t ZeResult, const char *ZeName,
108
- const char *ZeArgs, bool TraceError) {
109
- zePrint (" ZE ---> %s%s\n " , ZeName, ZeArgs);
110
-
111
- if (ZeDebug & ZE_DEBUG_CALL_COUNT) {
112
- ++(*ZeCallCount)[ZeName];
113
- }
114
-
115
- if (ZeResult && TraceError) {
116
- const char *ErrorString = " Unknown" ;
117
- zeParseError (ZeResult, ErrorString);
118
- zePrint (" Error (%s) in %s\n " , ErrorString, ZeName);
119
- }
120
- return ZeResult;
121
- }
122
-
123
- // Specializations for various L0 structures
124
- template <> ze_structure_type_t getZeStructureType<ze_event_pool_desc_t >() {
125
- return ZE_STRUCTURE_TYPE_EVENT_POOL_DESC;
126
- }
127
- template <> ze_structure_type_t getZeStructureType<ze_fence_desc_t >() {
128
- return ZE_STRUCTURE_TYPE_FENCE_DESC;
129
- }
130
- template <> ze_structure_type_t getZeStructureType<ze_command_list_desc_t >() {
131
- return ZE_STRUCTURE_TYPE_COMMAND_LIST_DESC;
132
- }
133
- template <> ze_structure_type_t getZeStructureType<ze_context_desc_t >() {
134
- return ZE_STRUCTURE_TYPE_CONTEXT_DESC;
135
- }
136
- template <>
137
- ze_structure_type_t
138
- getZeStructureType<ze_relaxed_allocation_limits_exp_desc_t >() {
139
- return ZE_STRUCTURE_TYPE_RELAXED_ALLOCATION_LIMITS_EXP_DESC;
140
- }
141
- template <> ze_structure_type_t getZeStructureType<ze_host_mem_alloc_desc_t >() {
142
- return ZE_STRUCTURE_TYPE_HOST_MEM_ALLOC_DESC;
143
- }
144
- template <>
145
- ze_structure_type_t getZeStructureType<ze_device_mem_alloc_desc_t >() {
146
- return ZE_STRUCTURE_TYPE_DEVICE_MEM_ALLOC_DESC;
147
- }
148
- template <> ze_structure_type_t getZeStructureType<ze_command_queue_desc_t >() {
149
- return ZE_STRUCTURE_TYPE_COMMAND_QUEUE_DESC;
150
- }
151
- template <> ze_structure_type_t getZeStructureType<ze_image_desc_t >() {
152
- return ZE_STRUCTURE_TYPE_IMAGE_DESC;
153
- }
154
- template <> ze_structure_type_t getZeStructureType<ze_module_desc_t >() {
155
- return ZE_STRUCTURE_TYPE_MODULE_DESC;
156
- }
157
- template <>
158
- ze_structure_type_t getZeStructureType<ze_module_program_exp_desc_t >() {
159
- return ZE_STRUCTURE_TYPE_MODULE_PROGRAM_EXP_DESC;
160
- }
161
- template <> ze_structure_type_t getZeStructureType<ze_kernel_desc_t >() {
162
- return ZE_STRUCTURE_TYPE_KERNEL_DESC;
163
- }
164
- template <> ze_structure_type_t getZeStructureType<ze_event_desc_t >() {
165
- return ZE_STRUCTURE_TYPE_EVENT_DESC;
166
- }
167
- template <> ze_structure_type_t getZeStructureType<ze_sampler_desc_t >() {
168
- return ZE_STRUCTURE_TYPE_SAMPLER_DESC;
169
- }
170
- template <> ze_structure_type_t getZeStructureType<ze_driver_properties_t >() {
171
- return ZE_STRUCTURE_TYPE_DRIVER_PROPERTIES;
172
- }
173
- template <> ze_structure_type_t getZeStructureType<ze_device_properties_t >() {
174
- return ZE_STRUCTURE_TYPE_DEVICE_PROPERTIES;
175
- }
176
- template <>
177
- ze_structure_type_t getZeStructureType<ze_device_compute_properties_t >() {
178
- return ZE_STRUCTURE_TYPE_DEVICE_COMPUTE_PROPERTIES;
179
- }
180
- template <>
181
- ze_structure_type_t getZeStructureType<ze_command_queue_group_properties_t >() {
182
- return ZE_STRUCTURE_TYPE_COMMAND_QUEUE_GROUP_PROPERTIES;
183
- }
184
- template <>
185
- ze_structure_type_t getZeStructureType<ze_device_image_properties_t >() {
186
- return ZE_STRUCTURE_TYPE_DEVICE_IMAGE_PROPERTIES;
187
- }
188
- template <>
189
- ze_structure_type_t getZeStructureType<ze_device_module_properties_t >() {
190
- return ZE_STRUCTURE_TYPE_DEVICE_MODULE_PROPERTIES;
191
- }
192
- template <>
193
- ze_structure_type_t getZeStructureType<ze_device_cache_properties_t >() {
194
- return ZE_STRUCTURE_TYPE_DEVICE_CACHE_PROPERTIES;
195
- }
196
- template <>
197
- ze_structure_type_t getZeStructureType<ze_device_memory_properties_t >() {
198
- return ZE_STRUCTURE_TYPE_DEVICE_MEMORY_PROPERTIES;
199
- }
200
- template <>
201
- ze_structure_type_t getZeStructureType<ze_device_memory_ext_properties_t >() {
202
- return ZE_STRUCTURE_TYPE_DEVICE_MEMORY_EXT_PROPERTIES;
203
- }
204
- template <>
205
- ze_structure_type_t getZeStructureType<ze_device_memory_access_properties_t >() {
206
- return ZE_STRUCTURE_TYPE_DEVICE_MEMORY_ACCESS_PROPERTIES;
207
- }
208
- template <> ze_structure_type_t getZeStructureType<ze_module_properties_t >() {
209
- return ZE_STRUCTURE_TYPE_MODULE_PROPERTIES;
210
- }
211
- template <> ze_structure_type_t getZeStructureType<ze_kernel_properties_t >() {
212
- return ZE_STRUCTURE_TYPE_KERNEL_PROPERTIES;
213
- }
214
- template <>
215
- ze_structure_type_t getZeStructureType<ze_memory_allocation_properties_t >() {
216
- return ZE_STRUCTURE_TYPE_MEMORY_ALLOCATION_PROPERTIES;
217
- }
218
-
219
- template <> zes_structure_type_t getZesStructureType<zes_pci_properties_t >() {
220
- return ZES_STRUCTURE_TYPE_PCI_PROPERTIES;
221
- }
222
-
223
- template <> zes_structure_type_t getZesStructureType<zes_mem_state_t >() {
224
- return ZES_STRUCTURE_TYPE_MEM_STATE;
225
- }
226
-
227
- template <> zes_structure_type_t getZesStructureType<zes_mem_properties_t >() {
228
- return ZES_STRUCTURE_TYPE_MEM_PROPERTIES;
229
- }
230
-
231
29
static const bool ExposeCSliceInAffinityPartitioning = [] {
232
30
const char *Flag =
233
31
std::getenv (" SYCL_PI_LEVEL_ZERO_EXPOSE_CSLICE_IN_AFFINITY_PARTITIONING" );
0 commit comments