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

Improve time-stepping with bug fixes and performance enhancements #4583

Closed
2 of 8 tasks
geoffrey4444 opened this issue Jan 12, 2023 · 6 comments · Fixed by #6043
Closed
2 of 8 tasks

Improve time-stepping with bug fixes and performance enhancements #4583

geoffrey4444 opened this issue Jan 12, 2023 · 6 comments · Fixed by #6043

Comments

@geoffrey4444
Copy link
Contributor

geoffrey4444 commented Jan 12, 2023

Feature request:

  • Fix dense output Dense output with local time stepping gives incorrect results #4399
  • Support predictor-corrector Adams method to increase efficiency. If @nilsdeppe remembers correctly, @wthrowe said this would reduce cost per fix forward progress by about 3 and bring the LMM methods to roughly the same efficiency as Dormand-Prince.
  • Reduce memory allocations and copies in time stepping code where possible, just to generally reduce the amount of memory allocations we do and how often we do big memcpy type operations. @nilsdeppe doesn't have anything specific in mind here.

Component:

  • Code
  • Documentation
  • Build system
  • Continuous integration

Desired feature:

  • Improve the time stepping infrastructure to improve performance and to fix bugs.

Detailed discussion:

One issue resolved by these improvements is #4399 .

@wthrowe
Copy link
Member

wthrowe commented Jan 17, 2023

Is there something in particular you're asking me to do here?

@wthrowe
Copy link
Member

wthrowe commented Jan 24, 2023

Closing because I don't know what you want me to do.

@wthrowe wthrowe closed this as not planned Won't fix, can't repro, duplicate, stale Jan 24, 2023
@geoffrey4444 geoffrey4444 reopened this Jan 25, 2023
@geoffrey4444
Copy link
Contributor Author

Sorry for the delay in my reply @wthrowe ... this issue simply refers to the work you were already doing to improve the time stepper, including to fix the dense output bug #4399. If this work is already done, I'll close the issue but would like to link the relevant PRs (I looked at your recent PRs but couldn't figure out if any applied to this).

@nilsdeppe
Copy link
Member

The other big thing is the predictor-corrector stepper to hopefully speed up the code. I think last time this came up you said it'll come post-IMEX, we mostly just want to track that this is something that could help a lot.

@wthrowe
Copy link
Member

wthrowe commented Jan 25, 2023

OK, predictor-corrector is a reasonable request.

All of #4399, IMEX, and PC require the history rewrite, which is done except that I'm trying to factor out one of the internal data structures for more general use. (And that git is having issues with the rebase, which I have to work around somehow.)

IMEX and PC are otherwise independent, I think, but IMEX is higher priority because someone is already trying to use it.

@nilsdeppe
Copy link
Member

Sounds good! I also think IMEX is higher priority than PC. I'll update the original comment to actually list the things we want here :)

@geoffrey4444 geoffrey4444 self-assigned this Feb 22, 2023
@knelli2 knelli2 linked a pull request Sep 7, 2024 that will close this issue
3 tasks
@knelli2 knelli2 closed this as completed Sep 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants