TDLS 0.2.0
Tiny Device-callable Linear Solvers
Loading...
Searching...
No Matches
config.hpp
Go to the documentation of this file.
1#ifndef TDLS_SOLVERS_TILED_LUPP_CONFIG_HPP
2#define TDLS_SOLVERS_TILED_LUPP_CONFIG_HPP
3
4
5
30
31
32
33#include <limits>
34#include <type_traits>
35
36#include <tdls/core/macros.hpp>
39
40
41
42namespace tdls {
43
44
45
49template<typename T>
51
59 int tile_size = 3;
60
62 Schedule schedule = Schedule::RightLooking;
63
74 StructuralReal<T> oot_threshold = std::is_same_v<T, float> ? T(1e-4f) : T(1e-10);
75
88 StructuralReal<T> singular_floor = std::numeric_limits<T>::min();
89
99
108 bool unroll_inner = true;
109
118 MatrixLayout layout = MatrixLayout::RowMajor;
119};
120
121
122
123} // namespace tdls
124
125
126
127#endif // TDLS_SOLVERS_TILED_LUPP_CONFIG_HPP
Toolchain detection and portability macros.
Shared vocabulary and conventions of the solver families.
Schedule
Elimination schedule of a factorization.
Definition options.hpp:37
MatrixLayout
Memory layout of a dense matrix.
Definition options.hpp:45
Floating-point value stored as an odd integer mantissa and a power-of-two exponent,...
Definition structural_real.hpp:68
Compile-time knobs of the TiledLUpp solvers, carrying the tuned defaults.
Definition config.hpp:50
Schedule schedule
Elimination schedule of the tiled factorization, see Schedule.
Definition config.hpp:62
bool unroll_inner
Definition config.hpp:108
bool oot_first_acceptable
Definition config.hpp:98
MatrixLayout layout
Definition config.hpp:118
StructuralReal< T > oot_threshold
Definition config.hpp:74
StructuralReal< T > singular_floor
Definition config.hpp:88
int tile_size
Definition config.hpp:59
Exact floating-point value admissible as a template argument.