|
| automatical () |
| Creates an automatical strategy.
|
|
| automatical (std::shared_ptr< const CudaExecutor > exec) |
| Creates an automatical strategy with CUDA executor.
|
|
| automatical (std::shared_ptr< const HipExecutor > exec) |
| Creates an automatical strategy with HIP executor.
|
|
| automatical (std::shared_ptr< const DpcppExecutor > exec) |
| Creates an automatical strategy with Dpcpp executor.
|
|
| automatical (int64_t nwarps, int warp_size=32, bool cuda_strategy=true, std::string strategy_name="none") |
| Creates an automatical strategy with specified parameters.
|
|
void | process (const array< index_type > &mtx_row_ptrs, array< index_type > *mtx_srow) override |
| Computes srow according to row pointers.
|
|
int64_t | clac_size (const int64_t nnz) override |
| Computes the srow size according to the number of nonzeros.
|
|
index_type | get_max_length_per_row () const noexcept |
|
std::shared_ptr< strategy_type > | copy () override |
| Copy a strategy.
|
|
| strategy_type (std::string name) |
| Creates a strategy_type.
|
|
std::string | get_name () |
| Returns the name of strategy.
|
|
|
const index_type | nvidia_row_len_limit = 1024 |
|
const index_type | nvidia_nnz_limit {static_cast<index_type>(1e6)} |
|
const index_type | amd_row_len_limit = 768 |
|
const index_type | amd_nnz_limit {static_cast<index_type>(1e8)} |
|
const index_type | intel_row_len_limit = 25600 |
|
const index_type | intel_nnz_limit {static_cast<index_type>(3e8)} |
|
◆ automatical() [1/5]
template<typename ValueType = default_precision, typename IndexType = int32>
◆ automatical() [2/5]
template<typename ValueType = default_precision, typename IndexType = int32>
Creates an automatical strategy with CUDA executor.
- Parameters
-
References automatical().
◆ automatical() [3/5]
template<typename ValueType = default_precision, typename IndexType = int32>
Creates an automatical strategy with HIP executor.
- Parameters
-
References automatical().
◆ automatical() [4/5]
template<typename ValueType = default_precision, typename IndexType = int32>
Creates an automatical strategy with Dpcpp executor.
- Parameters
-
- Note
- TODO: porting - we hardcode the subgroup size is 32
References automatical().
◆ automatical() [5/5]
template<typename ValueType = default_precision, typename IndexType = int32>
gko::matrix::Csr< ValueType, IndexType >::automatical::automatical |
( |
int64_t | nwarps, |
|
|
int | warp_size = 32, |
|
|
bool | cuda_strategy = true, |
|
|
std::string | strategy_name = "none" ) |
|
inline |
Creates an automatical strategy with specified parameters.
- Parameters
-
nwarps | the number of warps in the executor |
warp_size | the warp size of the executor |
cuda_strategy | whether the cuda_strategy needs to be used. |
- Note
- The warp_size must be the size of full warp. When using this constructor, set_strategy needs to be called with correct parameters which is replaced during the conversion.
References gko::matrix::Csr< ValueType, IndexType >::strategy_type::strategy_type().
◆ clac_size()
template<typename ValueType = default_precision, typename IndexType = int32>
int64_t gko::matrix::Csr< ValueType, IndexType >::automatical::clac_size |
( |
const int64_t | nnz | ) |
|
|
inlineoverridevirtual |
◆ copy()
template<typename ValueType = default_precision, typename IndexType = int32>
◆ process()
template<typename ValueType = default_precision, typename IndexType = int32>
void gko::matrix::Csr< ValueType, IndexType >::automatical::process |
( |
const array< index_type > & | mtx_row_ptrs, |
|
|
array< index_type > * | mtx_srow ) |
|
inlineoverridevirtual |
The documentation for this class was generated from the following file: