minimal_storage_limit Class Reference

minimal_storage_limit Class Reference#

Reference API: gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit Class Reference
Reference API
gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit Class Reference

#include <ginkgo/core/matrix/hybrid.hpp>

Inheritance diagram for gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit:
[legend]

Public Member Functions

 minimal_storage_limit ()
 
size_type compute_ell_num_stored_elements_per_row (array< size_type > *row_nnz) const override
 
auto get_percentage () const
 
- Public Member Functions inherited from gko::matrix::Hybrid< ValueType, IndexType >::strategy_type
 strategy_type ()
 
void compute_hybrid_config (const array< size_type > &row_nnz, size_type *ell_num_stored_elements_per_row, size_type *coo_nnz)
 
size_type get_ell_num_stored_elements_per_row () const noexcept
 
size_type get_coo_nnz () const noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from gko::matrix::Hybrid< ValueType, IndexType >::strategy_type
size_type compute_coo_nnz (const array< size_type > &row_nnz) const
 

Detailed Description

template<typename ValueType = default_precision, typename IndexType = int32>
class gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit

minimal_storage_limit is a strategy_type which decides the number of stored elements per row of the ell part. It is determined by the size of ValueType and IndexType, the storage is the minimum among all partition.

Constructor & Destructor Documentation

◆ minimal_storage_limit()

template<typename ValueType = default_precision, typename IndexType = int32>
gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit::minimal_storage_limit ( )
inline

Creates a minimal_storage_limit strategy.

Member Function Documentation

◆ compute_ell_num_stored_elements_per_row()

template<typename ValueType = default_precision, typename IndexType = int32>
size_type gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit::compute_ell_num_stored_elements_per_row ( array< size_type > *  row_nnz) const
inlineoverridevirtual

Computes the number of stored elements per row of the ell part.

Parameters
row_nnzthe number of nonzeros of each row
Returns
the number of stored elements per row of the ell part

Implements gko::matrix::Hybrid< ValueType, IndexType >::strategy_type.

References gko::matrix::Hybrid< ValueType, IndexType >::imbalance_limit::compute_ell_num_stored_elements_per_row().

◆ get_percentage()

template<typename ValueType = default_precision, typename IndexType = int32>
auto gko::matrix::Hybrid< ValueType, IndexType >::minimal_storage_limit::get_percentage ( ) const
inline

Get the percent setting

Returns
percent

References gko::matrix::Hybrid< ValueType, IndexType >::imbalance_limit::get_percentage().


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