TDLS 0.4.0
Tiny Device-callable Linear Solvers
Loading...
Searching...
No Matches
config.hpp
Go to the documentation of this file.
1#ifndef TDLS_SOLVERS_COOPERATIVE_LUPP_CONFIG_HPP
2#define TDLS_SOLVERS_COOPERATIVE_LUPP_CONFIG_HPP
3
4
5
30
31
32
33#include <limits>
34
35#include <tdls/core/macros.hpp>
38
39
40
41namespace tdls {
42
43
44
48template<typename T>
50
69
90 RowInterchange row_interchange = RowInterchange::Logical;
91
111
118 StructuralReal<T> singular_floor = std::numeric_limits<T>::min();
119
137 bool unroll_loops = true;
138
154 MatrixLayout layout = MatrixLayout::RowMajor;
155};
156
157
158
159} // namespace tdls
160
161
162
163#endif // TDLS_SOLVERS_COOPERATIVE_LUPP_CONFIG_HPP
Toolchain detection and portability macros.
Shared vocabulary and conventions of the solver families.
RowInterchange
Row interchanges of a factorization with partial pivoting.
Definition options.hpp:59
MatrixLayout
Memory layout of a dense matrix.
Definition options.hpp:213
Compile-time knobs of the CooperativeLUpp solvers, carrying the defaults.
Definition config.hpp:49
MatrixLayout layout
Definition config.hpp:154
bool unroll_loops
Definition config.hpp:137
StructuralReal< T > relative_pivot_threshold
Definition config.hpp:110
int rows_per_thread
Definition config.hpp:68
RowInterchange row_interchange
Definition config.hpp:90
StructuralReal< T > singular_floor
Definition config.hpp:118
Floating-point value stored as an odd integer mantissa and a power-of-two exponent,...
Definition structural_real.hpp:68
Exact floating-point value admissible as a template argument.