-
Notifications
You must be signed in to change notification settings - Fork 15.1k
Open
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillagood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contributemlir:llvmmlir:sparseSparse compiler in MLIRSparse compiler in MLIR
Description
Bugzilla Link | 52318 |
Version | unspecified |
OS | Linux |
CC | @joker-eph |
Extended Description
Implement strided load/stores on dense arrays, so that vectorization does not need to be disabled when the access pattern is non-contiguous for the dense data structures.
Start by looking at denseUnitStrides() in https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
This will require tensor loads and stores that have become non-unit stride to compute the proper strides and use this during vectorization.
This is a non-trivial starter, and requires adding vector dialect support first (for the non-unit stride load and stores) and then very careful engineering within the sparse compiler codegen).
Metadata
Metadata
Assignees
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillagood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contributemlir:llvmmlir:sparseSparse compiler in MLIRSparse compiler in MLIR