@@ -37,16 +37,20 @@ using namespace cl::sycl;
37
37
struct TestDPCTLSyclDeviceInterface
38
38
: public ::testing::TestWithParam<const char *>
39
39
{
40
- DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
40
+ DPCTLSyclDeviceRef DRef = nullptr ;
41
41
42
42
TestDPCTLSyclDeviceInterface ()
43
43
{
44
- EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLFilterSelector_Create (GetParam ()));
44
+ auto DS = DPCTLFilterSelector_Create (GetParam ());
45
+ if (DS) {
46
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DS));
47
+ }
48
+ DPCTLDeviceSelector_Delete (DS);
45
49
}
46
50
47
51
void SetUp ()
48
52
{
49
- if (!DSRef ) {
53
+ if (!DRef ) {
50
54
auto message = " Skipping as no device of type " +
51
55
std::string (GetParam ()) + " ." ;
52
56
GTEST_SKIP_ (message.c_str ());
@@ -55,30 +59,21 @@ struct TestDPCTLSyclDeviceInterface
55
59
56
60
~TestDPCTLSyclDeviceInterface ()
57
61
{
58
- EXPECT_NO_FATAL_FAILURE ( DPCTLDeviceSelector_Delete (DSRef) );
62
+ DPCTLDevice_Delete (DRef );
59
63
}
60
64
};
61
65
62
66
TEST_P (TestDPCTLSyclDeviceInterface, Chk_Copy)
63
67
{
64
- DPCTLSyclDeviceRef DRef = nullptr ;
65
68
DPCTLSyclDeviceRef Copied_DRef = nullptr ;
66
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
67
- if (!DRef)
68
- GTEST_SKIP_ (" Device not found" );
69
69
EXPECT_NO_FATAL_FAILURE (Copied_DRef = DPCTLDevice_Copy (DRef));
70
70
EXPECT_TRUE (bool (Copied_DRef));
71
71
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (Copied_DRef));
72
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
73
72
}
74
73
75
74
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetBackend)
76
75
{
77
- DPCTLSyclDeviceRef DRef = nullptr ;
78
76
DPCTLSyclBackendType BTy = DPCTLSyclBackendType::DPCTL_UNKNOWN_BACKEND;
79
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
80
- if (!DRef)
81
- GTEST_SKIP_ (" Device not found" );
82
77
EXPECT_NO_FATAL_FAILURE (BTy = DPCTLDevice_GetBackend (DRef));
83
78
EXPECT_TRUE ([BTy] {
84
79
switch (BTy) {
@@ -94,270 +89,165 @@ TEST_P(TestDPCTLSyclDeviceInterface, Chk_GetBackend)
94
89
return false ;
95
90
}
96
91
}());
97
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
98
92
}
99
93
100
94
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetDeviceType)
101
95
{
102
- DPCTLSyclDeviceRef DRef = nullptr ;
103
96
DPCTLSyclDeviceType DTy = DPCTLSyclDeviceType::DPCTL_UNKNOWN_DEVICE;
104
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
105
- if (!DRef)
106
- GTEST_SKIP_ (" Device not found" );
107
97
EXPECT_NO_FATAL_FAILURE (DTy = DPCTLDevice_GetDeviceType (DRef));
108
98
EXPECT_TRUE (DTy != DPCTLSyclDeviceType::DPCTL_UNKNOWN_DEVICE);
109
99
EXPECT_TRUE (DTy != DPCTLSyclDeviceType::DPCTL_ALL);
110
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
111
100
}
112
101
113
102
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetDriverInfo)
114
103
{
115
- DPCTLSyclDeviceRef DRef = nullptr ;
116
104
const char *DriverInfo = nullptr ;
117
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
118
- if (!DRef)
119
- GTEST_SKIP_ (" Device not found" );
120
105
EXPECT_NO_FATAL_FAILURE (DriverInfo = DPCTLDevice_GetDriverInfo (DRef));
121
106
EXPECT_TRUE (DriverInfo != nullptr );
122
107
EXPECT_NO_FATAL_FAILURE (DPCTLCString_Delete (DriverInfo));
123
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
124
108
}
125
109
126
110
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetName)
127
111
{
128
- DPCTLSyclDeviceRef DRef = nullptr ;
129
112
const char *Name = nullptr ;
130
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
131
- if (!DRef)
132
- GTEST_SKIP_ (" Device not found" );
133
113
EXPECT_NO_FATAL_FAILURE (Name = DPCTLDevice_GetName (DRef));
134
114
EXPECT_TRUE (Name != nullptr );
135
115
EXPECT_NO_FATAL_FAILURE (DPCTLCString_Delete (Name));
136
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
137
116
}
138
117
139
118
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetVendorName)
140
119
{
141
- DPCTLSyclDeviceRef DRef = nullptr ;
142
120
const char *VendorName = nullptr ;
143
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
144
- if (!DRef)
145
- GTEST_SKIP_ (" Device not found" );
146
121
EXPECT_NO_FATAL_FAILURE (VendorName = DPCTLDevice_GetVendorName (DRef));
147
122
EXPECT_TRUE (VendorName != nullptr );
148
123
EXPECT_NO_FATAL_FAILURE (DPCTLCString_Delete (VendorName));
149
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
150
124
}
151
125
152
126
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetMaxComputeUnits)
153
127
{
154
- DPCTLSyclDeviceRef DRef = nullptr ;
155
128
size_t n = 0 ;
156
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
157
- if (!DRef)
158
- GTEST_SKIP_ (" Device not found" );
159
129
EXPECT_NO_FATAL_FAILURE (n = DPCTLDevice_GetMaxComputeUnits (DRef));
160
130
EXPECT_TRUE (n > 0 );
161
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
162
131
}
163
132
164
133
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetMaxWorkItemDims)
165
134
{
166
- DPCTLSyclDeviceRef DRef = nullptr ;
167
135
size_t n = 0 ;
168
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
169
- if (!DRef)
170
- GTEST_SKIP_ (" Device not found" );
171
136
EXPECT_NO_FATAL_FAILURE (n = DPCTLDevice_GetMaxWorkItemDims (DRef));
172
137
EXPECT_TRUE (n > 0 );
173
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
174
138
}
175
139
176
140
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetMaxWorkItemSizes)
177
141
{
178
- DPCTLSyclDeviceRef DRef = nullptr ;
179
142
size_t *sizes = nullptr ;
180
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
181
- if (!DRef)
182
- GTEST_SKIP_ (" Device not found" );
183
143
EXPECT_NO_FATAL_FAILURE (sizes = DPCTLDevice_GetMaxWorkItemSizes (DRef));
184
144
EXPECT_TRUE (sizes != nullptr );
185
145
EXPECT_NO_FATAL_FAILURE (DPCTLSize_t_Array_Delete (sizes));
186
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
187
146
}
188
147
189
148
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetMaxWorkGroupSize)
190
149
{
191
- DPCTLSyclDeviceRef DRef = nullptr ;
192
150
size_t n = 0 ;
193
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
194
- if (!DRef)
195
- GTEST_SKIP_ (" Device not found" );
196
151
EXPECT_NO_FATAL_FAILURE (n = DPCTLDevice_GetMaxWorkGroupSize (DRef));
197
152
if (DPCTLDevice_IsAccelerator (DRef))
198
153
EXPECT_TRUE (n >= 0 );
199
154
else
200
155
EXPECT_TRUE (n > 0 );
201
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
202
156
}
203
157
204
158
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetMaxNumSubGroups)
205
159
{
206
- DPCTLSyclDeviceRef DRef = nullptr ;
207
160
size_t n = 0 ;
208
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
209
- if (!DRef)
210
- GTEST_SKIP_ (" Device not found" );
211
161
EXPECT_NO_FATAL_FAILURE (n = DPCTLDevice_GetMaxNumSubGroups (DRef));
212
162
if (DPCTLDevice_IsAccelerator (DRef))
213
163
EXPECT_TRUE (n >= 0 );
214
164
else
215
165
EXPECT_TRUE (n > 0 );
216
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
217
166
}
218
167
219
168
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPlatform)
220
169
{
221
- DPCTLSyclDeviceRef DRef = nullptr ;
222
170
DPCTLSyclPlatformRef PRef = nullptr ;
223
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
224
- if (!DRef)
225
- GTEST_SKIP_ (" Device not found" );
226
171
EXPECT_NO_FATAL_FAILURE (PRef = DPCTLDevice_GetPlatform (DRef));
227
172
ASSERT_TRUE (PRef);
228
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
229
173
EXPECT_NO_FATAL_FAILURE (DPCTLPlatform_Delete (PRef));
230
174
}
231
175
232
176
TEST_P (TestDPCTLSyclDeviceInterface, Chk_IsAccelerator)
233
177
{
234
- DPCTLSyclDeviceRef DRef = nullptr ;
235
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
236
- if (!DRef)
237
- GTEST_SKIP_ (" Device not found" );
238
178
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_IsAccelerator (DRef));
239
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
240
179
}
241
180
242
181
TEST_P (TestDPCTLSyclDeviceInterface, Chk_IsCPU)
243
182
{
244
- DPCTLSyclDeviceRef DRef = nullptr ;
245
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
246
- if (!DRef)
247
- GTEST_SKIP_ (" Device not found" );
248
183
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_IsCPU (DRef));
249
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
250
184
}
251
185
252
186
TEST_P (TestDPCTLSyclDeviceInterface, Chk_IsGPU)
253
187
{
254
- DPCTLSyclDeviceRef DRef = nullptr ;
255
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
256
- if (!DRef)
257
- GTEST_SKIP_ (" Device not found" );
258
188
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_IsGPU (DRef));
259
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
260
189
}
261
190
262
191
TEST_P (TestDPCTLSyclDeviceInterface, Chk_IsHost)
263
192
{
264
- DPCTLSyclDeviceRef DRef = nullptr ;
265
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
266
- if (!DRef)
267
- GTEST_SKIP_ (" Device not found" );
268
193
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_IsHost (DRef));
269
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
270
194
}
271
195
272
196
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetSubGroupIndependentForwardProgress)
273
197
{
274
- DPCTLSyclDeviceRef DRef = nullptr ;
275
198
bool sub_group_progress = 0 ;
276
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
277
- if (!DRef)
278
- GTEST_SKIP_ (" Device not found" );
279
199
EXPECT_NO_FATAL_FAILURE (
280
200
sub_group_progress =
281
201
DPCTLDevice_GetSubGroupIndependentForwardProgress (DRef));
282
202
auto D = reinterpret_cast <device *>(DRef);
283
203
auto get_sub_group_progress =
284
204
D->get_info <info::device::sub_group_independent_forward_progress>();
285
205
EXPECT_TRUE (get_sub_group_progress == sub_group_progress);
286
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
287
206
}
288
207
289
208
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthChar)
290
209
{
291
- DPCTLSyclDeviceRef DRef = nullptr ;
292
210
size_t vector_width_char = 0 ;
293
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
294
- if (!DRef)
295
- GTEST_SKIP_ (" Device not found" );
296
211
EXPECT_NO_FATAL_FAILURE (vector_width_char =
297
212
DPCTLDevice_GetPreferredVectorWidthChar (DRef));
298
213
EXPECT_TRUE (vector_width_char != 0 );
299
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
300
214
}
301
215
302
216
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthShort)
303
217
{
304
- DPCTLSyclDeviceRef DRef = nullptr ;
305
218
size_t vector_width_short = 0 ;
306
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
307
- if (!DRef)
308
- GTEST_SKIP_ (" Device not found" );
309
219
EXPECT_NO_FATAL_FAILURE (vector_width_short =
310
220
DPCTLDevice_GetPreferredVectorWidthShort (DRef));
311
221
EXPECT_TRUE (vector_width_short != 0 );
312
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
313
222
}
314
223
315
224
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthInt)
316
225
{
317
- DPCTLSyclDeviceRef DRef = nullptr ;
318
226
size_t vector_width_int = 0 ;
319
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
320
- if (!DRef)
321
- GTEST_SKIP_ (" Device not found" );
322
227
EXPECT_NO_FATAL_FAILURE (vector_width_int =
323
228
DPCTLDevice_GetPreferredVectorWidthInt (DRef));
324
229
EXPECT_TRUE (vector_width_int != 0 );
325
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
326
230
}
327
231
328
232
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthLong)
329
233
{
330
- DPCTLSyclDeviceRef DRef = nullptr ;
331
234
size_t vector_width_long = 0 ;
332
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
333
- if (!DRef)
334
- GTEST_SKIP_ (" Device not found" );
335
235
EXPECT_NO_FATAL_FAILURE (vector_width_long =
336
236
DPCTLDevice_GetPreferredVectorWidthLong (DRef));
337
237
EXPECT_TRUE (vector_width_long != 0 );
338
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
339
238
}
340
239
341
240
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthFloat)
342
241
{
343
- DPCTLSyclDeviceRef DRef = nullptr ;
344
242
size_t vector_width_float = 0 ;
345
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
346
- if (!DRef)
347
- GTEST_SKIP_ (" Device not found" );
348
243
EXPECT_NO_FATAL_FAILURE (vector_width_float =
349
244
DPCTLDevice_GetPreferredVectorWidthFloat (DRef));
350
245
EXPECT_TRUE (vector_width_float != 0 );
351
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
352
246
}
353
247
354
248
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthDouble)
355
249
{
356
- DPCTLSyclDeviceRef DRef = nullptr ;
357
250
size_t vector_width_double = 0 ;
358
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
359
- if (!DRef)
360
- GTEST_SKIP_ (" Device not found" );
361
251
EXPECT_NO_FATAL_FAILURE (
362
252
vector_width_double = DPCTLDevice_GetPreferredVectorWidthDouble (DRef));
363
253
if (DPCTLDevice_HasAspect (DRef, DPCTL_SyclAspectToDPCTLAspectType (
@@ -368,16 +258,11 @@ TEST_P(TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthDouble)
368
258
else {
369
259
EXPECT_TRUE (vector_width_double == 0 );
370
260
}
371
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
372
261
}
373
262
374
263
TEST_P (TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthHalf)
375
264
{
376
- DPCTLSyclDeviceRef DRef = nullptr ;
377
265
size_t vector_width_half = 0 ;
378
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
379
- if (!DRef)
380
- GTEST_SKIP_ (" Device not found" );
381
266
EXPECT_NO_FATAL_FAILURE (vector_width_half =
382
267
DPCTLDevice_GetPreferredVectorWidthHalf (DRef));
383
268
if (DPCTLDevice_HasAspect (DRef, DPCTL_SyclAspectToDPCTLAspectType (
@@ -388,7 +273,6 @@ TEST_P(TestDPCTLSyclDeviceInterface, Chk_GetPreferredVectorWidthHalf)
388
273
else {
389
274
EXPECT_TRUE (vector_width_half == 0 );
390
275
}
391
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
392
276
}
393
277
394
278
INSTANTIATE_TEST_SUITE_P (DPCTLDevice_Fns,
0 commit comments