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

make internal calls to require use a fixed world #27894

Merged
merged 1 commit into from Jul 2, 2018

Conversation

JeffBezanson
Copy link
Sponsor Member

This avoids recompiling it, which speeds up package precompilation and loading. We already do this for the type inference code.

With this, the time to precompile CSV the first time goes from 240 sec to 90 sec for me.

This avoids recompiling it, which speeds up package precompilation
and loading.
@JeffBezanson JeffBezanson added the compiler:latency Compiler latency label Jul 1, 2018
@tknopp
Copy link
Contributor

tknopp commented Jul 2, 2018

It would be interesting if these optimizations are things that regressed from 0.5 -> 0.6 -> 0.7 or if that cannot be really compared since the compiler has evolved (e.g. due to the new type system).

For reference: Julia 0.6.3 (on a macbook) requires 33 seconds to precompile CSV here.

@JeffBezanson
Copy link
Sponsor Member Author

This has to do with the code invalidation mechanism added to fix #265, so it wouldn't apply to 0.5.

@JeffBezanson JeffBezanson merged commit 027e344 into master Jul 2, 2018
@JeffBezanson JeffBezanson deleted the jb/requireworld branch July 2, 2018 18:42
@StefanKarpinski
Copy link
Sponsor Member

Does this essentially make require itself an exception to the 265 fix?

@JeffBezanson
Copy link
Sponsor Member Author

No; the fix still applies, but by preventing require from seeing new methods, rather than by recompiling it for those new methods.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler:latency Compiler latency
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants