![]() |
OpenLB 1.8.1
|
Implementations of vector CPU specifics. More...
Namespaces | |
| namespace | concepts |
Classes | |
| class | Cell |
| Implementation of the Cell concept for vectorized collision operators. More... | |
| class | Column |
| Plain column for SIMD CPU targets. More... | |
| class | ConcreteDynamics |
| Implementation of cpu::Dynamics for concrete DYNAMICS on SIMD blocks. More... | |
| class | CyclicColumn |
| Virtual memory based cyclic column for usage in ColumnVector. More... | |
| class | FieldPtr |
| SIMD-specific pointer to a pack of rows of a D-dimensional field. More... | |
| class | Mask |
| class | Mask< double > |
| class | Mask< float > |
| class | Pack |
| class | Pack< double > |
| class | Pack< float > |
Functions | |
| template<typename T > | |
| Pack< T > | pow (Pack< T > base, Pack< T > exp) |
| template<typename T > | |
| Pack< T > | min (Pack< T > rhs, Pack< T > lhs) |
| template<typename T > | |
| Pack< T > | max (Pack< T > rhs, Pack< T > lhs) |
| template<typename T > | |
| Pack< T > | fabs (Pack< T > x) |
| template<typename T > | |
| void | maskstore (T *target, Mask< T > mask, Pack< T > value) |
| template<> | |
| void | maskstore< double > (double *target, Mask< double > mask, Pack< double > value) |
| template<> | |
| void | maskstore< float > (float *target, Mask< float > mask, Pack< float > value) |
| template<typename T > | |
| void | store (T *target, Pack< T > value) |
| template<> | |
| void | store< double > (double *target, Pack< double > value) |
| template<> | |
| void | store< float > (float *target, Pack< float > value) |
| template<typename T > | |
| void | store (T *target, Pack< T > value, const typename Pack< T >::index_t *indices) |
| template<> | |
| void | store< double > (double *target, Pack< double > value, const Pack< double >::index_t *indices) |
| template<> | |
| void | store< float > (float *target, Pack< float > value, const Pack< float >::index_t *indices) |
| template<> | |
| void | maskstore< double > (double *target, Mask< double > mask, Pack< double > value) |
| template<> | |
| void | maskstore< float > (float *target, Mask< float > mask, Pack< float > value) |
| template<> | |
| void | store< double > (double *target, Pack< double > value) |
| template<> | |
| void | store< float > (float *target, Pack< float > value) |
| template<> | |
| void | store< double > (double *target, Pack< double > value, const Pack< double >::index_t *indices) |
| template<> | |
| void | store< float > (float *target, Pack< float > value, const Pack< float >::index_t *indices) |
| template<typename T > | |
| std::size_t | getPageAlignedCount (std::size_t count) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator+ (S lhs, Pack< T > rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator+ (Pack< T > lhs, S rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator- (S lhs, Pack< T > rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator- (Pack< T > lhs, S rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator* (Pack< T > lhs, S rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator* (S lhs, Pack< T > rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator/ (Pack< T > lhs, S rhs) |
| template<std::floating_point T, concepts::convertible_to_pack S> | |
| Pack< T > | operator/ (S lhs, Pack< T > rhs) |
| template<std::floating_point T> | |
| Pack< T > | sqrt (Pack< T > x) |
Variables | |
| const int | PROT_RW = PROT_READ | PROT_WRITE |
Implementations of vector CPU specifics.
| std::size_t olb::cpu::simd::getPageAlignedCount | ( | std::size_t | count | ) |
Definition at line 134 of file column.h.
| void olb::cpu::simd::maskstore | ( | T * | target, |
| Mask< T > | mask, | ||
| Pack< T > | value ) |
Here is the caller graph for this function:| void olb::cpu::simd::maskstore< double > | ( | double * | target, |
| Mask< double > | mask, | ||
| Pack< double > | value ) |
| void olb::cpu::simd::maskstore< double > | ( | double * | target, |
| Mask< double > | mask, | ||
| Pack< double > | value ) |
| void olb::cpu::simd::maskstore< float > | ( | float * | target, |
| Mask< float > | mask, | ||
| Pack< float > | value ) |
| void olb::cpu::simd::maskstore< float > | ( | float * | target, |
| Mask< float > | mask, | ||
| Pack< float > | value ) |
| Pack< T > olb::cpu::simd::operator* | ( | Pack< T > | lhs, |
| S | rhs ) |
Definition at line 395 of file 256.h.
References olb::util::pow().
Here is the call graph for this function:
Here is the caller graph for this function:| void olb::cpu::simd::store | ( | T * | target, |
| Pack< T > | value ) |
Here is the caller graph for this function:| void olb::cpu::simd::store | ( | T * | target, |
| Pack< T > | value, | ||
| const typename Pack< T >::index_t * | indices ) |
| void olb::cpu::simd::store< double > | ( | double * | target, |
| Pack< double > | value ) |
| void olb::cpu::simd::store< double > | ( | double * | target, |
| Pack< double > | value ) |
| void olb::cpu::simd::store< double > | ( | double * | target, |
| Pack< double > | value, | ||
| const Pack< double >::index_t * | indices ) |
Definition at line 467 of file 256.h.
| void olb::cpu::simd::store< double > | ( | double * | target, |
| Pack< double > | value, | ||
| const Pack< double >::index_t * | indices ) |
| void olb::cpu::simd::store< float > | ( | float * | target, |
| Pack< float > | value ) |
| void olb::cpu::simd::store< float > | ( | float * | target, |
| Pack< float > | value ) |
| void olb::cpu::simd::store< float > | ( | float * | target, |
| Pack< float > | value, | ||
| const Pack< float >::index_t * | indices ) |
Definition at line 480 of file 256.h.
| void olb::cpu::simd::store< float > | ( | float * | target, |
| Pack< float > | value, | ||
| const Pack< float >::index_t * | indices ) |