19 #ifndef OPM_ILU0_KERNELS_HPP 20 #define OPM_ILU0_KERNELS_HPP 23 #include <opm/simulators/linalg/gpuistl/detail/kernel_enums.hpp> 41 template <
class T,
int blocksize>
42 void solveUpperLevelSet(T* reorderedMat,
67 template <
class T,
int blocksize>
68 void solveLowerLevelSet(T* reorderedMat,
95 template <
int blocksize,
class LinearSolverScalar,
class MatrixScalar,
class DiagonalScalar>
96 void solveUpperLevelSetSplit(MatrixScalar* reorderedMat,
102 const DiagonalScalar* dInv,
103 LinearSolverScalar* v,
105 cudaStream_t stream);
124 template <
int blocksize,
class LinearSolverScalar,
class MatrixScalar>
125 void solveLowerLevelSetSplit(MatrixScalar* reorderedLowerMat,
128 int* indexConversion,
131 const LinearSolverScalar* d,
132 LinearSolverScalar* v,
134 cudaStream_t stream);
152 template <
class T,
int blocksize>
153 void LUFactorization(T* reorderedMat,
156 int* naturalToReordered,
157 int* reorderedToNatual,
158 size_t rowsInLevelSet,
160 int threadBlockSize);
184 template <
int blocksize,
class InputScalar,
class OutputScalar, MatrixStorageMPScheme mixedPrecisionScheme>
185 void LUFactorizationSplit(InputScalar* srcReorderedLowerMat,
186 int* lowerRowIndices,
187 int* lowerColIndices,
188 InputScalar* srcReorderedUpperMat,
189 int* upperRowIndices,
190 int* upperColIndices,
191 InputScalar* srcDiagonal,
192 OutputScalar* dstReorderedLowerMat,
193 OutputScalar* dstReorderedUpperMat,
194 OutputScalar* dstDiagonal,
195 int* reorderedToNatural,
196 int* naturalToReordered,
199 int threadBlockSize);
Definition: ILU0Kernels.hpp:24