I just downloaded the Julia nightly to get Julia 1.9-DEV that is now on master. 1.8-beta1 seems close.
I actually get:
| | |_| | | | (_| | | Version 1.8.0-DEV.1505 (2022-02-12) _/ |\__'_|_|_|\__'_| | Commit e422590151 (5 days old master)
so it’s not actually a “nightly”… I’m not rushing people, just letting know.
I was meaning to test out a rather recent (2-day old) PR:
and benchmark, see if LLVM 13 makes a difference. I’ll wait.
Anyway, I get 1.16 sec (22%) faster (51% fewer allocations and 42% less in MB) on unloaded or lightly loaded machine (load average had gone down to about 0.5) on startup:
julia> @time using PythonCall 4.225816 seconds (2.42 M allocations: 170.252 MiB, 1.07% gc time, 85.06% compilation time) vs. julia> @time using PythonCall 5.386591 seconds (4.98 M allocations: 296.372 MiB, 1.52% gc time, 89.29% compilation time)
startup of julia process (while loaded) was slightly slower by 30 ms.
Below same test while machine loaded, before I did:
kill -SIGSTOP <firefox-process-main-PID> (and later corresponding kill -SIGCONT to unfreeze).
I seem to be be getting ca. 1+ sec. (20%) faster on startup:
julia> @time using PythonCall 4.919860 seconds (2.42 M allocations: 170.254 MiB, 1.03% gc time, 85.55% compilation time) vs. in 1.7 julia> @time using PythonCall 6.114529 seconds (4.98 M allocations: 296.368 MiB, 1.60% gc time, 89.13% compilation time)
What do others get? My (loaded) machine has some noise, I try several times to get minimum time (
@btime doesn’t work for this). I know the author gets 2.5 sec… maybe his machine is super-fast or mine just too loaded.