Fortran asignar / desasignar
Tengo la siguiente pregunta: ¿Cuál es la sobrecarga real de las declaraciones de asignación / desasignación en Fortran90 +? Es decir, varias matrices de tamaño mediano se asignan dentro de un bucle, como
do i = 1, 1000
allocate(tmp(20))
tmp(1:20) = 1d0
call foo(tmp)
deallocate(tmp)
end do
¿Vale la pena asignar una sola matriz de trabajo en función del tamaño máximo en este caso?