-
Notifications
You must be signed in to change notification settings - Fork 62
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
Remove all the rule overload generation stuff #356
Conversation
Codecov Report
@@ Coverage Diff @@
## master #356 +/- ##
==========================================
- Coverage 86.71% 85.82% -0.89%
==========================================
Files 14 13 -1
Lines 542 494 -48
==========================================
- Hits 470 424 -46
+ Misses 72 70 -2
Continue to review full report at Codecov.
|
This doesn't seem to have much decrease on load time for me. Current Master(ChainRulesCore) pkg> precompile
julia> @time using ChainRulesCore
0.833778 seconds (1.45 M allocations: 82.013 MiB, 1.14% gc time) This PRPrecompiling project...
1 dependency successfully precompiled in 2 seconds (4 already precompiled)
julia> @time using ChainRulesCore
0.796725 seconds (1.33 M allocations: 74.891 MiB, 2.00% gc time) my system
|
Sorry, I just got my new laptop and was having some issues with my setup, so it took me a bit longer to respond. ChainRulesCore#master:julia> @time using ChainRulesCore
0.129288 seconds (183.98 k allocations: 11.294 MiB, 7.01% compilation time) ChainRulesCore#ox/nogen:julia> @time using ChainRulesCore
0.033548 seconds (50.97 k allocations: 3.213 MiB, 11.55% compilation time) 🎉
|
Cool, I will have to workout why things are so slow for me, but that is a question for another day |
I think @IanButterworth did some experiments a while back and figured out that sometimes I/O can be unusually slow on Darwin. Could definitely be wrong about this though. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
I don't know if it explains all of the slowness on MacOS generally, but yeah, particularly JuliaLang/julia#35907 (comment) which MacOS devs confirmed was to be expected because MacOS does more things during IO |
Are we ready to merge this with #358? And then tag a breaking release? |
We can't merge this til JuliaRegistries/General#37582 or there will be a broken link in docs. |
Co-authored-by: Nick Robinson <npr251@gmail.com>
We are moving all this stuff into its own package
Requires JuliaDiff/ChainRulesOverloadGeneration.jl#1 to be merged and a relase tagged first so that the docs don't hit a page in those docs that doesn't exist.
This will close #340
It will break invenia/Nabla.jl#189
I don't think it will break any code in the wild.
So we could perhaps do this as a nonbreaking release.
Otherwise: we can merge this once we are ready to tag a breaking release.
Probably in the interests of responsibility we should do that.
I don't think this is worth deprecating, because working out how to do that without a circular dependency seems hard.
Waiting for JuliaRegistries/General#37582