Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Making iterative solvers resumable #291

Open
wsshin opened this issue Feb 22, 2021 · 2 comments
Open

Making iterative solvers resumable #291

wsshin opened this issue Feb 22, 2021 · 2 comments

Comments

@wsshin
Copy link

wsshin commented Feb 22, 2021

There are cases where iterative solvers finish prematurely by hitting maxiter, before the convergence criterion ‖rₙ‖ = ‖b - A xₙ‖ ≤ tol is met. In that case, it is useful to have the capability to resume the solvers from the point they finished.

Resuming iterative solvers requires not only the last approximate solution xₙ, but also other state variables. For example in CG, these state variables are the last residual vector rₙ and the last search direction vector pₙ. Luckily, these state variables are already stored in CGStateVariables, but currently the code is not written to resume the CG algorithm from the state stored in the passed statevars::CGStateVariables.

I have implemented the resumability in cg.jl and it works as expected. Before posting a PR for this new capability, I would like to have feedbacks from other users as to whether the resumability would be a useful feature that the community would welcome. Also, I wonder if it would make sense to implement the resumability in as many iterative solvers as possible.

@wsshin
Copy link
Author

wsshin commented Apr 12, 2021

Any opinions from anyone?

@jagot
Copy link

jagot commented Jun 17, 2021

See also #276

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants