Yup, I'm convinced. Though if we ever get 
https://github.com/JuliaLang/julia/issues/9147 implemented perhaps it'll be 
faster in the case of zeros too :)

On Monday, November 16, 2015 at 9:42:40 AM UTC-8, Tomas Lycken wrote:
>
> Yeah, that makes it even more clear that they’re very similar:
>
> julia> gc(); @time for i=1:1_000; sizehint!(Vector{Int}(0), 1_000); end
>   0.000186 seconds (2.00 k allocations: 7.721 MB)
>
> julia> gc(); @time for i=1:1_000; Vector{Int}(1_000); end
>   0.000181 seconds (1000 allocations: 7.706 MB)
>
> (broken into smaller chunks, because the timings started to get awfully 
> close to the resolution of the clock, and the gc percentage count got 
> really borked…)
>
> // T
>
> On Monday, November 16, 2015 at 6:26:04 PM UTC+1, Steven G. Johnson wrote:
>
>
>
> On Monday, November 16, 2015 at 11:24:20 AM UTC-5, Tomas Lycken wrote:
>
> Making sure that precompilation and gc don’t factor into the result, I get 
> quite different timings:
>
> julia> gc(); @time sizehint!(a, 10_000_000);
>   0.001493 seconds (46 allocations: 76.296 MB, 304.61% gc time)
>
> julia> gc(); @time b = zeros(Int, 10_000_000);
>   0.021997 seconds (38 allocations: 76.296 MB, 0.70% gc time)
>
>
> Compare to Array(Int,  10_000_000), which allocates an uninitialized array.
>
> ​
>
> ​
>
> ...

Reply via email to