1 #ifndef PARALUTION_MIXED_PRECISION_HPP_
2 #define PARALUTION_MIXED_PRECISION_HPP_
8 template <
class OperatorTypeH,
class VectorTypeH,
typename ValueTypeH,
9 class OperatorTypeL,
class VectorTypeL,
typename ValueTypeL>
17 virtual void Print(
void)
const;
21 virtual void Build(
void);
22 virtual void Clear(
void);
56 #endif // PARALUTION_MIXED_PRECISION_HPP_
virtual void PrintStart_(void) const
Print starting msg of the solver.
Definition: mixed_precision.cpp:77
void Set(Solver< OperatorTypeL, VectorTypeL, ValueTypeL > &Solver_L)
Definition: mixed_precision.cpp:44
VectorTypeH * x_h_
Definition: mixed_precision.hpp:44
virtual ~MixedPrecisionDC()
Definition: mixed_precision.cpp:32
Base class for all linear (iterative) solvers.
Definition: solver.hpp:94
virtual void Clear(void)
Clear (free all local data) the solver.
Definition: mixed_precision.cpp:173
VectorTypeH d_h_
Definition: mixed_precision.hpp:46
virtual void MoveToHostLocalData_(void)
Move all local data to the host.
Definition: mixed_precision.cpp:207
virtual void Print(void) const
Print information about the solver.
Definition: mixed_precision.cpp:57
VectorTypeL d_l_
Definition: mixed_precision.hpp:45
virtual void SolvePrecond_(const VectorTypeH &rhs, VectorTypeH *x)
Preconditioned solution procedure.
Definition: mixed_precision.cpp:311
Solver< OperatorTypeL, VectorTypeL, ValueTypeL > * Solver_L_
Definition: mixed_precision.hpp:39
VectorTypeL r_l_
Definition: mixed_precision.hpp:42
Definition: mixed_precision.hpp:10
virtual void Build(void)
Build the solver (data allocation, structure computation, numerical computation)
Definition: mixed_precision.cpp:99
virtual void SolveNonPrecond_(const VectorTypeH &rhs, VectorTypeH *x)
Non-preconditioner solution procedure.
Definition: mixed_precision.cpp:233
Definition: backend_manager.cpp:43
MixedPrecisionDC()
Definition: mixed_precision.cpp:19
const IndexType const IndexType const IndexType const ValueType const ValueType const ValueType * x
Definition: cuda_kernels_coo.hpp:91
virtual void MoveToAcceleratorLocalData_(void)
Move all local data to the accelerator.
Definition: mixed_precision.cpp:220
virtual void PrintEnd_(void) const
Print ending msg of the solver.
Definition: mixed_precision.cpp:90
VectorTypeH r_h_
Definition: mixed_precision.hpp:41
OperatorTypeL * op_l_
Definition: mixed_precision.hpp:49
const OperatorTypeH * op_h_
Definition: mixed_precision.hpp:48