Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SYCL-CTS build failure in SYCL Nightly #13736

Closed
uditagarwal97 opened this issue May 10, 2024 · 5 comments · Fixed by #13766
Closed

SYCL-CTS build failure in SYCL Nightly #13736

uditagarwal97 opened this issue May 10, 2024 · 5 comments · Fixed by #13766
Assignees
Labels
bug Something isn't working

Comments

@uditagarwal97
Copy link
Contributor

Describe the bug

Run: https://github.com/intel/llvm/actions/runs/9019645870/job/24786062887

FAILED: bin/test_group_functions 

 /__w/llvm/llvm/toolchain/bin/clang++ -DSYCL2020_CONFORMANT_APIS -fpreview-breaking-changes -DSYCL2020_DISABLE_DEPRECATION_WARNINGS -D__SYCL_DISABLE_PARALLEL_FOR_RANGE_ROUNDING__ -ffp-model=precise     -flink-huge-device-code  -fsycl -sycl-std=2020 -fno-sycl-id-queries-fit-in-int tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_barrier.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_broadcast.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_broadcast_fp16.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_broadcast_fp64.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_of.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_permute.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_permute_fp16.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_permute_fp64.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_shift.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_shift_fp16.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_shift_fp64.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_trait.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_scan_char.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_scan_int.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_scan_float.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_scan_double.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_scan_sycl__half.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_scan_over_group_char.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_scan_over_group_int.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_scan_over_group_float.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_scan_over_group_double.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_scan_over_group_sycl__half.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_reduce_char.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_reduce_int.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_reduce_float.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_reduce_double.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_joint_reduce_sycl__half.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_reduce_over_group_char.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_reduce_over_group_int.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_reduce_over_group_float.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_reduce_over_group_double.cpp.o tests/group_functions/CMakeFiles/test_group_functions_objects.dir/group_reduce_over_group_sycl__half.cpp.o tests/common/CMakeFiles/main_function_object.dir/main.cpp.o -o bin/test_group_functions  util/libutil.a  oclmath/liboclmath.a  vendor/Catch2/src/libCatch2.a

InvalidBitWidth: Invalid bit width in input: 40
llvm-foreach: 
clang++: error: llvm-spirv command failed with exit code 10 (use -v to see invocation)

Affected CTS:

FAILED: bin/test_group_functions 
FAILED: bin/test_vector_api 
FAILED: bin/test_reduction 

To reproduce

DPC++ commit: 4b9819f

Environment

No response

Additional context

No response

@uditagarwal97 uditagarwal97 added the bug Something isn't working label May 10, 2024
@uditagarwal97
Copy link
Contributor Author

@KornevNikita FYI

@JackAKirk
Copy link
Contributor

It looks like this could relate to KhronosGroup/SPIRV-LLVM-Translator#481
see also JuliaGPU/oneAPI.jl#55
I don't know why the change to gcc12 seems to have caused this to suddenly be a problem.

@JackAKirk
Copy link
Contributor

There's a few possible options. Since gcc11 is the default for 22.04, I can see that it might make the most sense to use this version in the CI. It is unfortunate that currently gcc12 is required to build rocm on 22.04 ROCm/ROCm#2949 which motivated this uplift.

If desired I could change the docker image to use gcc12 only when building rocm (but not dpc++). I think this is likely to work.
I suppose another alternative would be to skip gcc12 and try gcc13.

It does seem like there may be an underlying spirv issue though that someone may want to look into: KhronosGroup/SPIRV-LLVM-Translator#481
I imagine you will want to support gcc12.

@JackAKirk
Copy link
Contributor

JackAKirk commented May 10, 2024

Also since the nightly has been broken for a while, the uplift to gcc12 may have nothing to do with this spirv issue.
I suppose I could confirm this by changing back to the previous image that didn't use gcc12/updated rocm.
I will try some things locally in the docker.

aelovikov-intel pushed a commit that referenced this issue May 10, 2024
This partially reverts the changes made in
#13619 to use libstdc++-12-dev without
gcc12.
This also seems to work fine to build dpc++ within the docker. But
should come without the CI failures that might have been induced by the
gcc uplift:
- #13736
- #13735
If the above issues were not caused by the gcc version uplift, then this
patch should also reveal that.

Signed-off-by: JackAKirk <jack.kirk@codeplay.com>
@KornevNikita
Copy link
Contributor

@uditagarwal97 it looks like everything is ok with the last run. Should we close this issue?

aelovikov-intel pushed a commit that referenced this issue May 14, 2024
This PR reverts back to latest docker image from changes made in
- #13618
- #13606

#13752 fixed
#13736 and
#13735 was fixed by
#13771
This means we can now use this "latest" docker image in the main CI
testing.

Signed-off-by: JackAKirk <jack.kirk@codeplay.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants