我是朱莉娅的新手,并不是非常擅长编程,如果有一个我错过的明显答案,对不起.我正在尝试进行计算,包括使用三个元素的矢量的大量点积,比如这样,
function foo()
z = 0.0
for i in 1:10000
z = dot([0.0, 1.0, 0.0], [1.0, 0.0, 0.0])
end
end
Run Code Online (Sandbox Code Playgroud)
但是当我跑步的时候
@time foo()
Run Code Online (Sandbox Code Playgroud)
我明白了
0.001010 seconds (20.00 k allocations: 1.831 MB)
Run Code Online (Sandbox Code Playgroud)
这似乎是这个计算的大量分配,并考虑到我需要运行它不是10000时间但更接近10 ^ 9,这需要大约5分钟并分配千兆字节的内存.我觉得它不应该分配那么多.我错了?有没有更好的方法来做这个不分配太多,可能更快?