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

Add Spmv for BsrMatrix #1255

Merged
merged 15 commits into from
Jan 12, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
132 changes: 71 additions & 61 deletions perf_test/sparse/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,98 +2,108 @@ KOKKOSKERNELS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
KOKKOSKERNELS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_pcg
SOURCES KokkosSparse_pcg.cpp
)
sparse_pcg
SOURCES KokkosSparse_pcg.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_block_pcg
SOURCES KokkosSparse_block_pcg.cpp
)
sparse_block_pcg
SOURCES KokkosSparse_block_pcg.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spgemm
SOURCES KokkosSparse_spgemm.cpp
)
sparse_spgemm
SOURCES KokkosSparse_spgemm.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spgemm_jacobi
SOURCES KokkosSparse_spgemm_jacobi.cpp
)
sparse_spgemm_jacobi
SOURCES KokkosSparse_spgemm_jacobi.cpp
)

KOKKOSKERNELS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/spmv)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spadd
SOURCES KokkosSparse_spadd.cpp
)
sparse_spadd
SOURCES KokkosSparse_spadd.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spmv_struct
SOURCES KokkosSparse_spmv_struct.cpp
)
sparse_spmv_struct
SOURCES KokkosSparse_spmv_struct.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spmv_struct_tuning
SOURCES KokkosSparse_spmv_struct_tuning.cpp
)
sparse_spmv_struct_tuning
SOURCES KokkosSparse_spmv_struct_tuning.cpp
)


set(utilities_list)

IF(KokkosKernels_ENABLE_TESTS_AND_PERFSUITE)
LIST(APPEND utilities_list ../PerfTestUtilities.cpp)
ENDIF()
IF (KokkosKernels_ENABLE_TESTS_AND_PERFSUITE)
LIST(APPEND utilities_list ../PerfTestUtilities.cpp)
ENDIF ()

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spmv
SOURCES KokkosSparse_spmv.cpp KokkosSparse_spmv_test.cpp spmv/OpenMPSmartStatic_SPMV.cpp
${utilities_list}
)
sparse_spmv
SOURCES KokkosSparse_spmv.cpp KokkosSparse_spmv_test.cpp spmv/OpenMPSmartStatic_SPMV.cpp
${utilities_list}
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_kk_spmv
SOURCES KokkosSparse_kk_spmv.cpp
)

IF(KOKKOSKERNELS_ENABLE_TPL_CUSPARSE)
KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spmv_merge
SOURCES KokkosSparse_spmv_merge.cpp
sparse_kk_spmv
SOURCES KokkosSparse_kk_spmv.cpp
)

IF (KOKKOSKERNELS_ENABLE_TPL_CUSPARSE)
KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spmv_merge
SOURCES KokkosSparse_spmv_merge.cpp
)
ENDIF()
ENDIF ()

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv
SOURCES KokkosSparse_sptrsv.cpp
)
sparse_spmv_blockcrs
SOURCES KokkosSparse_spmv_blockcrs.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv_cholmod
SOURCES KokkosSparse_sptrsv_cholmod.cpp
)
sparse_spmv_bsr
SOURCES KokkosSparse_spmv_bsr.cpp
)

IF(NOT ${KOKKOS_HAS_TRILINOS})
# Disable this perf test with Trilinos builds to workaround
# -Werror issues error: declaration of xyz with C language linkage
KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv_superlu
SOURCES KokkosSparse_sptrsv_superlu.cpp
)
ENDIF()
sparse_sptrsv
SOURCES KokkosSparse_sptrsv.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv_cholmod
SOURCES KokkosSparse_sptrsv_cholmod.cpp
)

IF (NOT ${KOKKOS_HAS_TRILINOS})
# Disable this perf test with Trilinos builds to workaround
# -Werror issues error: declaration of xyz with C language linkage
KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv_superlu
SOURCES KokkosSparse_sptrsv_superlu.cpp
)
ENDIF ()

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_sptrsv_supernode
SOURCES KokkosSparse_sptrsv_supernode.cpp
)
sparse_sptrsv_supernode
SOURCES KokkosSparse_sptrsv_supernode.cpp
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_gs
SOURCES KokkosSparse_gs.cpp
TESTONLYLIBS kokkoskernelsperf_gtest
)
sparse_gs
SOURCES KokkosSparse_gs.cpp
TESTONLYLIBS kokkoskernelsperf_gtest
)

KOKKOSKERNELS_ADD_EXECUTABLE(
sparse_spiluk
SOURCES KokkosSparse_spiluk.cpp
)
sparse_spiluk
SOURCES KokkosSparse_spiluk.cpp
)
Loading