@@ -107,11 +107,13 @@ UR_APIEXPORT ur_result_t UR_APICALL urDeviceGetInfo(ur_device_handle_t hDevice,
107
107
}
108
108
// Unimplemented features
109
109
case UR_DEVICE_INFO_PROGRAM_SET_SPECIALIZATION_CONSTANTS:
110
+ case UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS:
110
111
case UR_DEVICE_INFO_USM_POOL_SUPPORT:
111
112
case UR_DEVICE_INFO_COMMAND_BUFFER_SUPPORT_EXP:
112
113
case UR_DEVICE_INFO_IMAGE_SUPPORT:
113
114
case UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT:
114
115
case UR_DEVICE_INFO_MEM_CHANNEL_SUPPORT:
116
+ case UR_DEVICE_INFO_HOST_PIPE_READ_WRITE_SUPPORT:
115
117
// TODO: Atomic queries in Offload
116
118
case UR_DEVICE_INFO_ATOMIC_64:
117
119
case UR_DEVICE_INFO_IMAGE_SRGB:
@@ -134,6 +136,71 @@ UR_APIEXPORT ur_result_t UR_APICALL urDeviceGetInfo(ur_device_handle_t hDevice,
134
136
}
135
137
return UR_RESULT_SUCCESS;
136
138
}
139
+ case UR_DEVICE_INFO_PARTITION_MAX_SUB_DEVICES: {
140
+ return ReturnValue (0u );
141
+ }
142
+ case UR_DEVICE_INFO_PARTITION_AFFINITY_DOMAIN: {
143
+ return ReturnValue (0u );
144
+ }
145
+ case UR_DEVICE_INFO_PARTITION_TYPE: {
146
+ if (pPropSizeRet) {
147
+ *pPropSizeRet = 0 ;
148
+ }
149
+ return UR_RESULT_SUCCESS;
150
+ }
151
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_CHAR: {
152
+ return ReturnValue (1u );
153
+ }
154
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_SHORT: {
155
+ return ReturnValue (1u );
156
+ }
157
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_INT: {
158
+ return ReturnValue (1u );
159
+ }
160
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_LONG: {
161
+ return ReturnValue (1u );
162
+ }
163
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_FLOAT: {
164
+ return ReturnValue (1u );
165
+ }
166
+ case UR_DEVICE_INFO_PREFERRED_VECTOR_WIDTH_DOUBLE: {
167
+ return ReturnValue (1u );
168
+ }
169
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_CHAR: {
170
+ return ReturnValue (1u );
171
+ }
172
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_SHORT: {
173
+ return ReturnValue (1u );
174
+ }
175
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_INT: {
176
+ return ReturnValue (1u );
177
+ }
178
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_LONG: {
179
+ return ReturnValue (1u );
180
+ }
181
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_FLOAT: {
182
+ return ReturnValue (1u );
183
+ }
184
+ case UR_DEVICE_INFO_NATIVE_VECTOR_WIDTH_DOUBLE: {
185
+ return ReturnValue (1u );
186
+ }
187
+ case UR_DEVICE_INFO_SINGLE_FP_CONFIG:
188
+ case UR_DEVICE_INFO_DOUBLE_FP_CONFIG: {
189
+ // This minimal set of flags will at least signal to sycl that we support
190
+ // the basic FP types.
191
+ ur_device_fp_capability_flags_t SupportedFlags =
192
+ UR_DEVICE_FP_CAPABILITY_FLAG_INF_NAN |
193
+ UR_DEVICE_FP_CAPABILITY_FLAG_ROUND_TO_NEAREST;
194
+ return ReturnValue (SupportedFlags);
195
+ }
196
+ case UR_DEVICE_INFO_AVAILABLE: {
197
+ return ReturnValue (ur_bool_t {true });
198
+ }
199
+ case UR_DEVICE_INFO_BUILT_IN_KERNELS: {
200
+ // An empty string is returned if no built-in kernels are supported by the
201
+ // device.
202
+ return ReturnValue (" " );
203
+ }
137
204
default :
138
205
return UR_RESULT_ERROR_UNSUPPORTED_ENUMERATION;
139
206
}
0 commit comments