Compile failure against ROCm 6.0.2
Issue #73
resolved
[ 9%] Building CXX object CMakeFiles/magma.dir/interface_hip/copy_v1.cpp.o
/home/user/Source/magma/interface_hip/blas_z_v2.cpp:1853:9: error: no matching function for call to 'hipblasZtrmm'
hipblasZtrmm(
^~~~~~~~~~~~
/opt/rocm-6.0.2/include/hipblas/hipblas.h:17918:32: note: candidate function not viable: requires 14 arguments, but 12 were provided
HIPBLAS_EXPORT hipblasStatus_t hipblasZtrmm(hipblasHandle_t handle,
Comments (4)
-
reporter -
reporter I fixed it with the following diff:
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7a0e7470c..a8c8c0ecc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -399,6 +399,10 @@ if (MAGMA_ENABLE_HIP) set(GPU_ARCH_FLAGS ${DEVCCFLAGS}) #add_compile_options(${GPU_ARCH_FLAGS}) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__HIP_PLATFORM_HCC__" ) + execute_process(COMMAND "${CMAKE_SOURCE_DIR}/tools/get-rocm-version.sh" OUTPUT_VARIABLE ROCM_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) + message(STATUS "ROCM_VERSION=${ROCM_VERSION}") + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DROCM_VERSION=${ROCM_VERSION}" ) else() message( STATUS "Could not find HIP" ) endif()
-
- changed status to open
-
- changed status to resolved
Thank you Jaap for raising this issue. I reproduced the issue and your solution works. I have just incorporated your fix into master.
- Log in to comment
Some further investigation suggest this is an issue in the CMake build. The define ROCM_VERSION that is used in the code to select the right parameter list is not being set in the CMake build