FflasFfpack
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes
Bench< Elt > Class Template Reference

Public Types

using Field = Modular< Elt >
 
using Elt_ptr = typename Field::Element_ptr
 
using Residu = typename Field::Residu_t
 
template<bool B, class T = void>
using enable_if_t = typename std::enable_if< B, T >::type
 
template<typename Simd >
using is_same_element = typename Simd::template is_same_element< Field >
 
template<typename E >
using enable_if_no_simd_t = enable_if_t< Simd< E >::vect_size==1 >
 
template<typename E >
using enable_if_simd128_t = enable_if_t< sizeof(E) *Simd< E >::vect_size==16 >
 
template<typename E >
using enable_if_simd256_t = enable_if_t< sizeof(E) *Simd< E >::vect_size==32 >
 
template<typename E >
using enable_if_simd512_t = enable_if_t< sizeof(E) *Simd< E >::vect_size==64 >
 

Public Member Functions

 Bench (size_t m, size_t n, size_t iters, bool inplace)
 
template<typename Simd = NoSimd<Elt>, enable_if_t< is_same_element< Simd >::value > * = nullptr>
void doBenchs ()
 
template<typename _E = Elt, enable_if_t< is_same< _E, Elt >::value > * = nullptr, enable_if_no_simd_t< _E > * = nullptr>
void run (bool allsimd)
 

Static Public Member Functions

template<typename _E = Elt, enable_if_t<!is_same< _E, Givaro::Integer >::value > * = nullptr>
static Residu cardinality ()
 
template<typename _E = Elt, enable_if_t< is_same< _E, Givaro::Integer >::value > * = nullptr>
static Residu cardinality ()
 

Protected Attributes

Field F
 
const size_t m
 
const size_t n
 
const size_t iters
 
const bool inplace
 

Member Typedef Documentation

◆ Field

using Field = Modular<Elt>

◆ Elt_ptr

using Elt_ptr = typename Field::Element_ptr

◆ Residu

using Residu = typename Field::Residu_t

◆ enable_if_t

using enable_if_t = typename std::enable_if<B, T>::type

◆ is_same_element

using is_same_element = typename Simd::template is_same_element<Field>

◆ enable_if_no_simd_t

using enable_if_no_simd_t = enable_if_t<Simd<E>::vect_size == 1>

◆ enable_if_simd128_t

using enable_if_simd128_t = enable_if_t<sizeof(E)*Simd<E>::vect_size == 16>

◆ enable_if_simd256_t

using enable_if_simd256_t = enable_if_t<sizeof(E)*Simd<E>::vect_size == 32>

◆ enable_if_simd512_t

using enable_if_simd512_t = enable_if_t<sizeof(E)*Simd<E>::vect_size == 64>

Constructor & Destructor Documentation

◆ Bench()

Bench ( size_t  m,
size_t  n,
size_t  iters,
bool  inplace 
)
inline

Member Function Documentation

◆ cardinality() [1/2]

static Residu cardinality ( )
inlinestatic

◆ cardinality() [2/2]

static Residu cardinality ( )
inlinestatic

◆ doBenchs()

void doBenchs ( )
inline

◆ run()

void run ( bool  allsimd)
inline

Field Documentation

◆ F

Field F
protected

◆ m

const size_t m
protected

◆ n

const size_t n
protected

◆ iters

const size_t iters
protected

◆ inplace

const bool inplace
protected

The documentation for this class was generated from the following file: