Skip to content

Commit cf260c4

Browse files
w/a for dpnp.allclose
1 parent 3bbcb57 commit cf260c4

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

dpnp/backend/kernels/dpnp_krnl_logic.cpp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,28 @@ static sycl::event dpnp_allclose(sycl::queue &q,
173173
partial &= (array1[i] == array2[i]);
174174
continue;
175175
}
176+
177+
// workaround for std::inf which does not work on CPU
178+
// [CMPLRLLVM-51856]
179+
if (array1[i] == std::numeric_limits<_DataType1>::infinity()) {
180+
partial &= (array1[i] == array2[i]);
181+
continue;
182+
}
183+
else if (array1[i] ==
184+
-std::numeric_limits<_DataType1>::infinity()) {
185+
partial &= (array1[i] == array2[i]);
186+
continue;
187+
}
188+
else if (array2[i] ==
189+
std::numeric_limits<_DataType2>::infinity()) {
190+
partial &= (array1[i] == array2[i]);
191+
continue;
192+
}
193+
else if (array2[i] ==
194+
-std::numeric_limits<_DataType2>::infinity()) {
195+
partial &= (array1[i] == array2[i]);
196+
continue;
197+
}
176198
}
177199

178200
// casting integeral to floating type to avoid bad behavior

0 commit comments

Comments
 (0)