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 Compiler Update Tracking #1761

Open
rchen20 opened this issue Nov 5, 2024 · 1 comment
Open

SYCL Compiler Update Tracking #1761

rchen20 opened this issue Nov 5, 2024 · 1 comment
Assignees
Labels

Comments

@rchen20
Copy link
Member

rchen20 commented Nov 5, 2024

Is your feature request related to a problem? Please describe.

The latest SYCL compiler requires C++17, while our TPLs (i.e. BLT benchmark-1.8.0 in particular) are on C++11. Need to search for a SYCL hash which is still compliant with older versions of C++. Alternatively, we need to update everything to be C++17-compliant.

Describe the solution you'd like

Will search for an older SYCL that can support C++11.

Describe alternatives you've considered

Update benchmark-1.8.0 to a newer version (and other TPLs).

Additional context

Issue occurs with new SYCL installation: /usr/workspace/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2

Error here:

[  1%] Building CXX object blt/thirdparty_builtin/benchmark-1.8.0/src/CMakeFiles/benchmark.dir/benchmark.cc.o
cd /usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/build_corona-sycl_chen59/blt/thirdparty_builtin/benchmark-1.8.0/src && /usr/workspace/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/clang++ -DBENCHMARK_STATIC_DEFINE -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -DHAVE_THREAD_SAFETY_ATTRIBUTES -I/usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/blt/thirdparty_builtin/benchmark-1.8.0/include -I/usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/blt/thirdparty_builtin/benchmark-1.8.0/src -Wall  -Wextra  -Wshadow  -Wfloat-equal  -Werror  -Wsuggest-override  -pedantic  -pedantic-errors  -Wshorten-64-to-32  -fstrict-aliasing  -Wno-deprecated-declarations  -Wno-deprecated  -Wstrict-aliasing  -Wthread-safety -O3 -g -L/usr/workspace/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/lib -fsycl -fsycl-unnamed-lambda -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -std=c++11 -MD -MT blt/thirdparty_builtin/benchmark-1.8.0/src/CMakeFiles/benchmark.dir/benchmark.cc.o -MF CMakeFiles/benchmark.dir/benchmark.cc.o.d -o CMakeFiles/benchmark.dir/benchmark.cc.o -c /usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/blt/thirdparty_builtin/benchmark-1.8.0/src/benchmark.cc
In file included from /usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/blt/thirdparty_builtin/benchmark-1.8.0/src/benchmark.cc:15:
In file included from /usr/workspace/chen59/allraja/rajasyclupdate241105/raja_git_develop/blt/thirdparty_builtin/benchmark-1.8.0/include/benchmark/benchmark.h:180:
In file included from /usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/stl_wrappers/cassert:14:
In file included from /opt/rh/gcc-toolset-12/root/usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/cassert:44:
In file included from /usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/stl_wrappers/assert.h:21:
In file included from /usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/__spirv/spirv_vars.hpp:13:
In file included from /usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/__spirv/spirv_types.hpp:11:
In file included from /usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/detail/defines.hpp:11:
/usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/bin/../include/sycl/detail/defines_elementary.hpp:90:15: error: static assertion failed due to requirement '201103L >= 201703L': DPCPP does not support C++ version earlier than C++17.
   90 | static_assert(__cplusplus >= 201703L,
      |               ^~~~~~~~~~~~~~~~~~~~~~
<built-in>:846:21: note: expanded from macro '__cplusplus'
  846 | #define __cplusplus 201103L
      |                     ^   
1 error generated.
@rchen20 rchen20 self-assigned this Nov 5, 2024
@LLNL LLNL deleted a comment from rchen20 Nov 14, 2024
@rhornung67
Copy link
Member

C++17 support was added in Google benchmark yesterday. I added an issue for BLT to update: LLNL/blt#709.

I think we can go ahead with the SYCL compiler update and use it without enabling Google Benchmark until after a BLT update.

@LLNL LLNL deleted a comment from rchen20 Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants