35 std::shared_ptr<cl::Context> context;
36 std::shared_ptr<cl::CommandQueue> queue;
37 std::vector<cl::Event> events;
47 static std::unique_ptr<openclPreconditioner<Scalar, block_size>> create(PreconditionerType type,
int verbosity,
bool opencl_ilu_parallel);
50 virtual void setOpencl(std::shared_ptr<cl::Context>& context, std::shared_ptr<cl::CommandQueue>& queue);
53 virtual void apply(
const cl::Buffer& y, cl::Buffer& x) = 0;