-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[BACKEND] LL for ldmatrix part1 - fp16 and no slicing shared memory f…
…or both operands (#5548) All limitations of ldmatrix have been noted in the comments; those with a TODO label should be addressed in following PRs. Discussed with @lezcano, these limitations can be removed in a formal and generic way instead of using heuristics. 1. Divide check: Check if we have enough elements to use `ldmatrix.xn`, where `n` ranges from 1 to 4. This could be implemented through `divideLeft`. 2. Tile check: Check if the `4 / sizeof(elem)` registers are contiguous, the first four lanes are contiguous, and the remaining lanes are on subsequent rows. For example, given `sizeof(elem)=4`, we check if `layout[kLane]=={(1, 0), (2, 0), (0, 1), (0, 2), (0, 4)}`. 3. Address check: Check if elements on accessed addresses are contiguous. 4. Compose layout: Spreading lanes on each row of the tile and repeat it along the original shape.
- Loading branch information
Showing
7 changed files
with
258 additions
and
76 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.