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 slow startup with large reaction networks #97

Merged
merged 1 commit into from
Aug 7, 2023

Commits on Aug 7, 2023

  1. Improve slow startup with large reaction networks

    Use a container DispatchMethodLists with untyped fields instead of a NamedTuple for
    dispatch lists returned by create_dispatch_methodlists(), so the
    typed Tuple of methods is only dispatched on at the final call to
    dispatch_methodlist() (a generated function)
    
    This seems to improve the time for the first call to 'do_deriv',
    so the startup time for generated_dispatch = true is now similar to
    generated_dispatch = false. Presumably it was passing around large
    typed Tuples or NamedTuples that was causing problems, not the
    @generated dispatch_methodlist()
    NB: there is now a dynamic dispatch in do_deriv (one for each of
    list_initialize, list_do).
    sjdaines committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    de15324 View commit details
    Browse the repository at this point in the history