5#ifndef GKO_PUBLIC_CORE_LOG_BATCH_LOGGER_HPP_
6#define GKO_PUBLIC_CORE_LOG_BATCH_LOGGER_HPP_
11#include <ginkgo/core/base/batch_multi_vector.hpp>
12#include <ginkgo/core/base/types.hpp>
13#include <ginkgo/core/log/logger.hpp>
32template <
typename ValueType>
33struct log_data final {
35 using index_type = int;
37 log_data(std::shared_ptr<const Executor> exec,
size_type num_batch_items);
39 log_data(std::shared_ptr<const Executor> exec,
size_type num_batch_items,
69template <
typename ValueType = default_precision>
73 using index_type = int;
74 using mask_type = gko::log::Logger::mask_type;
76 void on_batch_solver_completed(
92 static std::unique_ptr<BatchConvergence>
create(
93 const mask_type& enabled_events =
94 gko::log::Logger::batch_solver_completed_mask)
96 return std::unique_ptr<BatchConvergence>(
97 new BatchConvergence(enabled_events));
105 return iteration_count_;
113 return residual_norm_;
118 gko::log::Logger::batch_solver_completed_mask)
119 :
gko::
log::Logger(enabled_events)
An array is a container which encapsulates fixed-sized arrays, stored on the Executor tied to the arr...
Definition array.hpp:166
Logs the final residuals and iteration counts for a batch solver.
Definition batch_logger.hpp:70
const array< index_type > & get_num_iterations() const noexcept
Definition batch_logger.hpp:103
const array< real_type > & get_residual_norm() const noexcept
Definition batch_logger.hpp:111
static std::unique_ptr< BatchConvergence > create(const mask_type &enabled_events=gko::log::Logger::batch_solver_completed_mask)
Creates a convergence logger.
Definition batch_logger.hpp:92
The logger namespace .
Definition batch_logger.hpp:23
The Ginkgo namespace.
Definition abstract_factory.hpp:20
typename detail::remove_complex_s< T >::type remove_complex
Obtain the type which removed the complex of complex/scalar type or the template parameter of class b...
Definition math.hpp:260
std::size_t size_type
Integral type used for allocation quantities.
Definition types.hpp:89