Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Temporary output when assigning into slices?
Replies: 10   Last Post: Jan 27, 2013 3:53 AM

 Messages: [ Previous | Next ]
 Matt J Posts: 4,997 Registered: 11/28/09
Temporary output when assigning into slices?
Posted: Jan 23, 2013 1:49 PM

I've been curious, after various recent observations, about if/when matrix multiplication allocates fresh memory for its output. For example, suppose I do something like

A(:,1)=B*x;

Is this equivalent to

z=B*x; %memory allocated here
A(:,1)=z;

Or, does the output of B*x get directly generated in the memory locations occupied by A(:,1)? Obviously, the latter would be more efficient, but I wasn't sure how it worked. I know for example that this

A(1,:)=B(1,:)*x;

is equivalent to

z=B(1,:); %memory allocated here
A(1,:)=z*x;

so obviously not everything is as well optimized as it could be.

Date Subject Author
1/23/13 Matt J
1/23/13 Bruno Luong
1/23/13 Matt J
1/23/13 Bruno Luong
1/23/13 Matt J
1/23/13 Bruno Luong
1/23/13 Matt J
1/23/13 Bruno Luong
1/24/13 Matt J
1/24/13 Matt J
1/27/13 Bruno Luong