Initial draft for a specialized computed_assign for xfixed #2394
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Initial draft for a specialized computed_assign for xfixed:
Any broadcasting which would require a reshaping of the tensor we assign to will lead to an broadcast error.
But there is one thing where I do not know how to solve it:
Lets say a has a shape of (2,2) and b a shape of (1,2)
and I do
xt::noalias(a) += b;
For such expressions, where broadcasting is involved to bring b to the correct shape, test suite only passes if I, within my implementation for
computed_assign
do this:If I set this to true, the test suite only passes for expression where no broadcasting is involved.
I am unsure how to figure out in a proper way from within
computed_assign
since the shape and dim of the expressionse1
ande2
are matching.