This class implements a Blocked ILU0 preconditioner The decomposition is done on GPU, using exact decomposition, or ChowPatel decomposition The preconditioner is applied via two exact triangular solves.
More...
|
| BILU0 (bool opencl_ilu_parallel, int verbosity) |
|
bool | analyze_matrix (BlockedMatrix *mat) override |
|
bool | analyze_matrix (BlockedMatrix *mat, BlockedMatrix *jacMat) override |
|
bool | create_preconditioner (BlockedMatrix *mat) override |
|
bool | create_preconditioner (BlockedMatrix *mat, BlockedMatrix *jacMat) override |
|
void | apply (const cl::Buffer &y, cl::Buffer &x) override |
|
std::tuple< std::vector< int >, std::vector< int >, std::vector< int > > | get_preconditioner_structure () |
|
std::pair< cl::Buffer, cl::Buffer > | get_preconditioner_data () |
|
virtual void | setOpencl (std::shared_ptr< cl::Context > &context, std::shared_ptr< cl::CommandQueue > &queue) |
|
virtual void | apply (const cl::Buffer &y, cl::Buffer &x)=0 |
|
virtual bool | analyze_matrix (BlockedMatrix *mat)=0 |
|
virtual bool | analyze_matrix (BlockedMatrix *mat, BlockedMatrix *jacMat) |
|
virtual bool | create_preconditioner (BlockedMatrix *mat)=0 |
|
virtual bool | create_preconditioner (BlockedMatrix *mat, BlockedMatrix *jacMat) |
|
template<unsigned int block_size>
class Opm::Accelerator::BILU0< block_size >
This class implements a Blocked ILU0 preconditioner The decomposition is done on GPU, using exact decomposition, or ChowPatel decomposition The preconditioner is applied via two exact triangular solves.