|
LLVM OpenMP 22.0.0git
|
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/openmp/runtime/src/kmp_barrier.h"
Public Types | |
| enum | { MAX_ITERS = 3 , MAX_GOS = 8 , IDEAL_GOS = 4 , IDEAL_CONTENTION = 16 } |
Public Member Functions | |
| distributedBarrier ()=delete | |
| ~distributedBarrier ()=delete | |
| void | update_num_threads (size_t nthr) |
| bool | need_resize (size_t new_nthr) |
| size_t | get_num_threads () |
| kmp_uint64 | go_release () |
| void | go_reset () |
Static Public Member Functions | |
| static distributedBarrier * | allocate (int nThreads) |
| static void | deallocate (distributedBarrier *db) |
Public Attributes | |
| flags_s * | flags [MAX_ITERS] |
| go_s * | go |
| iter_s * | iter |
| sleep_s * | sleep |
| size_t KMP_ALIGN_CACHE | num_threads |
| size_t KMP_ALIGN_CACHE | max_threads |
| size_t KMP_ALIGN_CACHE | num_gos |
| size_t KMP_ALIGN_CACHE | num_groups |
| size_t KMP_ALIGN_CACHE | threads_per_go |
| bool KMP_ALIGN_CACHE | fix_threads_per_go |
| size_t KMP_ALIGN_CACHE | threads_per_group |
| size_t KMP_ALIGN_CACHE | gos_per_group |
| void * | team_icvs |
Definition at line 59 of file kmp_barrier.h.
| anonymous enum |
| Enumerator | |
|---|---|
| MAX_ITERS | |
| MAX_GOS | |
| IDEAL_GOS | |
| IDEAL_CONTENTION | |
Definition at line 82 of file kmp_barrier.h.
|
delete |
Referenced by allocate(), and deallocate().
|
delete |
|
inlinestatic |
Definition at line 113 of file kmp_barrier.h.
References CACHE_LINE, d, distributedBarrier(), i, KMP_ALIGNED_ALLOCATE, KMP_FATAL, and MAX_ITERS.
Referenced by __kmp_allocate_team().
|
static |
Definition at line 208 of file kmp_barrier.cpp.
References __kmp_free, distributedBarrier(), flags, go, i, iter, KMP_ALIGNED_FREE, KMP_INTERNAL_FREE, MAX_ITERS, sleep, and team_icvs.
Referenced by __kmp_free_team().
|
inline |
Definition at line 138 of file kmp_barrier.h.
References num_threads.
| kmp_uint64 distributedBarrier::go_release | ( | ) |
| void distributedBarrier::go_reset | ( | ) |
Definition at line 171 of file kmp_barrier.cpp.
References flags, go, i, iter, j, MAX_ITERS, and max_threads.
|
inline |
Definition at line 137 of file kmp_barrier.h.
References max_threads.
|
inline |
Definition at line 135 of file kmp_barrier.h.
| bool KMP_ALIGN_CACHE distributedBarrier::fix_threads_per_go |
Definition at line 102 of file kmp_barrier.h.
| flags_s* distributedBarrier::flags[MAX_ITERS] |
Definition at line 89 of file kmp_barrier.h.
Referenced by deallocate(), and go_reset().
| go_s* distributedBarrier::go |
Definition at line 90 of file kmp_barrier.h.
Referenced by deallocate(), go_release(), and go_reset().
| size_t KMP_ALIGN_CACHE distributedBarrier::gos_per_group |
Definition at line 106 of file kmp_barrier.h.
| iter_s* distributedBarrier::iter |
Definition at line 91 of file kmp_barrier.h.
Referenced by deallocate(), go_release(), and go_reset().
| size_t KMP_ALIGN_CACHE distributedBarrier::max_threads |
Definition at line 95 of file kmp_barrier.h.
Referenced by go_reset(), and need_resize().
| size_t KMP_ALIGN_CACHE distributedBarrier::num_gos |
Definition at line 97 of file kmp_barrier.h.
Referenced by go_release().
| size_t KMP_ALIGN_CACHE distributedBarrier::num_groups |
Definition at line 99 of file kmp_barrier.h.
| size_t KMP_ALIGN_CACHE distributedBarrier::num_threads |
Definition at line 94 of file kmp_barrier.h.
Referenced by get_num_threads().
| sleep_s* distributedBarrier::sleep |
Definition at line 92 of file kmp_barrier.h.
Referenced by deallocate().
| void* distributedBarrier::team_icvs |
Definition at line 107 of file kmp_barrier.h.
Referenced by deallocate().
| size_t KMP_ALIGN_CACHE distributedBarrier::threads_per_go |
Definition at line 101 of file kmp_barrier.h.
| size_t KMP_ALIGN_CACHE distributedBarrier::threads_per_group |
Definition at line 104 of file kmp_barrier.h.