Skip to content

Add verbose for collocation methods #290

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

ErikQQY
Copy link
Member

@ErikQQY ErikQQY commented Mar 4, 2025

Fix: #284

Copy link
Contributor

github-actions bot commented Mar 4, 2025

Benchmark Results

master a2a7dad... master / a2a7dad...
Simple Pendulum/IIP/BoundaryValueDiffEqMIRK.MIRK2() 7.41 ± 0.2 ms 7.38 ± 0.25 ms 1
Simple Pendulum/IIP/BoundaryValueDiffEqMIRK.MIRK3() 2.79 ± 0.15 ms 2.79 ± 0.19 ms 0.999
Simple Pendulum/IIP/BoundaryValueDiffEqMIRK.MIRK4() 0.973 ± 0.078 ms 0.981 ± 0.085 ms 0.992
Simple Pendulum/IIP/BoundaryValueDiffEqMIRK.MIRK5() 2.55 ± 0.44 ms 2.57 ± 0.49 ms 0.992
Simple Pendulum/IIP/BoundaryValueDiffEqMIRK.MIRK6() 1.16 ± 0.21 ms 1.16 ± 0.21 ms 0.999
Simple Pendulum/IIP/MultipleShooting(10, Tsit5; grid_coarsening = false) 1.84 ± 0.69 ms 1.83 ± 0.67 ms 1.01
Simple Pendulum/IIP/MultipleShooting(10, Tsit5; grid_coarsening = true) 3.08 ± 1 ms 3.08 ± 1 ms 1
Simple Pendulum/IIP/MultipleShooting(100, Tsit5; grid_coarsening = false) 0.0681 ± 0.021 s 0.0684 ± 0.024 s 0.996
Simple Pendulum/IIP/MultipleShooting(100, Tsit5; grid_coarsening = true) 0.0819 ± 0.024 s 0.0814 ± 0.023 s 1.01
Simple Pendulum/IIP/Shooting(Tsit5()) 0.262 ± 0.083 ms 0.257 ± 0.089 ms 1.02
Simple Pendulum/OOP/BoundaryValueDiffEqMIRK.MIRK2() 8.65 ± 0.27 ms 8.65 ± 0.29 ms 1
Simple Pendulum/OOP/BoundaryValueDiffEqMIRK.MIRK3() 3.22 ± 0.16 ms 3.2 ± 0.15 ms 1.01
Simple Pendulum/OOP/BoundaryValueDiffEqMIRK.MIRK4() 1.13 ± 0.089 ms 1.12 ± 0.083 ms 1.01
Simple Pendulum/OOP/BoundaryValueDiffEqMIRK.MIRK5() 2.93 ± 0.53 ms 2.93 ± 0.35 ms 1
Simple Pendulum/OOP/BoundaryValueDiffEqMIRK.MIRK6() 1.36 ± 0.13 ms 1.36 ± 0.14 ms 0.999
Simple Pendulum/OOP/MultipleShooting(10, Tsit5; grid_coarsening = false) 3.39 ± 2.9 ms 3.4 ± 3 ms 0.997
Simple Pendulum/OOP/MultipleShooting(10, Tsit5; grid_coarsening = true) 5.75 ± 5.1 ms 5.68 ± 5.3 ms 1.01
Simple Pendulum/OOP/MultipleShooting(100, Tsit5; grid_coarsening = false) 0.118 ± 0.022 s 0.116 ± 0.022 s 1.01
Simple Pendulum/OOP/MultipleShooting(100, Tsit5; grid_coarsening = true) 0.144 ± 0.023 s 0.142 ± 0.027 s 1.02
Simple Pendulum/OOP/Shooting(Tsit5()) 0.638 ± 0.042 ms 0.634 ± 0.053 ms 1.01
time_to_load 5.11 ± 0.042 s 5.09 ± 0.035 s 1

Benchmark Plots

A plot of the benchmark results have been uploaded as an artifact to the workflow run for this PR.
Go to "Actions"->"Benchmark a pull request"->[the most recent run]->"Artifacts" (at the bottom).

@ErikQQY ErikQQY closed this Mar 4, 2025
@ErikQQY ErikQQY reopened this Mar 4, 2025
@ErikQQY ErikQQY requested a review from ChrisRackauckas March 7, 2025 08:13
@ChrisRackauckas
Copy link
Member

true isn't quite good enough for what we need. We need more verbosity levels. What we need is in SciMLBase and AbstractVerbosity with BVPVerbosity being an instantiation struct, where BVPVerbosity(true) is everything, BVPVerbosity(false) is nothing, BVPVerbosity(nothing) is the default which has some things true and other things false. Then we should add printing to all sorts of things, and make each one a togglable verbosity switch.

@jClugstor can you write this up to SciMLBase? I think I described this already but don't know where the message went.

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

Successfully merging this pull request may close these issues.

Is BoundaryValueDiffEqFIRK compatible with the Integrator Interface, or some other monitoring and diagnostic tool?
2 participants