为什么朱莉娅第一次评估的速度很慢?

时间:2017-08-17 16:55:45

标签: julia

我是朱莉娅的新手。运行以下代码:

const size = 100
@time A = rand(size, size) * rand(size, size)
@time B = rand(size, size) * rand(size, size)
@time a = det(A)
@time b = det(B)

print(a, "\n", b)

然后我得到这样的东西:

  0.825584 seconds (259.77 k allocations: 13.101 MiB)
  0.000248 seconds (11 allocations: 234.813 KiB)
  0.297366 seconds (44.59 k allocations: 2.591 MiB)
  0.012814 seconds (12 allocations: 79.375 KiB)
-9.712788203190892e49
-5.471097050756647e49

为什么第一次调用矩阵乘法或行列式的评估是非常慢的?怎么避免这个?

1 个答案:

答案 0 :(得分:0)

您无法相信全局范围内变量的计时结果。尝试将其放入函数中并再次运行它。此外,第一次运行该函数时,它将进行编译,因此需要一些时间。