FflasFfpack
Test< 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

 Test (size_t mm, size_t nn)
 
template<typename Simd = NoSimd<Elt>, enable_if_t< is_same_element< Simd >::value > * = nullptr>
bool test_ftranspose (size_t m, size_t n, Elt_ptr A, size_t lda, Elt_ptr B, size_t ldb)
 
template<typename Simd = NoSimd<Elt>, enable_if_t< is_same_element< Simd >::value > * = nullptr>
bool doTests ()
 
template<typename _E = Elt, enable_if_t< is_same< _E, Elt >::value > * = nullptr, enable_if_no_simd_t< _E > * = nullptr>
bool run ()
 

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
 
size_t _mm
 
size_t _nn
 

Member Typedef Documentation

◆ Field

template<typename Elt >
using Field = Modular<Elt>

◆ Elt_ptr

template<typename Elt >
using Elt_ptr = typename Field::Element_ptr

◆ Residu

template<typename Elt >
using Residu = typename Field::Residu_t

◆ enable_if_t

template<typename Elt >
template<bool B, class T = void>
using enable_if_t = typename std::enable_if<B, T>::type

◆ is_same_element

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

◆ enable_if_no_simd_t

template<typename Elt >
template<typename E >
using enable_if_no_simd_t = enable_if_t<Simd<E>::vect_size == 1>

◆ enable_if_simd128_t

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

◆ enable_if_simd256_t

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

◆ enable_if_simd512_t

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

Constructor & Destructor Documentation

◆ Test()

template<typename Elt >
Test ( size_t mm,
size_t nn )
inline

Member Function Documentation

◆ cardinality() [1/2]

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

◆ cardinality() [2/2]

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

◆ test_ftranspose()

template<typename Elt >
template<typename Simd = NoSimd<Elt>, enable_if_t< is_same_element< Simd >::value > * = nullptr>
bool test_ftranspose ( size_t m,
size_t n,
Elt_ptr A,
size_t lda,
Elt_ptr B,
size_t ldb )
inline

◆ doTests()

template<typename Elt >
template<typename Simd = NoSimd<Elt>, enable_if_t< is_same_element< Simd >::value > * = nullptr>
bool doTests ( )
inline

◆ run()

template<typename Elt >
template<typename _E = Elt, enable_if_t< is_same< _E, Elt >::value > * = nullptr, enable_if_no_simd_t< _E > * = nullptr>
bool run ( )
inline

Field Documentation

◆ F

template<typename Elt >
Field F
protected

◆ _mm

template<typename Elt >
size_t _mm
protected

◆ _nn

template<typename Elt >
size_t _nn
protected

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