Skip to content

Reshape target_vector_shape semantics are inconsistent #942

@ftynse

Description

@ftynse

In short, it is unclear whether target_vector_shape refers to the vector shape of the operand or that of the result and different places in the code base assume differently. It appears further assumptions were baked into other passes making the inconsistent behavior load-bearing, see an attempt to converge: #941.

Usage in expansion_utils.py and naming suggests this is the shape of the result. Usage in mma_utils.py suggests it is the shape of the operand (presumably "target" could mean "target of this operation", i.e., the operand).

The semantics must be clearly defined and one of the usages fixed, short of which the anything beyond simple matmuls is prone to correctness issues.

Some automated investigation here https://gist.github.com/ftynse/20a2830775b10d8c3195c3b22dcb8d99 but it didn't shed any new light on the problem.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions