小编Ako*_*kon的帖子

为什么 Julia 比 MATLAB 慢?

我刚刚编写了这个非常简单的函数来测试 Julia 和 MATLAB 的性能。我只是注意到 MATLAB 中的执行时间要短得多。这是简单的代码:

MATLAB:

tic

aa = 0;

for loop =1:1e6

       aa = aa+loop;

end

toc
Run Code Online (Sandbox Code Playgroud)

经过的时间是 0.004628 秒。

朱莉娅:

function sum_test(a)

    for i = 1:1e6
        a = a + i
    end

    return a
end
Run Code Online (Sandbox Code Playgroud)

经过的时间是 0.093886155s:93 毫秒。

我还在 Julia 中编写了一个函数来避免使用全局变量,这提高了性能,但它仍然比 MATLAB 慢得多。有人可以帮我理解这一点吗?

julia

1
推荐指数
1
解决办法
506
查看次数

提高 Julia 中 for 循环的速度

这是我在 Julia 平台中的代码,我想加快速度。无论如何,我可以让这个更快吗?50k*50k的数据集需要0.5秒。我原以为 Julia 会比这快得多,否则我不确定我是否在做一个愚蠢的实现。

ar = [[1,2,3,4,5], [2,3,4,5,6,7,8], [4,7,8,9], [9,10], [2,3,4,5]]

SV = rand(10,5)

function h_score_0(ar ,SV)
    m = length(ar)
    SC = Array{Float64,2}(undef, size(SV, 2), m)
    for iter = 1:m
        nodes = ar[iter]
        for jj = 1:size(SV, 2)
            mx = maximum(SV[nodes, jj])
            mn = minimum(SV[nodes, jj])
            term1 = (mx - mn)^2;
            SC[jj, iter] = (term1);
        end
    end
    return score = sum(SC, dims = 1)
end

Run Code Online (Sandbox Code Playgroud)

julia

1
推荐指数
1
解决办法
1803
查看次数

标签 统计

julia ×2