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

Off-by-one in WallTimeEstimate #2992

Open
Sbozzolo opened this issue May 8, 2024 · 3 comments
Open

Off-by-one in WallTimeEstimate #2992

Sbozzolo opened this issue May 8, 2024 · 3 comments

Comments

@Sbozzolo
Copy link
Member

Sbozzolo commented May 8, 2024

This is a tiny detail, but it looks like that the WallTimeEstimate is off by one step:

julia> import ClimaAtmos as CA
julia> import SciMLBase
julia> simulation = CA.get_simulation(CA.AtmosConfig())
julia> SciMLBase.step!(simulation.integrator)
# nothing is printed

julia> SciMLBase.step!(simulation.integrator);
[ Info: Progress: Completed first step
@charleskawczynski
Copy link
Member

IIRC, timings aren't reported (or even computed) for the very first step due to compilation (in order to disallow compilation time from contaminating timings).

@Sbozzolo
Copy link
Member Author

From a user-experience point of view, the message is a little confusing: it says that we completed the first step even when we completed the second.

@charleskawczynski
Copy link
Member

Agreed. Frankly, it's hard to design a progress-reporting function in the form of a callback, that doesn't have footguns and can potentially result in misreported numbers. I think a better solution would be to (re-)implement this in the timestepper, as we'll have proper access to what we need in scope. Also, then other repos can use it. I'll open an issue there.

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