dot_inplace_left(a, b, block_size=1000)¶
Inplace dot product for memory efficiency. It computes
a * b = c, where
awill be replaced inplace with
(n_big, k)ndarray) – First array to dot - assumed to be large. Will be damaged by this function call as it is used to store the output inplace.
n_small <= k) – The second array to dot - assumed to be small.
n_smallmust be smaller than
kso the result can be stored within the memory space of
block_size (int, optional) – The size of the block of
athat will be dotted against
bin each iteration. larger block sizes increase the time performance of the dot product at the cost of a higher memory overhead for the operation.
(n_big, n_small)ndarray) – The output of the operation. Exactly the same as a memory view onto
a[:, :n_small]) as
ais modified inplace to store the result.