2013-06-12 46 views
3

我最近发现了Julia,而且我从源码上编译它,并且一直在玩它。我有一个非常简单的脚本,我两个时间随机矩阵从命令行运行Julia的开销

julia_matmul.jl

N = 100 
A = rand(N, N) 
B = rand(N, N) 
tic() 
A*B 
toc() 

如果我从朱莉亚交互式会话运行此脚本两次乘法,然后第二轮是相当快比第一个。但是,如果我从终端运行脚本两次,我只会得到最慢的结果。

这里是我的结果:

$ 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秒的开销,以及如何摆脱它(特别是当不使用交互式会话时)?

回答

2

有关这些问题,请参阅[email protected]邮件列表。这个问题已经被回答了几次(可能还在StackOverflow上),所以先检查一下档案。对于Julia的问题,通常也是一种更好的方式来获得最新的答案。

是的,我只是检查,它的第一个相关的问题:

Julia compiles the script everytime?