我是一個新的Julia用戶,我需要儘快找到大矩陣的特徵向量*。我遇到了麻煩朱莉婭爲下面的例子一樣快,Matlab的運行:Julia與Matlab基準特徵向量計算
朱莉婭
const j = 1000 ::Int
A = Array{Float64}(j,j)
B = Array{Float64}(j,j)
f(x) = eigvecs(x)
A = randn(j,j)
B = f(A)
@time f(A)
輸出時間:2.950973秒(12.31ķ分配:76.445 MB,0.11% GC時間)
Matlab的
J = 1000;
A = randn(j,j);
tic
[v, d] = eig(A);
toc
經過時間爲1.161133秒。
我也檢查了Matlab與1個線程進行比較,使用maxNumCompThreads = 1,但它仍然給與以前相似的時間(1.16s)。我也試圖通過運行兩次預加速來加速Julia,並且還設置了blas_set_num_threads(4),但這沒有幫助。
我真的很感激任何關於如何改善我的朱莉婭代碼的建議!
*(我用Matlab的2015B和OSX埃爾卡皮坦10.11.6朱莉婭0.4.7)
可能的重複[特徵分解在Julia比Mathematica慢5倍](http://stackoverflow.com/questions/21641621/eigendecompositions-are-5-times-slower-in-julia-than-in-數學) –
是的。請看另一個問題。對於這個問題,MKL似乎比OpenBLAS更快。 –