Linalg portion of the tutorial - part 3-2
This CL adds support for lowering tensor contractions to loops declaratively. This is done thanks to two properties of the such operations: 1. the definition of an AffineMap getLoopsToOperandRangesMap for each op which maps iteration space dimensions to ranges of the view operands, in their order of occurrence; 2. the definition of a scalar implementation for each op which creates the computation inside the loops given enclosing parallel and reduction loops, All the other properties are derived in a generic fashion from these 2 properties and a few analyses. A lowerToLoops transformation is added as well as a test that exercises it. -- PiperOrigin-RevId: 241783992
Loading
Please sign in to comment