Skip to content
This repository was archived by the owner on Mar 28, 2023. It is now read-only.

Commit 7ff842b

Browse files
authored
[SYCL][ESIMD] Enable verification for 32 simd vector length (#758)
1 parent 62e420f commit 7ff842b

File tree

5 files changed

+4
-60
lines changed

5 files changed

+4
-60
lines changed

SYCL/ESIMD/api/functional/ctors/ctor_array_core.cpp

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,6 @@
1313
// UNSUPPORTED: cuda, hip
1414
// RUN: %clangxx -fsycl %s -fsycl-device-code-split=per_kernel -o %t.out
1515
// RUN: %GPU_RUN_PLACEHOLDER %t.out
16-
// TODO Unexpected runtime error "error: unsupported type for load/store" while
17-
// try to use simd::copy_from(), then simd::copy_to() with fixed-size array that
18-
// was defined on device side and the SIMD_RUN_TEST_WITH_VECTOR_LEN_1 macros
19-
// must be enabled when it is resolved.
20-
//
21-
// TODO This test disabled due to simd<short, 32> vector filled with unexpected
22-
// values from 16th element. The issue was created
23-
// https://github.com/intel/llvm/issues/5245 and and the
24-
// SIMD_RUN_TEST_WITH_VECTOR_LEN_32 macros must be enabled when it is resolved.
2516
//
2617
// Test for simd constructor from an array.
2718
// This test uses different data types, dimensionality and different simd
@@ -180,16 +171,7 @@ int main(int, char **) {
180171
bool passed = true;
181172

182173
const auto types = get_tested_types<tested_types::all>();
183-
#if defined(SIMD_RUN_TEST_WITH_VECTOR_LEN_1) && \
184-
defined(SIMD_RUN_TEST_WITH_VECTOR_LEN_32)
185174
const auto dims = get_all_dimensions();
186-
#elif SIMD_RUN_TEST_WITH_VECTOR_LEN_32
187-
const auto dims = values_pack<8, 16, 32>();
188-
#elif SIMD_RUN_TEST_WITH_VECTOR_LEN_1
189-
const auto dims = values_pack<1, 8, 16>();
190-
#else
191-
const auto dims = values_pack<8, 16>();
192-
#endif
193175

194176
// Run for specific combinations of types, vector length, and invocation
195177
// contexts.

SYCL/ESIMD/api/functional/ctors/ctor_fill_accuracy_core.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
// RUN: %GPU_RUN_PLACEHOLDER %t.out
1616
//
1717
// TODO simd<float, 32> fills with unexpected values while base value is denorm
18-
// and step is ulp. The SIMD_RUN_TEST_WITH_VECTOR_LEN_32 macros must be enabled
19-
// when it is resolved.
18+
// and step is ulp. The SIMD_RUN_TEST_WITH_DENORM_INIT_VAL_AND_ULP_STEP macros
19+
// must be enabled when it is resolved.
2020
//
2121
// The test verifies that simd fill constructor has no precision differences.
2222
// The test do the following actions:

SYCL/ESIMD/api/functional/ctors/ctor_fill_core.cpp

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,6 @@
1414
// RUN: %clangxx -fsycl %s -fsycl-device-code-split=per_kernel -o %t.out
1515
// RUN: %GPU_RUN_PLACEHOLDER %t.out
1616
//
17-
// TODO This test disabled due to simd<short, 32> vector filled with unexpected
18-
// values from 16th element. The issue was created
19-
// https://github.com/intel/llvm/issues/5245 and and the
20-
// SIMD_RUN_TEST_WITH_VECTOR_LEN_32 macros must be enabled when it is resolved.
21-
//
2217
// Test for simd fill constructor for core types.
2318
// This test uses different data types, dimensionality, base and step values and
2419
// different simd constructor invocation contexts. The test do the following
@@ -89,11 +84,8 @@ int main(int, char **) {
8984
passed &= ctors::run_verification<ctors::const_ref, ctors::init_val::min_half,
9085
ctors::init_val::positive>(queue, two_dims,
9186
char_int_types);
92-
#ifdef SIMD_RUN_TEST_WITH_VECTOR_LEN_32
93-
const auto all_dims = values_pack<1, 8, 16, 32>();
94-
#else
95-
const auto all_dims = values_pack<1, 8, 16>();
96-
#endif
87+
88+
const auto all_dims = get_all_dimensions();
9789
const auto all_types = get_tested_types<tested_types::all>();
9890
passed &= ctors::run_verification<ctors::var_dec, ctors::init_val::min,
9991
ctors::init_val::zero>(queue, all_dims,

SYCL/ESIMD/api/functional/ctors/ctor_move.cpp

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,6 @@
2121
// source simd instance. It is expected for a new simd instance to store
2222
// bitwise same data as the one passed as the source simd constructor.
2323

24-
// The following issues for simd<T,32> observed:
25-
// - freeze with T in {char, unsigned char, singned char};
26-
// - runtime failure with T in {short, unsigned short}.
27-
// TODO Remove once the freeze is fixed
28-
#define SKIP_VECTOR_LEN_32
29-
3024
// The test proxy is used to verify the move constructor was called actually.
3125
#define __ESIMD_ENABLE_TEST_PROXY
3226

@@ -222,11 +216,7 @@ template <typename DataT, int NumElems, typename TestCaseT> class run_test {
222216
int main(int, char **) {
223217
bool passed = true;
224218
const auto types = get_tested_types<tested_types::all>();
225-
#ifdef SKIP_VECTOR_LEN_32
226-
const auto dims = values_pack<1, 8, 16>();
227-
#else
228219
const auto dims = get_all_dimensions();
229-
#endif
230220

231221
sycl::queue queue(esimd_test::ESIMDSelector{},
232222
esimd_test::createExceptionHandler());

SYCL/ESIMD/api/functional/ctors/ctor_vector_core.cpp

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,6 @@
1414
// RUN: %clangxx -fsycl %s -fsycl-device-code-split=per_kernel -o %t.out
1515
// RUN: %GPU_RUN_PLACEHOLDER %t.out
1616
//
17-
// TODO The tests freezed during runtime when using simd<char, 32>. The
18-
// SIMD_RUN_TEST_WITH_CHAR_TYPES macros must be enabled when it is resolved.
19-
//
20-
// TODO This test disabled due to simd<short, 32> vector filled with unexpected
21-
// values from 16th element. The issue was created
22-
// https://github.com/intel/llvm/issues/5245 and and the
23-
// SIMD_RUN_TEST_WITH_VECTOR_LEN_32 macros must be enabled when it is resolved.
24-
//
2517
// Test for simd constructor from vector.
2618
// This test uses different data types, dimensionality and different simd
2719
// constructor invocation contexts.
@@ -172,20 +164,8 @@ int main(int, char **) {
172164

173165
bool passed = true;
174166

175-
#ifdef SIMD_RUN_TEST_WITH_CHAR_TYPES
176167
const auto types = get_tested_types<tested_types::all>();
177-
#else
178-
const auto types = named_type_pack<short, unsigned short, int, unsigned int,
179-
long, unsigned long, float, double,
180-
long long, unsigned long long>(
181-
{"short", "unsigned short", "int", "unsigned int", "long",
182-
"unsigned long", "float", "double", "long long", "unsigned long long"});
183-
#endif
184-
#ifdef SIMD_RUN_TEST_WITH_VECTOR_LEN_32
185168
const auto dims = get_all_dimensions();
186-
#else
187-
const auto dims = values_pack<1, 8, 16>();
188-
#endif
189169

190170
// Run for specific combinations of types, vector length and invocation
191171
// contexts.

0 commit comments

Comments
 (0)