deal.II version GIT relicensing-1972-g22a7b89abe 2024-10-11 21:20:00+00:00
|
Classes | |
struct | AddAndDot |
struct | Dot |
struct | functions |
struct | functions< Number, Number, ::MemorySpace::Default > |
struct | functions< Number, Number2, ::MemorySpace::Host > |
struct | MeanValue |
struct | Norm1 |
struct | Norm2 |
struct | NormP |
struct | TBBForFunctor |
struct | TBBReduceFunctor |
struct | Vector_copy |
struct | Vector_set |
struct | Vectorization_add_av |
struct | Vectorization_add_avpbw |
struct | Vectorization_add_factor |
struct | Vectorization_add_v |
struct | Vectorization_equ_au |
struct | Vectorization_equ_aubv |
struct | Vectorization_equ_aubvcw |
struct | Vectorization_multiply_factor |
struct | Vectorization_ratio |
struct | Vectorization_sadd_xav |
struct | Vectorization_sadd_xavbw |
struct | Vectorization_sadd_xv |
struct | Vectorization_scale |
struct | Vectorization_subtract_v |
Typedefs | |
using | size_type = types::global_dof_index |
Functions | |
template<typename T > | |
bool | is_non_negative (const T &t) |
template<typename T > | |
bool | is_non_negative (const std::complex< T > &) |
template<typename T , typename U > | |
void | copy (const T *begin, const T *end, U *dest) |
template<typename T , typename U > | |
void | copy (const std::complex< T > *begin, const std::complex< T > *end, std::complex< U > *dest) |
template<typename T , typename U > | |
void | copy (const std::complex< T > *, const std::complex< T > *, U *) |
template<typename Functor > | |
void | parallel_for (Functor &functor, const size_type start, const size_type end, const std::shared_ptr<::parallel::internal::TBBPartitioner > &partitioner) |
template<typename Operation , typename ResultType > | |
void | accumulate_recursive (const Operation &op, const size_type first, const size_type last, ResultType &result) |
template<typename Operation , typename ResultType > | |
size_type | do_accumulate (const Operation op, const size_type vec_size, const size_type start_index, ResultType *outer_results, std::bool_constant< false >) |
template<typename Operation , typename Number > | |
size_type | do_accumulate (const Operation op, const size_type vec_size, const size_type start_index, Number *outer_results, std::bool_constant< true >) |
template<typename Operation , typename ResultType > | |
void | parallel_reduce (const Operation &op, const size_type start, const size_type end, ResultType &result, const std::shared_ptr<::parallel::internal::TBBPartitioner > &partitioner) |
Variables | |
const unsigned int | vector_accumulation_recursion_threshold = 128 |
using internal::VectorOperations::size_type = typedef types::global_dof_index |
Definition at line 39 of file vector_operations_internal.h.
bool internal::VectorOperations::is_non_negative | ( | const T & | t | ) |
Definition at line 43 of file vector_operations_internal.h.
bool internal::VectorOperations::is_non_negative | ( | const std::complex< T > & | ) |
Definition at line 51 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const T * | begin, |
const T * | end, | ||
U * | dest | ||
) |
Definition at line 65 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const std::complex< T > * | begin, |
const std::complex< T > * | end, | ||
std::complex< U > * | dest | ||
) |
Definition at line 72 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const std::complex< T > * | , |
const std::complex< T > * | , | ||
U * | |||
) |
Definition at line 81 of file vector_operations_internal.h.
void internal::VectorOperations::parallel_for | ( | Functor & | functor, |
const size_type | start, | ||
const size_type | end, | ||
const std::shared_ptr<::parallel::internal::TBBPartitioner > & | partitioner | ||
) |
Definition at line 147 of file vector_operations_internal.h.
void internal::VectorOperations::accumulate_recursive | ( | const Operation & | op, |
const size_type | first, | ||
const size_type | last, | ||
ResultType & | result | ||
) |
Definition at line 998 of file vector_operations_internal.h.
size_type internal::VectorOperations::do_accumulate | ( | const Operation | op, |
const size_type | vec_size, | ||
const size_type | start_index, | ||
ResultType * | outer_results, | ||
std::bool_constant< false > | |||
) |
Definition at line 1112 of file vector_operations_internal.h.
size_type internal::VectorOperations::do_accumulate | ( | const Operation | op, |
const size_type | vec_size, | ||
const size_type | start_index, | ||
Number * | outer_results, | ||
std::bool_constant< true > | |||
) |
Definition at line 1194 of file vector_operations_internal.h.
|
inline |
This is the general caller for parallel reduction operations that work in parallel.
Definition at line 1411 of file vector_operations_internal.h.
const unsigned int internal::VectorOperations::vector_accumulation_recursion_threshold = 128 |
The minimum number of chunks (each of size 32) to divide the range [first,last) into two (second part of the if branch in accumulate_recursive).
Definition at line 994 of file vector_operations_internal.h.