size_triple_t Struct Reference

Public Member Functions

 size_triple_t ()
 
 size_triple_t (size_t _k, size_t _m, size_t _n)
 
 size_triple_t (const size_triple_t &o)
 
 size_triple_t (uint16_t compact)
 
bool is_cubic () const
 
 size_triple_t ()
 
 size_triple_t (size_t _k, size_t _m, size_t _n)
 
 size_triple_t (const size_triple_t &o)
 
 size_triple_t (uint16_t compact)
 

Public Attributes

uint16_t k
 
uint16_t m
 
uint16_t n
 
size_t k
 
size_t m
 
size_t n
 

Constructor & Destructor Documentation

◆ size_triple_t() [1/8]

size_triple_t::size_triple_t ( )
inline
47 : k(0), m(0), n(0) {}
uint16_t k
Definition: analyze-blocking-sizes.cpp:46
uint16_t m
Definition: analyze-blocking-sizes.cpp:46
uint16_t n
Definition: analyze-blocking-sizes.cpp:46

◆ size_triple_t() [2/8]

size_triple_t::size_triple_t ( size_t  _k,
size_t  _m,
size_t  _n 
)
inline
48 : k(_k), m(_m), n(_n) {}

◆ size_triple_t() [3/8]

size_triple_t::size_triple_t ( const size_triple_t o)
inline
49 : k(o.k), m(o.m), n(o.n) {}

◆ size_triple_t() [4/8]

size_triple_t::size_triple_t ( uint16_t  compact)
inline
50  {
51  k = 1 << ((compact & 0xf00) >> 8);
52  m = 1 << ((compact & 0x0f0) >> 4);
53  n = 1 << ((compact & 0x00f) >> 0);
54  }

References k, m, and n.

◆ size_triple_t() [5/8]

size_triple_t::size_triple_t ( )
inline
64 : k(0), m(0), n(0) {}

◆ size_triple_t() [6/8]

size_triple_t::size_triple_t ( size_t  _k,
size_t  _m,
size_t  _n 
)
inline
65 : k(_k), m(_m), n(_n) {}

◆ size_triple_t() [7/8]

size_triple_t::size_triple_t ( const size_triple_t o)
inline
66 : k(o.k), m(o.m), n(o.n) {}

◆ size_triple_t() [8/8]

size_triple_t::size_triple_t ( uint16_t  compact)
inline
67  {
68  k = 1 << ((compact & 0xf00) >> 8);
69  m = 1 << ((compact & 0x0f0) >> 4);
70  n = 1 << ((compact & 0x00f) >> 0);
71  }

References k, m, and n.

Member Function Documentation

◆ is_cubic()

bool size_triple_t::is_cubic ( ) const
inline
55 { return k == m && m == n; }

References k, m, and n.

Referenced by dump_table_for_subset().

Member Data Documentation

◆ k [1/2]

uint16_t size_triple_t::k

◆ k [2/2]

size_t size_triple_t::k

◆ m [1/2]

uint16_t size_triple_t::m

Referenced by benchmark_t::run().

◆ m [2/2]

size_t size_triple_t::m

◆ n [1/2]

uint16_t size_triple_t::n

Referenced by benchmark_t::run().

◆ n [2/2]

size_t size_triple_t::n

The documentation for this struct was generated from the following files: