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

Relatively high package load time #160

Closed
jishnub opened this issue Dec 30, 2021 · 2 comments
Closed

Relatively high package load time #160

jishnub opened this issue Dec 30, 2021 · 2 comments

Comments

@jishnub
Copy link
Member

jishnub commented Dec 30, 2021

Currently loading FastTransforms for the first time in a new session takes around 9s on my laptop.

julia> @time using FastTransforms
  8.874037 seconds (12.01 M allocations: 893.960 MiB, 3.89% gc time, 33.26% compilation time)

I wonder if this may be mitigated somewhat?

@MikaelSlevinsky
Copy link
Member

I think it can be reduced.

The core of the package is written in C, and since commenting out include("libfasttransforms.jl") decreases precompile time for me (on an old MacBook Pro running Julia v1.5) by less than 14% and decreases subsequent load time by less than 13%, this would suggest that most of the compile and load times are for peripheral functionality (and loading dependencies). Note that compile time was never the purpose behind the C rewrite of the original Julia version, just a happy side-effect. It was for runtime performance. It's not clear to me how many peripheral routines need a C rewrite.

@MikaelSlevinsky
Copy link
Member

On 0.14.5, I'm seeing

julia> @time using FastTransforms
  1.401138 seconds (4.16 M allocations: 303.644 MiB, 2.20% gc time, 3.83% compilation time)

which can always be improved but is more reasonable now.

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