在MATLAB中,有一对函数tic
和toc
可用于启动和停止秒表计时器。
摘自link:
tic
A = rand(12000, 4400);
B = rand(12000, 4400);
toc
C = A'.*B';
toc
我知道Julia中有一个宏@time
它具有类似的功能。
julia> @time [sin(cos(i)) for i in 1:100000];
elapsed time: 0.00721026 seconds (800048 bytes allocated)
朱莉娅有一套类似的功能吗?
@time
宏适用于时序语句
可以写成一行或两行。
对于较长的代码部分,
我更喜欢使用tic-toc函数。
当我用Google搜索" julia秒表"时, 我发现了一个有用的链接和四个不相关的链接。
我不知道为什么我没想到只是尝试tic()
和toc()
。
答案 0 :(得分:8)
答案 1 :(得分:1)
from itertools import islice
greater = [y for x,y in zip(a,islice(a,1,None)) if x < y]
和tic()
自https://github.com/JuliaLang/julia/commit/1b023388f49e13e7a42a899c12602d0fd5d60b0a起已弃用
您可以将toc()
和@elapsed
用于较长的块,方法是将它们包装在环境中,如下所示:
@time
还有TickTock.jl,它重新实现了t = @elapsed begin
...
end
和tic()
以及toc()
和tick()
。
tock()