use*_*004 0 time matlab timer julia
是否可以在Julia中调用嵌套的tic()和toc()?问题是我无法将我选择的计时器名称发送到toc()函数.
在Matlab中有这样的东西(我引用Matlab的帮助)
`
REPS = 1000; minTime = Inf; nsum = 10;
tic; % TIC, pair 1
for i=1:REPS
tStart = tic; % TIC, pair 2
total = 0;
for j=1:nsum
total = total + besselj(j,REPS);
end
tElapsed = toc(tStart); % TOC, pair 2
minTime = min(tElapsed, minTime);
end
averageTime = toc/REPS; % TOC, pair 1 `
Run Code Online (Sandbox Code Playgroud)
看起来你可以,让我知道这不是你的意思嵌套tic和toc.
tic()
sleep(1)
tic()
sleep(1)
toc() # elapsed time: 1 second
sleep(1)
toc() #elapsed time: 3 seconds
Run Code Online (Sandbox Code Playgroud)
此外,如果你想在Julia中计算一些东西,使用@time宏可以更容易,它也可以跟踪内存分配.
@time (sleep(1); @time sleep(1);)
# elapsed time: 1 second, 672 bytes allocated
# elapsed time: 2.13 seconds, 6 MB allocated
Run Code Online (Sandbox Code Playgroud)
不幸的是,它似乎没有使用返回值的预定义函数tic.您可以使用该time_ns功能编写自己的.
function toc(t0)
t1 = time_ns()
t = (t1 - t0) / 1e9
println("elapsed time: ", t, " seconds")
return t
end
Run Code Online (Sandbox Code Playgroud)