YAKL
YAKL.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include "YAKL_header.h"
5 #include "YAKL_defines.h"
6 
7 // These wrap the yakl namespace in a user-defined namespace to allow multiple YAKLs to be used in
8 // the same codebase. Anonymous / unnamed namespaces are not the best choice because they would leave
9 // out the Fortran interoperability.
10 #ifdef YAKL_NAMESPACE_WRAPPER_LABEL
11 
12 #define __YAKL_NAMESPACE_WRAPPER_BEGIN__ namespace YAKL_NAMESPACE_WRAPPER_LABEL {
13 #define __YAKL_NAMESPACE_WRAPPER_END__ }
14 namespace YAKL_NAMESPACE_WRAPPER_LABEL {}
15 using namespace YAKL_NAMESPACE_WRAPPER_LABEL ;
16 
17 #else
18 
19 #define __YAKL_NAMESPACE_WRAPPER_BEGIN__
20 #define __YAKL_NAMESPACE_WRAPPER_END__
21 
22 #endif
23 
31 namespace yakl {
32  typedef unsigned int uint;
33  using std::cos;
34  using std::sin;
35  using std::pow;
36  using std::min;
37  using std::max;
38  using std::abs;
39 
40  // Type for indexing. Rarely if ever is size_t going to be needed
41  typedef unsigned int index_t;
42  index_t constexpr INDEX_MAX = std::numeric_limits<index_t>::max();
43 }
45 
46 #include "ArrayIR.h"
47 #include "YAKL_verbose.h"
48 #include "YAKL_sycldevice.h"
49 #include "YAKL_streams_events.h"
50 #include "YAKL_LaunchConfig.h"
51 #include "YAKL_fence.h"
52 #include "YAKL_error.h"
53 #include "YAKL_Gator.h"
54 #include "YAKL_Toney.h"
55 #include "YAKL_Internal.h"
56 #include "YAKL_timers.h"
57 #include "YAKL_mutex.h"
58 #include "YAKL_allocators.h"
59 #include "YAKL_InitConfig.h"
60 #include "YAKL_init.h"
61 #include "YAKL_finalize.h"
62 #include "YAKL_parallel_for.h"
63 #include "YAKL_memory_spaces.h"
64 #include "YAKL_mem_transfers.h"
65 #include "YAKL_reductions.h"
66 #include "YAKL_atomics.h"
67 #include "YAKL_random.h"
68 #include "YAKL_Array.h"
69 #include "YAKL_ScalarLiveOut.h"
70 #include "YAKL_memset.h"
71 #include "extensions/YAKL_simd.h"
76 
77 
YAKL_error.h
YAKL_atomics.h
YAKL_Internal.h
YAKL_timers.h
ArrayIR.h
yakl::uint
unsigned int uint
Definition: YAKL.h:32
YAKL_streams_events.h
YAKL_componentwise.h
yakl::simd::sin
YAKL_INLINE Pack< T, N > sin(Pack< T, N > a)
Definition: YAKL_simd.h:306
__YAKL_NAMESPACE_WRAPPER_END__
#define __YAKL_NAMESPACE_WRAPPER_END__
Definition: YAKL.h:20
yakl::simd::cos
YAKL_INLINE Pack< T, N > cos(Pack< T, N > a)
Definition: YAKL_simd.h:298
YAKL_Gator.h
YAKL_verbose.h
yakl::INDEX_MAX
constexpr index_t INDEX_MAX
Definition: YAKL.h:42
__YAKL_NAMESPACE_WRAPPER_BEGIN__
#define __YAKL_NAMESPACE_WRAPPER_BEGIN__
Definition: YAKL.h:19
YAKL_pentadiagonal.h
YAKL_mem_transfers.h
YAKL_LaunchConfig.h
YAKL_init.h
YAKL_allocators.h
YAKL_finalize.h
YAKL_random.h
YAKL_fence.h
YAKL_intrinsics.h
yakl::index_t
unsigned int index_t
Definition: YAKL.h:41
YAKL_memset.h
YAKL_Array.h
YAKL_InitConfig.h
YAKL_parallel_for.h
YAKL_ScalarLiveOut.h
YAKL_memory_spaces.h
YAKL_defines.h
YAKL_header.h
yakl
YAKL_simd.h
yakl::simd::abs
YAKL_INLINE Pack< T, N > abs(Pack< T, N > a)
Definition: YAKL_simd.h:266
YAKL_tridiagonal.h
YAKL_mutex.h
yakl::simd::pow
YAKL_INLINE Pack< T, N > pow(Pack< T, N > lhs, TLOC val)
Definition: YAKL_simd.h:238