Open tfiers opened 1 year ago
Let's time. Now (WSL2):
julia> @re
julia> using PkgGraph
julia> @time PkgGraph.depgraph_as_dotstr(:OrdinaryDiffEq);
5.050874 seconds (18.93 M allocations: 1.692 GiB, 9.92% gc time, 16.54% compilation time)
https://timholy.github.io/SnoopCompile.jl/stable/snoop_pc/
hah, so it wasn't a precomp issue:
Ok but still useful. This is before any precomp:
and this is after adding
@precompile_all_calls begin
depgraph_as_dotstr(:DefaultApplication)
end
(julia 1.9, so presumably w/ native code caching)
sure, ok.
Kindof annoying though: re-precompilation time (i.e. every time I edit the src) is now 4.3 seconds longer (almost 2x as long) whereas TTFX at 0.3 is very reasonable. So I'mma disable it again.
Ok there is a decent first run delay: https://asciinema.org/a/555338
(asciinema rec
, converted to svg with https://github.com/marionebl/svg-term-cli)
i.e. svg-term --cast=555338 --out blah.svg
(then explorer.exe .
))
re
so precompile the ProgressMeter, and the initial @info
of depgraph
, yes please; but: I don't want to spew output during precompilation (and @precompile_all_calls
does not suppress stdout by default)
We can profile our compilation (and/or type inference) time:
(snoopi deep)
this deprecates (hopefully)