I know, I was asking about that being the default behaviour of *
On Tuesday, October 18, 2016 at 2:10:14 PM UTC-4, Stefan Karpinski wrote: > > That's what A_mul_B! does. > > On Tue, Oct 18, 2016 at 1:45 PM, Jérémy Béjanin <jeremy....@gmail.com > <javascript:>> wrote: > >> I think this is something I might have read about in the past, but are >> there plans to make y = a*b use an already allocated y? >> >> On Tuesday, October 18, 2016 at 12:38:00 PM UTC-4, Stefan Karpinski wrote: >>> >>> A_mul_B!(Y, A, B) -> Y >>> >>> Calculates the matrix-matrix or matrix-vector product A⋅B and stores >>> the result in Y, overwriting the >>> existing value of Y. Note that Y must not be aliased with either A or >>> B. >>> >>> julia> A=[1.0 2.0; 3.0 4.0]; B=[1.0 1.0; 1.0 1.0]; Y = similar(B); >>> A_mul_B!(Y, A, B); >>> >>> julia> Y >>> 2×2 Array{Float64,2}: >>> 3.0 3.0 >>> 7.0 7.0 >>> >>> On Tue, Oct 18, 2016 at 10:27 AM, <zamani.m...@gmail.com> wrote: >>> >>>> hi guys >>>> is there a way to reduce allocated memory in matrix multiplications? >>>> >>>> for example this code blew in my machine gives : >>>> >>>> function test4(n) >>>> a = rand(n,n) >>>> for i = 1:100 >>>> a*a >>>> end >>>> end >>>> >>>> >>>> ---------------------- answer ---------------------- >>>> test4(1) >>>> # force compiling >>>> >>>> @time test4(1000) >>>> 16.589743 seconds (433 allocations: 770.587 MB, 0.68% gc time) >>>> >>> >>> >