3 ms·
The Julia REPL starts in less than a second, importing the Plots module takes a couple of seconds, and the first plot appears in a few more seconds (on my weak
by leephillips 5y ago
The Julia REPL starts in less than a second, importing the Plots module takes a couple of seconds, and the first plot appears in a few more seconds (on my weak computer). If you keep the REPL open, subsequent plots are quite speedy. This may indeed not be snappy enough for some workflows that involve starting a fresh Julia process for each iteration—in which case, it’s pretty simple to create a sysimage with the plotting functions and anything else you use routinely precompiled in: https://www.matecdev.com/posts/julia-package-compiler.html https://www.matecdev.com/posts/julia-package-compiler.html
- UncleOxidant 5y agoI think it depends on the version of Julia the OP was using. If you're using 1.6/1.7 then startup and time to first plot are vastly improved. Earlier versions are quite a bit slower. There's been a lot of improvements in these areas in recent releases.
- leephillips 5y agoQuite right. Since I’ve been keeping track, at about v1.5, there has been significant speedup with every release.
- fault1 5y agoThat's true, though they said "recently". I don't think time to first plot is that bad anymore. Time to first gradient can be bad in Zygote/Flux.
- sundarurfriend 5y agoFor concrete numbers, here's my experience on a super-crappy laptop: * `add Plots` on a new temp environment takes about four and a half minutes, most of which is precompilation. * `using Plots` took 16 seconds, and * a `plot` call after that is 7 seconds. For comparison, on 1.6, the times are seven and a half minutes for precompilation, 17 seconds for `using` and 10 seconds for the first `plot`. I'm not patient/masochistic enough to try the same on 1.5 too, but the trend is definitely one of continuous improvement. This is certainly not the sort of machine any production Julia code will be run in, but it is in the category of machines that a lot of students and many others trying out the language will have access to, so it gives an idea of their experience. The times on 1.6 and 1.7 have been a qualitative change for me. plot being sub-10 seconds means that instead of it being "run it, switch to something else while I wait (potentially losing my mental context), come back and hope it's done", it's now "run it, stare at my dog for a few seconds, the plot is ready".
- ChrisRackauckas 5y agoMy dog loves Plots.jl