Yes, on my machine memory allocation is slower than initializing. For example,
@btime fill(0, (3,1000));
A = Array{Int,2}(undef, 3, 1000)
@btime fill!($A, 0);
gives
1.383 μs (2 allocations: 23.52 KiB)
446.586 ns (0 allocations: 0 bytes)
Maybe this isn’t an entirely fair comparison since in benchmarking the fill! call, the array A is in-cache (because @btime calls fill! over and over on the same array and reports the fastest time). On the other hand, improving cache locality is a real benefit of pre-allocating arrays.
(Obviously, if your initialization is significantly more complicated than simply setting the entries to zero, then the initialization time could become more important.)