GpuDILU.hpp
Go to the documentation of this file.
30#include <opm/simulators/linalg/gpuistl/detail/preconditionerKernels/ILU_variants_helper_kernels.hpp>
157 GpuBuffer<size_t> m_gpuLevelSets; // TODO: make this an optional to not spend time on the copy if not needed
Interface class adding the update() method to the preconditioner interface. Definition: PreconditionerWithUpdate.hpp:32 void tuneThreadBlockSizes() function that will experimentally tune the thread block sizes of the important cuda kernels GpuDILU(const GPUMatrix &gpuMatrix, const CPUMatrixT &cpuMatrix, bool splitMatrix, bool tuneKernels, int mixedPrecisionScheme, bool reorder) Constructor. virtual bool hasPerfectUpdate() const override Definition: GpuDILU.hpp:119 Y range_type The range type of the preconditioner. Definition: GpuDILU.hpp:58 static constexpr bool shouldCallPre() Definition: GpuDILU.hpp:108 Dune::SolverCategory::Category category() const override Category of the preconditioner (see SolverCategory::Category) void computeDiagonal(int factorizationThreadBlockSize) Compute the diagonal of the DILU, and update the data of the reordered matrix. static constexpr bool shouldCallPost() Definition: GpuDILU.hpp:114 X domain_type The domain type of the preconditioner. Definition: GpuDILU.hpp:56 void reorderAndSplitMatrix(int moveThreadBlockSize) perform matrix splitting and reordering typename X::field_type field_type The field type of the preconditioner. Definition: GpuDILU.hpp:60 Definition: gpu_type_detection.hpp:30 Definition: AmgxInterface.hpp:38 |