RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
thread_auto.hpp
Go to the documentation of this file.
1 
11 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
12 // Copyright (c) Lawrence Livermore National Security, LLC and other
13 // RAJA Project Developers. See top-level LICENSE and COPYRIGHT
14 // files for dates and other details. No copyright assignment is required
15 // to contribute to RAJA.
16 //
17 // SPDX-License-Identifier: (BSD-3-Clause)
18 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
19 
20 #ifndef RAJA_policy_thread_auto_HPP
21 #define RAJA_policy_thread_auto_HPP
22 
23 #include "RAJA/config.hpp"
24 
25 #include "RAJA/util/macros.hpp"
26 
27 #ifdef RAJA_OPENMP_ACTIVE
29 #endif
30 
32 
33 namespace RAJA
34 {
35 
36 namespace detail
37 {
46 #if defined(RAJA_OPENMP_ACTIVE)
48 #else
50 #endif
51 
52 } // namespace detail
53 
54 template<typename AtomicPolicy>
55 RAJA_HOST_DEVICE RAJA_INLINE int get_max_threads(AtomicPolicy);
56 
57 template<typename AtomicPolicy>
58 RAJA_HOST_DEVICE RAJA_INLINE int get_thread_num(AtomicPolicy);
59 
60 } // namespace RAJA
61 
62 #endif
Header file for common RAJA internal macro definitions.
#define RAJA_HOST_DEVICE
Definition: macros.hpp:65
RAJA::seq_thread active_auto_thread
Definition: thread_auto.hpp:49
Definition: AlignedRangeIndexSetBuilders.cpp:35
RAJA_INLINE RAJA_HOST_DEVICE int get_max_threads()
Get maximum number of threads.
Definition: thread.hpp:77
RAJA_INLINE RAJA_HOST_DEVICE int get_thread_num()
Get current thread number This is based on the OpenMP threading model. Within a parallel team executi...
Definition: thread.hpp:90
Header file containing RAJA OpenMP policy definitions.
Header file containing RAJA sequential policy definitions.
Definition: policy.hpp:348
Definition: policy.hpp:130