google-research / google-research/dex-lang
Tile matmul-like and transpose-like loops
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 116
- PR merge metrics
- No merged PRs in 30d
Description
Those are usually much more efficient when evaluated in a tiled fashion (with e.g. the transposes happening in smaller tiles to take advantage of caches). I've manually verified that it makes a huge difference in the (currently broken) tiled matmul example, but we should make this transform more automatic.
Of course it doesn't need to be super fancy initially, just a few rough heuristics would be good.
Contributor guide
Research direction
Start with the currently broken tiled matmul example and compare tiled versus untiled matmul and transpose behavior. Done means the transform automatically applies simple tiling heuristics to matmul-like and transpose-like loops and demonstrates the expected efficiency improvement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- compilers, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100