batchlas::SyevxInstrumentation< T > Struct Template Reference

Overview

template<typename T>
struct batchlas::SyevxInstrumentation< T >

Optional per-iteration convergence histories recorded by the iterative syevx paths.

Every history span is laid out [iter][batch][eig]. With iteration_stride and batch_stride zero the strides default to batch_size * neigs and neigs. Empty spans and null pointers record nothing. Passed through SyevxParams::instrumentation.

Definition at line 94 of file extensions.hh.

#include <batchlas/blas/extensions.hh>

Types

◆ float_type

template<typename T>
using batchlas::SyevxInstrumentation< T >::float_type = typename base_type<T>::type

Definition at line 95 of file extensions.hh.

Variables

◆ best_residual_history

template<typename T>
Span<float_type> batchlas::SyevxInstrumentation< T >::best_residual_history {}

Best residual norm seen so far, per eigenpair.

Definition at line 97 of file extensions.hh.

◆ current_residual_history

template<typename T>
Span<float_type> batchlas::SyevxInstrumentation< T >::current_residual_history {}

Residual norm of the current iterate (needs store_current_residual).

Definition at line 98 of file extensions.hh.

◆ convergence_rate_history

template<typename T>
Span<float_type> batchlas::SyevxInstrumentation< T >::convergence_rate_history {}

Per-iteration residual reduction (needs store_convergence_rate).

Definition at line 99 of file extensions.hh.

◆ ritz_value_history

template<typename T>
Span<float_type> batchlas::SyevxInstrumentation< T >::ritz_value_history {}

Ritz values per iteration (needs store_ritz_values).

Definition at line 100 of file extensions.hh.

◆ iterations_done

template<typename T>
int32_t* batchlas::SyevxInstrumentation< T >::iterations_done = nullptr

Optional per-batch-item iteration count.

Definition at line 102 of file extensions.hh.

◆ max_iterations

template<typename T>
size_t batchlas::SyevxInstrumentation< T >::max_iterations = 0

Rows the history spans can hold.

Definition at line 104 of file extensions.hh.

◆ store_every

template<typename T>
size_t batchlas::SyevxInstrumentation< T >::store_every = 1

Record every k-th iteration.

Definition at line 105 of file extensions.hh.

◆ iteration_stride

template<typename T>
size_t batchlas::SyevxInstrumentation< T >::iteration_stride = 0

Stride between iterations; 0 means batch_size * neigs.

Definition at line 106 of file extensions.hh.

◆ batch_stride

template<typename T>
size_t batchlas::SyevxInstrumentation< T >::batch_stride = 0

Stride between batch items; 0 means neigs.

Definition at line 107 of file extensions.hh.

◆ store_current_residual

template<typename T>
bool batchlas::SyevxInstrumentation< T >::store_current_residual = false

Record current_residual_history.

Definition at line 109 of file extensions.hh.

◆ store_convergence_rate

template<typename T>
bool batchlas::SyevxInstrumentation< T >::store_convergence_rate = true

Record convergence_rate_history.

Definition at line 110 of file extensions.hh.

◆ store_ritz_values

template<typename T>
bool batchlas::SyevxInstrumentation< T >::store_ritz_values = false

Record ritz_value_history.

Definition at line 111 of file extensions.hh.