37 lines
1.8 KiB
CMake
37 lines
1.8 KiB
CMake
# preset that enables KOKKOS and selects SYCL compilation with OpenMP
|
|
# enabled as well. Also sets some performance related compiler flags.
|
|
set(PKG_KOKKOS ON CACHE BOOL "" FORCE)
|
|
set(Kokkos_ENABLE_SERIAL ON CACHE BOOL "" FORCE)
|
|
set(Kokkos_ENABLE_OPENMP ON CACHE BOOL "" FORCE)
|
|
set(Kokkos_ENABLE_CUDA OFF CACHE BOOL "" FORCE)
|
|
set(Kokkos_ENABLE_SYCL ON CACHE BOOL "" FORCE)
|
|
|
|
set(FFT "MKL" CACHE STRING "" FORCE)
|
|
set(FFT_KOKKOS "MKL_GPU" CACHE STRING "" FORCE)
|
|
|
|
unset(USE_INTERNAL_LINALG)
|
|
unset(USE_INTERNAL_LINALG CACHE)
|
|
set(BLAS_VENDOR "Intel10_64_dyn")
|
|
|
|
# hide deprecation warnings temporarily for stable release
|
|
set(Kokkos_ENABLE_DEPRECATION_WARNINGS OFF CACHE BOOL "" FORCE)
|
|
|
|
set(CMAKE_CXX_COMPILER icpx CACHE STRING "" FORCE)
|
|
set(CMAKE_C_COMPILER icx CACHE STRING "" FORCE)
|
|
set(CMAKE_Fortran_COMPILER "" CACHE STRING "" FORCE)
|
|
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
|
set(CMAKE_CXX_STANDARD 17 CACHE STRING "" FORCE)
|
|
|
|
# set(_intel_sycl_flags " -w -fsycl -flink-huge-device-code -fsycl-targets=spir64_gen "
|
|
set(_intel_sycl_flags " -w -fsycl -fsycl-device-code-split=per_kernel -fsycl-targets=spir64_gen "
|
|
if (CMAKE_CXX_FLAGS)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_intel_sycl_flags}" CACHE STRING "" FORCE)
|
|
endif()
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${_intel_sycl_flags}" CACHE STRING "" FORCE)
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${_intel_sycl_flags}" CACHE STRING "" FORCE)
|
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${_intel_sycl_flags}" CACHE STRING "" FORCE)
|
|
set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${_intel_sycl_flags}" CACHE STRING "" FORCE)
|
|
|
|
#set(CMAKE_EXE_LINKER_FLAGS "-fsycl -flink-huge-device-code -fsycl-targets=spir64_gen " CACHE STRING "" FORCE)
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsycl -flink-huge-device-code " CACHE STRING "" FORCE)
|