AmpGen 2.1
Loading...
Searching...
No Matches
AmpGen::AVX2f Namespace Reference

Classes

struct  real_v
 

Typedefs

using complex_v = Complex<real_v>
 

Functions

real_v operator+ (const real_v &lhs, const real_v &rhs)
 
real_v operator- (const real_v &lhs, const real_v &rhs)
 
real_v operator* (const real_v &lhs, const real_v &rhs)
 
real_v operator/ (const real_v &lhs, const real_v &rhs)
 
real_v operator- (const real_v &x)
 
real_v operator& (const real_v &lhs, const real_v &rhs)
 
real_v operator| (const real_v &lhs, const real_v &rhs)
 
real_v operator^ (const real_v &lhs, const real_v &rhs)
 
real_v operator&& (const real_v &lhs, const real_v &rhs)
 
real_v operator|| (const real_v &lhs, const real_v &rhs)
 
real_v operator! (const real_v &x)
 
real_v operator< (const real_v &lhs, const real_v &rhs)
 
real_v operator> (const real_v &lhs, const real_v &rhs)
 
real_v operator<= (const real_v &lhs, const real_v &rhs)
 
real_v operator>= (const real_v &lhs, const real_v &rhs)
 
real_v operator== (const real_v &lhs, const real_v &rhs)
 
real_v sqrt (const real_v &v)
 
real_v sin (const real_v &v)
 
real_v cos (const real_v &v)
 
real_v exp (const real_v &v)
 
real_v log (const real_v &v)
 
std::array< int32_t, real_v::size > store (const __m256i &v)
 
void sincos (const real_v &v, real_v &s, real_v &c)
 
std::pair< real_v, real_vsincos (const real_v &v)
 
real_v tan (const real_v &v)
 
real_v abs (const real_v &v)
 
real_v select (const real_v &mask, const real_v &a, const real_v &b)
 
real_v select (const bool &mask, const real_v &a, const real_v &b)
 
real_v sign (const real_v &v)
 
real_v fmadd (const real_v &a, const real_v &b, const real_v &c)
 
real_v remainder (const real_v &a, const real_v &b)
 
real_v atan2 (const real_v &y, const real_v &x)
 
real_v gather (const double *base_addr, const real_v &offsets)
 
real_v fmod (const real_v &a, const real_v &b)
 
std::ostream & operator<< (std::ostream &os, const real_v &obj)
 
complex_v select (const real_v &mask, const complex_v &a, const complex_v &b)
 
complex_v select (const real_v &mask, const real_v &a, const complex_v &b)
 
complex_v select (const real_v &mask, const complex_v &a, const real_v &b)
 
complex_v select (const bool &mask, const complex_v &a, const complex_v &b)
 

Typedef Documentation

◆ complex_v

Definition at line 139 of file avx2f_types.h.

Function Documentation

◆ abs()

real_v AmpGen::AVX2f::abs ( const real_v & v)
inline

Definition at line 104 of file avx2f_types.h.

◆ atan2()

real_v AmpGen::AVX2f::atan2 ( const real_v & y,
const real_v & x )
inline

Definition at line 110 of file avx2f_types.h.

◆ cos()

real_v AmpGen::AVX2f::cos ( const real_v & v)
inline

Definition at line 77 of file avx2f_types.h.

◆ exp()

real_v AmpGen::AVX2f::exp ( const real_v & v)
inline

Definition at line 78 of file avx2f_types.h.

◆ fmadd()

real_v AmpGen::AVX2f::fmadd ( const real_v & a,
const real_v & b,
const real_v & c )
inline

Definition at line 108 of file avx2f_types.h.

◆ fmod()

real_v AmpGen::AVX2f::fmod ( const real_v & a,
const real_v & b )
inline

Definition at line 127 of file avx2f_types.h.

◆ gather()

real_v AmpGen::AVX2f::gather ( const double * base_addr,
const real_v & offsets )
inline

temporary -> improve by loading into two 256b SIMD registers, casting and merging

Definition at line 117 of file avx2f_types.h.

◆ log()

real_v AmpGen::AVX2f::log ( const real_v & v)
inline

Definition at line 79 of file avx2f_types.h.

◆ operator!()

real_v AmpGen::AVX2f::operator! ( const real_v & x)
inline

Definition at line 65 of file avx2f_types.h.

◆ operator&()

real_v AmpGen::AVX2f::operator& ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 60 of file avx2f_types.h.

◆ operator&&()

real_v AmpGen::AVX2f::operator&& ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 63 of file avx2f_types.h.

◆ operator*()

real_v AmpGen::AVX2f::operator* ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 57 of file avx2f_types.h.

◆ operator+()

real_v AmpGen::AVX2f::operator+ ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 55 of file avx2f_types.h.

◆ operator-() [1/2]

real_v AmpGen::AVX2f::operator- ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 56 of file avx2f_types.h.

◆ operator-() [2/2]

real_v AmpGen::AVX2f::operator- ( const real_v & x)
inline

Definition at line 59 of file avx2f_types.h.

◆ operator/()

real_v AmpGen::AVX2f::operator/ ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 58 of file avx2f_types.h.

◆ operator<()

real_v AmpGen::AVX2f::operator< ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 66 of file avx2f_types.h.

◆ operator<<()

std::ostream & AmpGen::AVX2f::operator<< ( std::ostream & os,
const real_v & obj )
inline

Definition at line 133 of file avx2f_types.h.

◆ operator<=()

real_v AmpGen::AVX2f::operator<= ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 68 of file avx2f_types.h.

◆ operator==()

real_v AmpGen::AVX2f::operator== ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 70 of file avx2f_types.h.

◆ operator>()

real_v AmpGen::AVX2f::operator> ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 67 of file avx2f_types.h.

◆ operator>=()

real_v AmpGen::AVX2f::operator>= ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 69 of file avx2f_types.h.

◆ operator^()

real_v AmpGen::AVX2f::operator^ ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 62 of file avx2f_types.h.

◆ operator|()

real_v AmpGen::AVX2f::operator| ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 61 of file avx2f_types.h.

◆ operator||()

real_v AmpGen::AVX2f::operator|| ( const real_v & lhs,
const real_v & rhs )
inline

Definition at line 64 of file avx2f_types.h.

◆ remainder()

real_v AmpGen::AVX2f::remainder ( const real_v & a,
const real_v & b )
inline

Definition at line 109 of file avx2f_types.h.

◆ select() [1/6]

complex_v AmpGen::AVX2f::select ( const bool & mask,
const complex_v & a,
const complex_v & b )
inline

Definition at line 143 of file avx2f_types.h.

◆ select() [2/6]

real_v AmpGen::AVX2f::select ( const bool & mask,
const real_v & a,
const real_v & b )
inline

Definition at line 106 of file avx2f_types.h.

◆ select() [3/6]

complex_v AmpGen::AVX2f::select ( const real_v & mask,
const complex_v & a,
const complex_v & b )
inline

Definition at line 140 of file avx2f_types.h.

◆ select() [4/6]

complex_v AmpGen::AVX2f::select ( const real_v & mask,
const complex_v & a,
const real_v & b )
inline

Definition at line 142 of file avx2f_types.h.

◆ select() [5/6]

complex_v AmpGen::AVX2f::select ( const real_v & mask,
const real_v & a,
const complex_v & b )
inline

Definition at line 141 of file avx2f_types.h.

◆ select() [6/6]

real_v AmpGen::AVX2f::select ( const real_v & mask,
const real_v & a,
const real_v & b )
inline

Definition at line 105 of file avx2f_types.h.

◆ sign()

real_v AmpGen::AVX2f::sign ( const real_v & v)
inline

Definition at line 107 of file avx2f_types.h.

◆ sin()

real_v AmpGen::AVX2f::sin ( const real_v & v)
inline

Definition at line 76 of file avx2f_types.h.

◆ sincos() [1/2]

std::pair< real_v, real_v > AmpGen::AVX2f::sincos ( const real_v & v)
inline

Definition at line 92 of file avx2f_types.h.

◆ sincos() [2/2]

void AmpGen::AVX2f::sincos ( const real_v & v,
real_v & s,
real_v & c )
inline

todo - add back support for mvec

Definition at line 87 of file avx2f_types.h.

◆ sqrt()

real_v AmpGen::AVX2f::sqrt ( const real_v & v)
inline

Definition at line 71 of file avx2f_types.h.

◆ store()

std::array< int32_t, real_v::size > AmpGen::AVX2f::store ( const __m256i & v)
inline

Definition at line 80 of file avx2f_types.h.

◆ tan()

real_v AmpGen::AVX2f::tan ( const real_v & v)
inline

Definition at line 98 of file avx2f_types.h.