From 66a9b617411239b3d42efb775e9fcb294c30d72a Mon Sep 17 00:00:00 2001 From: Xingqiu Yuan <xyuan@anl.gov> Date: Fri, 17 Nov 2023 18:40:35 +0000 Subject: [PATCH] add sycl support for sunspot/aurora --- physics/scream_cxx_interfaces/CMakeLists.txt | 13 +++++++++++++ physics/scream_cxx_p3_shoc/CMakeLists.txt | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/physics/scream_cxx_interfaces/CMakeLists.txt b/physics/scream_cxx_interfaces/CMakeLists.txt index 8b197e2e..35c437db 100644 --- a/physics/scream_cxx_interfaces/CMakeLists.txt +++ b/physics/scream_cxx_interfaces/CMakeLists.txt @@ -26,6 +26,19 @@ elseif ("${YAKL_ARCH}" STREQUAL "HIP") set(Kokkos_ENABLE_EXPLICIT_INSTANTIATION FALSE CACHE BOOL "") set($ENV{Kokkos_ARCH_HIP} ON CACHE BOOL "" FORCE) set(CMAKE_CXX_STANDARD 14) +elseif ("${YAKL_ARCH}" STREQUAL "SYCL") + set(CMAKE_CXX_EXTENSIONS FALSE CACHE BOOL "OFF") + set(CMAKE_VERBOSE_MAKEFILE TRUE CACHE BOOL "ON") + set(DBUILD_SHARED_LIBS TRUE CACHE BOOL "ON") + #set(Kokkos_ARCH_INTEL_XEHP OFF CACHE BOOL "OFF") # for ATS and AoT compilation (**) + set(Kokkos_ARCH_INTEL_PVC TRUE CACHE BOOL "ON") # for PVC and AoT compilation + set(Kokkos_ENABLE_OPENMP FALSE CACHE BOOL "OFF") + set(Kokkos_ENABLE_SYCL TRUE CACHE BOOL "ON") + set(Kokkos_ENABLE_DEPRECATED_CODE_3 TRUE CACHE BOOL "ON") # (if not building Kokkos Kernels, this can be OFF) + set(EAMXX_ENABLE_GPU TRUE CACHE BOOL "" FORCE) + set(Kokkos_ENABLE_EXPLICIT_INSTANTIATION TRUE CACHE BOOL "") + set(SCREAM_SMALL_KERNELS TRUE CACHE BOOL "" FORCE) + set(CMAKE_CXX_STANDARD 17) endif() if ("${CMAKE_Fortran_COMPILER_ID}" STREQUAL "Flang") diff --git a/physics/scream_cxx_p3_shoc/CMakeLists.txt b/physics/scream_cxx_p3_shoc/CMakeLists.txt index e95a3955..8271c40d 100644 --- a/physics/scream_cxx_p3_shoc/CMakeLists.txt +++ b/physics/scream_cxx_p3_shoc/CMakeLists.txt @@ -25,6 +25,19 @@ elseif ("${YAKL_ARCH}" STREQUAL "HIP") set(Kokkos_ENABLE_EXPLICIT_INSTANTIATION FALSE CACHE BOOL "") set($ENV{Kokkos_ARCH_HIP} ON CACHE BOOL "" FORCE) set(CMAKE_CXX_STANDARD 14) +elseif ("${YAKL_ARCH}" STREQUAL "SYCL") + set(CMAKE_CXX_EXTENSIONS FALSE CACHE BOOL "OFF") + set(CMAKE_VERBOSE_MAKEFILE TRUE CACHE BOOL "ON") + set(DBUILD_SHARED_LIBS TRUE CACHE BOOL "ON") + #set(Kokkos_ARCH_INTEL_XEHP OFF CACHE BOOL "OFF") # for ATS and AoT compilation (**) + set(Kokkos_ARCH_INTEL_PVC TRUE CACHE BOOL "ON") # for PVC and AoT compilation + set(Kokkos_ENABLE_OPENMP FALSE CACHE BOOL "OFF") + set(Kokkos_ENABLE_SYCL TRUE CACHE BOOL "ON") + set(Kokkos_ENABLE_DEPRECATED_CODE_3 TRUE CACHE BOOL "ON") # (if not building Kokkos Kernels, this can be OFF) + set(EAMXX_ENABLE_GPU TRUE CACHE BOOL "" FORCE) + set(Kokkos_ENABLE_EXPLICIT_INSTANTIATION TRUE CACHE BOOL "") + set(SCREAM_SMALL_KERNELS TRUE CACHE BOOL "" FORCE) + set(CMAKE_CXX_STANDARD 17) endif() if ("${CMAKE_Fortran_COMPILER_ID}" STREQUAL "Flang")