@@ -46,15 +46,17 @@ struct TestDeviceSelectorInterface : public ::testing::Test
46
46
struct TestFilterSelector : public ::testing::TestWithParam<const char *>
47
47
{
48
48
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
49
+ DPCTLSyclDeviceRef DRef = nullptr ;
49
50
50
51
TestFilterSelector ()
51
52
{
52
53
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLFilterSelector_Create (GetParam ()));
54
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
53
55
}
54
56
55
57
void SetUp ()
56
58
{
57
- if (!DSRef ) {
59
+ if (!DRef ) {
58
60
auto message = " Skipping as no device of type " +
59
61
std::string (GetParam ()) + " ." ;
60
62
GTEST_SKIP_ (message.c_str ());
@@ -64,6 +66,7 @@ struct TestFilterSelector : public ::testing::TestWithParam<const char *>
64
66
~TestFilterSelector ()
65
67
{
66
68
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
69
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
67
70
}
68
71
};
69
72
@@ -76,15 +79,6 @@ struct TestUnsupportedFilters : public ::testing::TestWithParam<const char *>
76
79
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLFilterSelector_Create (GetParam ()));
77
80
}
78
81
79
- void SetUp ()
80
- {
81
- if (!DSRef) {
82
- auto message = " Skipping as no device of type " +
83
- std::string (GetParam ()) + " ." ;
84
- GTEST_SKIP_ (message.c_str ());
85
- }
86
- }
87
-
88
82
~TestUnsupportedFilters ()
89
83
{
90
84
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
@@ -94,84 +88,107 @@ struct TestUnsupportedFilters : public ::testing::TestWithParam<const char *>
94
88
TEST_F (TestDeviceSelectorInterface, Chk_DPCTLAcceleratorSelector_Create)
95
89
{
96
90
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
91
+ DPCTLSyclDeviceRef DRef = nullptr ;
92
+
97
93
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLAcceleratorSelector_Create ());
98
- if (DSRef) {
99
- DPCTLSyclDeviceRef DRef = nullptr ;
100
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
101
- ASSERT_TRUE (DRef != nullptr );
102
- EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
103
- EXPECT_TRUE (DPCTLDevice_IsAccelerator (DRef));
94
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
95
+
96
+ if (!DRef) {
97
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
104
98
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
99
+ GTEST_SKIP_ (" Device not found. Skip tests." );
105
100
}
101
+
102
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
103
+ EXPECT_TRUE (DPCTLDevice_IsAccelerator (DRef));
106
104
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
105
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
107
106
}
108
107
109
108
TEST_F (TestDeviceSelectorInterface, Chk_DPCTLDefaultSelector_Create)
110
109
{
111
110
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
111
+ DPCTLSyclDeviceRef DRef = nullptr ;
112
+
112
113
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLDefaultSelector_Create ());
113
- if (DSRef) {
114
- DPCTLSyclDeviceRef DRef = nullptr ;
115
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
116
- ASSERT_TRUE (DRef != nullptr );
117
- EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
114
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
115
+
116
+ if (!DRef) {
117
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
118
118
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
119
+ GTEST_SKIP_ (" Device not found. Skip tests." );
119
120
}
121
+
122
+ ASSERT_TRUE (DRef != nullptr );
123
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
120
124
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
125
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
121
126
}
122
127
123
128
TEST_F (TestDeviceSelectorInterface, Chk_DPCTLCPUSelector_Create)
124
129
{
125
130
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
131
+ DPCTLSyclDeviceRef DRef = nullptr ;
132
+
126
133
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLCPUSelector_Create ());
127
- if (DSRef) {
128
- DPCTLSyclDeviceRef DRef = nullptr ;
129
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
130
- ASSERT_TRUE (DRef != nullptr );
131
- EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
132
- EXPECT_TRUE (DPCTLDevice_IsCPU (DRef));
134
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
135
+
136
+ if (!DRef) {
137
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
133
138
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
139
+ GTEST_SKIP_ (" Device not found. Skip tests." );
134
140
}
141
+
142
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
143
+ EXPECT_TRUE (DPCTLDevice_IsCPU (DRef));
135
144
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
145
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
136
146
}
137
147
138
148
TEST_F (TestDeviceSelectorInterface, Chk_DPCTLGPUSelector_Create)
139
149
{
140
150
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
151
+ DPCTLSyclDeviceRef DRef = nullptr ;
152
+
141
153
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLGPUSelector_Create ());
142
- if (DSRef) {
143
- DPCTLSyclDeviceRef DRef = nullptr ;
144
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
145
- ASSERT_TRUE (DRef != nullptr );
146
- EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
147
- EXPECT_TRUE (DPCTLDevice_IsGPU (DRef));
154
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
155
+
156
+ if (!DRef) {
157
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
148
158
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
159
+ GTEST_SKIP_ (" Device not found. Skip tests." );
149
160
}
161
+
162
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
163
+ EXPECT_TRUE (DPCTLDevice_IsGPU (DRef));
150
164
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
165
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
151
166
}
152
167
153
168
TEST_F (TestDeviceSelectorInterface, Chk_DPCTLHostSelector_Create)
154
169
{
155
170
DPCTLSyclDeviceSelectorRef DSRef = nullptr ;
171
+ DPCTLSyclDeviceRef DRef = nullptr ;
172
+
156
173
EXPECT_NO_FATAL_FAILURE (DSRef = DPCTLHostSelector_Create ());
157
- if (DSRef) {
158
- DPCTLSyclDeviceRef DRef = nullptr ;
159
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
160
- ASSERT_TRUE (DRef != nullptr );
161
- EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
162
- // FIXME: DPCPP's host_selector returns a CPU device for some reason.
163
- // EXPECT_TRUE(DPCTLDevice_IsHost(DRef));
174
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
175
+
176
+ if (!DRef) {
177
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
164
178
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
179
+ GTEST_SKIP_ (" Device not found. Skip tests." );
165
180
}
181
+
182
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceMgr_PrintDeviceInfo (DRef));
183
+ // FIXME: DPCPP's host_selector returns a CPU device for some reason.
184
+ // EXPECT_TRUE(DPCTLDevice_IsHost(DRef));
166
185
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef));
186
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
167
187
}
168
188
169
189
TEST_P (TestFilterSelector, Chk_DPCTLFilterSelector_Create)
170
190
{
171
- DPCTLSyclDeviceRef DRef = nullptr ;
172
- EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef));
173
191
ASSERT_TRUE (DRef != nullptr );
174
- EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
175
192
}
176
193
177
194
TEST_P (TestUnsupportedFilters, Chk_DPCTLFilterSelector_Create)
@@ -186,20 +203,26 @@ TEST_F(TestDeviceSelectorInterface, Chk_DPCTLGPUSelector_Score)
186
203
{
187
204
DPCTLSyclDeviceSelectorRef DSRef_GPU = nullptr ;
188
205
DPCTLSyclDeviceSelectorRef DSRef_CPU = nullptr ;
206
+ DPCTLSyclDeviceRef DRef = nullptr ;
207
+
189
208
EXPECT_NO_FATAL_FAILURE (DSRef_GPU = DPCTLGPUSelector_Create ());
190
209
EXPECT_NO_FATAL_FAILURE (DSRef_CPU = DPCTLCPUSelector_Create ());
191
- if (DSRef_CPU && DSRef_GPU) {
192
- DPCTLSyclDeviceRef DRef = nullptr ;
193
- EXPECT_NO_FATAL_FAILURE (DRef =
194
- DPCTLDevice_CreateFromSelector (DSRef_CPU));
195
- ASSERT_TRUE (DRef != nullptr );
196
- EXPECT_TRUE (DPCTLDevice_IsCPU (DRef));
197
- EXPECT_TRUE (DPCTLDeviceSelector_Score (DSRef_GPU, DRef) < 0 );
198
- EXPECT_TRUE (DPCTLDeviceSelector_Score (DSRef_CPU, DRef) > 0 );
210
+ EXPECT_NO_FATAL_FAILURE (DRef = DPCTLDevice_CreateFromSelector (DSRef_CPU));
211
+
212
+ if (!DRef) {
213
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef_GPU));
214
+ EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef_CPU));
199
215
EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
216
+ GTEST_SKIP_ (" Device not found. Skip tests." );
200
217
}
218
+
219
+ ASSERT_TRUE (DRef != nullptr );
220
+ EXPECT_TRUE (DPCTLDevice_IsCPU (DRef));
221
+ EXPECT_TRUE (DPCTLDeviceSelector_Score (DSRef_GPU, DRef) < 0 );
222
+ EXPECT_TRUE (DPCTLDeviceSelector_Score (DSRef_CPU, DRef) > 0 );
201
223
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef_GPU));
202
224
EXPECT_NO_FATAL_FAILURE (DPCTLDeviceSelector_Delete (DSRef_CPU));
225
+ EXPECT_NO_FATAL_FAILURE (DPCTLDevice_Delete (DRef));
203
226
}
204
227
205
228
INSTANTIATE_TEST_SUITE_P (FilterSelectorCreation,
@@ -216,9 +239,10 @@ INSTANTIATE_TEST_SUITE_P(FilterSelectorCreation,
216
239
" level_zero:gpu:0" ,
217
240
" gpu:0" ,
218
241
" gpu:1" ,
219
- " 1" ));
242
+ " 1" ,
243
+ " 0" ,
244
+ " host" ));
220
245
221
- INSTANTIATE_TEST_SUITE_P (
222
- NegativeFilterSelectorCreation,
223
- TestUnsupportedFilters,
224
- ::testing::Values (" abc" , " -1" , " opencl:gpu:1" , " level_zero:cpu:0" ));
246
+ INSTANTIATE_TEST_SUITE_P (NegativeFilterSelectorCreation,
247
+ TestUnsupportedFilters,
248
+ ::testing::Values (" abc" , " -1" , " cuda:cpu:0" ));
0 commit comments