iterative-solver 0.0
 
Loading...
Searching...
No Matches
molpro::linalg::array::util::DistrChunks< AL, T > Struct Template Reference

The pointers to, and on completion the write-back of, chunks of distributed arrays yy for gemm_buffered() More...

#include <gemm.h>

Detailed Description

template<class AL, class T = typename array::mapped_or_value_type_t<AL>>
struct molpro::linalg::array::util::DistrChunks< AL, T >

The pointers to, and on completion the write-back of, chunks of distributed arrays yy for gemm_buffered()

Public Member Functions

 DistrChunks (const VecRef< AL > &yy, gemm_type type)
 
std::vector< T * > pointers (size_t g, size_t n)
 
void done (size_t g, size_t n)
 
std::function< std::vector< T * >(size_t, size_t)> pointers_function ()
 
std::function< void(size_t, size_t)> done_function ()
 

Public Attributes

const VecRef< AL > & yy
 
const gemm_type type
 
size_t lo = 0
 
std::vector< T * > bases
 
std::vector< T > chunk
 

Constructor & Destructor Documentation

◆ DistrChunks()

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
molpro::linalg::array::util::DistrChunks< AL, T >::DistrChunks ( const VecRef< AL > &  yy,
gemm_type  type 
)
inline

Member Function Documentation

◆ done()

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
void molpro::linalg::array::util::DistrChunks< AL, T >::done ( size_t  g,
size_t  n 
)
inline

◆ done_function()

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
std::function< void(size_t, size_t)> molpro::linalg::array::util::DistrChunks< AL, T >::done_function ( )
inline

◆ pointers()

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
std::vector< T * > molpro::linalg::array::util::DistrChunks< AL, T >::pointers ( size_t  g,
size_t  n 
)
inline

◆ pointers_function()

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
std::function< std::vector< T * >(size_t, size_t)> molpro::linalg::array::util::DistrChunks< AL, T >::pointers_function ( )
inline

Member Data Documentation

◆ bases

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
std::vector<T*> molpro::linalg::array::util::DistrChunks< AL, T >::bases

◆ chunk

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
std::vector<T> molpro::linalg::array::util::DistrChunks< AL, T >::chunk

◆ lo

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
size_t molpro::linalg::array::util::DistrChunks< AL, T >::lo = 0

◆ type

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
const gemm_type molpro::linalg::array::util::DistrChunks< AL, T >::type

◆ yy

template<class AL , class T = typename array::mapped_or_value_type_t<AL>>
const VecRef<AL>& molpro::linalg::array::util::DistrChunks< AL, T >::yy