You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If we have two sequential applications of convolve, with constant inputs we can convolve the constant inputs first, reducing the number of runtime convolutions
Convolutions give the same output regardless of order of inputs, so if we see two with the same inputs but in different order we can merge them. In general, we may want to have an Op property that tells us when the output is invariant to the order of inputs to apply such merge automatically. This Applies to Add, Mul, ...
Uh oh!
There was an error while loading. Please reload this page.
Description
Follow up to #1318
Some of these may apply to higher-dimensional convolutions.
Sum of convolution as product of sum of inputs
If we have
convolve1d(x, y, mode="full").sum()
, we can rewrite it asx.sum() * y.sum()
convolve constant kernels
If we have two sequential applications of convolve, with constant inputs we can convolve the constant inputs first, reducing the number of runtime convolutions
Merge convolutions with flipped inputs
Convolutions give the same output regardless of order of inputs, so if we see two with the same inputs but in different order we can merge them. In general, we may want to have an
Op
property that tells us when the output is invariant to the order of inputs to apply such merge automatically. This Applies toAdd
,Mul
, ...The text was updated successfully, but these errors were encountered: