Ed Schmerling essentially asked the same question, and did not get a satisfactory answer as described at https://github.com/schmrlng/CPUTime.jl/issues/1 In this link he says "For multi-core machines, I still don't know a good way to reliably benchmark code when you've got other stuff going on in the background"
Julia uses libuv to get the time displayed by @time. One possible route for looking at time on a multi-core machine is to use the uv_cpu_info which returns per-core time: http://docs.libuv.org/en/v1.x/misc.html?highlight=uv_cpu_info#c.uv_cpu_info_t I think this info is returned in the resolution of hundredths of a second (at least on linux), which is much less than the nanosecond resolution of uv_hrtime as used by @time On Thu, Apr 2, 2015 at 4:35 AM, Nils Gudat <[email protected]> wrote: > When running code in parallel, I see large declines in the time to execute > my code (as I expected), but an implausably large drop in memory allocation > and gc time. Would I be right in assuming that allocation on workers > processors is just not recorded by @time? > -- [email protected]
