Skip to content

[rocSparse][AdaptiveCPP] Build issues with Sparse domain #683

Open
@abagusetty

Description

@abagusetty

Steps to reproduce:

cmake .. \
      -DCMAKE_C_COMPILER=acpp \
      -DCMAKE_CXX_COMPILER=acpp \
      -DONEMATH_SYCL_IMPLEMENTATION=hipsycl \
      -DAdaptiveCpp_DIR=${ACPP_HOME}/acpp/lib/cmake/AdaptiveCpp \
      -DENABLE_MKLGPU_BACKEND=False \
      -DENABLE_MKLCPU_BACKEND=False \
      -DENABLE_ROCBLAS_BACKEND=True \
      -DENABLE_ROCSOLVER_BACKEND=True \
      -DENABLE_ROCRAND_BACKEND=True \
      -DENABLE_ROCSPARSE_BACKEND=True \
      -DHIPSYCL_TARGETS=hip:gfx90a \
      -DBUILD_FUNCTIONAL_TESTS=False \
      -DBUILD_EXAMPLES=False \
      -DHIP_TARGETS=gfx90a \
      -DCMAKE_INSTALL_PREFIX=${ACPP_HOME}/onemath

Compiler Version: (AdaptiveCPP:v25.02.0)

acpp --version
AMD clang version 19.0.0git (https://github.com/RadeonOpenCompute/llvm-project roc-6.4.0 25133 c7fe45cf4b819c5991fe208aaa96edf142730f1d)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/rocm-6.4.0/lib/llvm/bin
Configuration file: /opt/rocm-6.4.0/lib/llvm/bin/clang++.cfg

Error:

[  7%] Building CXX object bin/sparse_blas/backends/rocsparse/CMakeFiles/onemath_sparse_blas_rocsparse_obj.dir/rocsparse_handles.cpp.o
cd /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/build-acpp-rocm6.4.0/bin/sparse_blas/backends/rocsparse && /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/acpp_install-6.4.0_05282025/acpp/bin/acpp -DUSE_PROF_API=1 -D__HIP_PLATFORM_AMD__=1 -I/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include -I/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/build-acpp-rocm6.4.0/bin -I/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/include -I/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src -isystem /opt/rocm-6.4.0/include -O3 -DNDEBUG -std=gnu++17 -fPIC -Wall -Wextra -Wshadow -Wconversion -Wpedantic -MD -MT bin/sparse_blas/backends/rocsparse/CMakeFiles/onemath_sparse_blas_rocsparse_obj.dir/rocsparse_handles.cpp.o -MF CMakeFiles/onemath_sparse_blas_rocsparse_obj.dir/rocsparse_handles.cpp.o.d -o CMakeFiles/onemath_sparse_blas_rocsparse_obj.dir/rocsparse_handles.cpp.o -c /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp:20:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include/oneapi/math/sparse_blas/detail/rocsparse/onemath_sparse_blas_rocsparse.hpp:25:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include/oneapi/math/sparse_blas/types.hpp:23:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include/oneapi/math/types.hpp:30:
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include/oneapi/math/bfloat16.hpp:67:36: warning: implicit conversion loses integer precision: 'int' to 'std::uint16_t' (aka 'unsigned short') [-Wimplicit-int-conversion]
   67 |     bfloat16(int raw_, bool) : raw(raw_) {}
      |                                   ~^~~~
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/include/oneapi/math/bfloat16.hpp:222:44: warning: implicit conversion changes signedness: 'int' to 'std::uint32_t' (aka 'unsigned int') [-Wsign-conversion]
  222 |     return bfloat16_impl::raw_to_float(raw << 16);
      |            ~~~~~~~~~~~~~               ~~~~^~~~~
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp:22:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_error.hpp:25:
In file included from /opt/rocm-6.4.0/include/hip/hip_runtime.h:70:
/opt/rocm-6.4.0/include/hip/hip_runtime_api.h:1172:16: error: redefinition of 'dim3'
 1172 | typedef struct dim3 {
      |                ^
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/acpp_install-6.4.0_05282025/acpp/bin/../include/AdaptiveCpp/hipSYCL/pcuda/detail/dim3.hpp:16:8: note: previous definition is here
   16 | struct dim3 {
      |        ^
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp:23:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_helper.hpp:31:
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/sycl_helper.hpp:58:13: error: no member named 'host_task' in 'hipsycl::sycl::handler'
   58 |         cgh.host_task([=]() { delete ptr; });
      |         ~~~ ^
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/sycl_helper.hpp:74:13: error: no member named 'host_task' in 'hipsycl::sycl::handler'
   74 |         cgh.host_task([=]() {});
      |         ~~~ ^
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp:25:
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_scope_handle.hpp:56:5: error: unknown type name 'HIPcontext'
   56 |     HIPcontext original_;
      |     ^
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_scope_handle.hpp:63:52: error: use of undeclared identifier 'pi_context'
   63 |     static thread_local rocsparse_handle_container<pi_context> handle_helper;
      |                                                    ^
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_scope_handle.hpp:81:52: error: no member named 'ext_oneapi_hip' in 'hipsycl::rt::backend_id'
   81 |     auto hipPtr = ih.get_native_mem<sycl::backend::ext_oneapi_hip>(acc);
      |                                     ~~~~~~~~~~~~~~~^
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_handles.cpp:26:
In file included from /lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/rocsparse/rocsparse_task.hpp:24:
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/common_launch_task.hpp:70:9: error: no member named 'host_task' in 'hipsycl::sycl::handler'
   70 |     cgh.host_task([functor, queue, capture_only_accessors...](sycl::interop_handle ih) {
      |     ~~~ ^
/lustre/orion/csc613/scratch/abagusetty/SYCL_compilers_05282025/oneMath/src/sparse_blas/backends/common_launch_task.hpp:88:9: error: no member named 'host_task' in 'hipsycl::sycl::handler'
   88 |     cgh.host_task(
      |     ~~~ ^
2 warnings and 8 errors generated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Sparse BLAS domainSparse BLAS domain issue/requestbugA request to fix an issuehelp wantedTasks, issues or features that could be implemented and contributed to the project

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions