forked from E3SM-Project/EKAT
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathekat.hpp
More file actions
37 lines (28 loc) · 748 Bytes
/
Copy pathekat.hpp
File metadata and controls
37 lines (28 loc) · 748 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef EKAT_HPP
#define EKAT_HPP
#include "ekat/ekat_config.h"
#include <Kokkos_Core.hpp>
/*
* This header doesn't do much as of now. It includes ekat_config.h,
* and declares an alias for int.
*/
namespace ekat {
using Int = int;
#ifdef EKAT_DEFAULT_BFB
static constexpr bool ekatBFB = true;
#else
static constexpr bool ekatBFB = false;
#endif
#ifdef EKAT_ENABLE_GPU
# if defined KOKKOS_ENABLE_CUDA
typedef Kokkos::Cuda EkatGpuSpace;
# elif defined KOKKOS_ENABLE_HIP
typedef Kokkos::Experimental::HIP EkatGpuSpace;
# elif defined KOKKOS_ENABLE_SYCL
typedef Kokkos::Experimental::SYCL EkatGpuSpace;
# else
error "EKAT does not recognize a GPU space other than Cuda, HIP and SYCL".
# endif
#endif
} // namespace ekat
#endif // EKAT_HPP