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

Minimize the amount of initial imports #94

Closed
3 tasks
alecandido opened this issue Feb 11, 2022 · 3 comments · Fixed by #108
Closed
3 tasks

Minimize the amount of initial imports #94

alecandido opened this issue Feb 11, 2022 · 3 comments · Fixed by #108
Labels
refactor Refactor code

Comments

@alecandido
Copy link
Member

Motivation: As soon as you install eko, you'll need to wait a while on first import. This is needed for the eko application, but unnecessary and completely counter-intuitive for the eko library.

At the moment importing eko means importing eko.runner, and also eko.output.

Then, as it makes sense, importing runner means importing everything (see dependency graph).

How to improve

From my point of view:

  • there is no way to improve on eko.runner: it's quite intuitive that uses all (or almost all) of the library
  • but I'd say that we should not wait on the compilation of all the anomalous dimensions and so on, if you only need interpolation or strong coupling (or even masses, basis rotation, ...)

In particular, having to wait every time you install anew it's already a bit unpleasant in yadism, but much more in banana or runcards.

In practice

I'd say we just need to:

  • shuffle back run_dglap inside eko.runner
  • at this point we can keep the main __init__.py just for the version (no need for a separate module)
  • update related docs
@felixhekhorn felixhekhorn added the refactor Refactor code label Feb 11, 2022
@felixhekhorn felixhekhorn linked a pull request Mar 21, 2022 that will close this issue
@alecandido
Copy link
Member Author

I believe we don't need this any longer, because of:

  • mainly the numba rearrangement
  • and the forthcoming runner-less structure (in which runner will be optional, and thus by default importing much less)

Can we close this? @giacomomagni @felixhekhorn

@giacomomagni
Copy link
Collaborator

okay, fine

@felixhekhorn
Copy link
Contributor

Agreed

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

Successfully merging a pull request may close this issue.

3 participants