我最近发现了 Julia,我今天从源代码编译了它,从那以后一直在玩它。我有这个非常简单的脚本,我在其中计算两个随机矩阵的乘法
julia_matmul.jl
N = 100
A = rand(N, N)
B = rand(N, N)
tic()
A*B
toc()
如果我从 Julia 交互式会话中运行此脚本两次,那么第二次运行将比第一次快得多。但是,如果我从终端运行脚本两次,我只会得到最慢的结果。
这是我的结果:
$ julia julia_matmul.jl
elapsed time: 0.315129296 seconds
$ julia julia_matmul.jl
elapsed time: 0.307094268 seconds
$ julia -q
julia> include("julia_matmul.jl")
elapsed time: 0.306266193 seconds
julia> include("julia_matmul.jl")
elapsed time: 0.000700495 seconds
开销约为 0.3 秒,虽然这非常小,但它可能会破坏短脚本的时间。所以我的问题是:这 ~0.3 秒的开销来自哪里,我怎样才能摆脱它(尤其是在不使用交互式会话时)?