OpenLB 1.7
|
Implementations of vector CPU specifics. More...
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<typename T , typename S > | |
Pack< T > | operator+ (S lhs, Pack< T > rhs) |
template<typename T , typename S > | |
Pack< T > | operator+ (Pack< T > lhs, S rhs) |
template<typename T , typename S > | |
Pack< T > | operator- (S lhs, Pack< T > rhs) |
template<typename T , typename S > | |
Pack< T > | operator- (Pack< T > lhs, S rhs) |
template<typename T , typename S > | |
Pack< T > | operator* (Pack< T > lhs, S rhs) |
template<typename T , typename S > | |
Pack< T > | operator* (S lhs, Pack< T > rhs) |
template<typename T , typename S > | |
Pack< T > | operator/ (Pack< T > lhs, S rhs) |
template<typename T , typename S > | |
Pack< T > | operator/ (S lhs, Pack< T > rhs) |
template<typename 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 ) |
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 ) |
Definition at line 395 of file 256.h.
References olb::util::pow().
void olb::cpu::simd::store | ( | T * | target, |
Pack< T > | value ) |
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 ) |