llvm-project/mlir
Aart Bik e057f25dee [mlir][sparse] auto-insertion of conversion to resolve cycles
When the iteration graph is cyclic (even after several attempts using less and less constraints), the current sparse compiler bails out, and no rewriting hapens. However, this revision adds some new logic where the sparse compiler tries to find a single input sparse tensor that breaks the cycle, and then adds a proper sparse conversion operation. This way, more incoming kernels can be handled!

Note, the resulting code is not optimal (although it keeps more or less proper "sparse" complexity), and more improvements should be added (especially when the kernel directly yields without computation, such as the transpose example). However, handling is better than not handling ;-)

Reviewed By: bixia

Differential Revision: https://reviews.llvm.org/D128847
2022-06-29 18:28:18 -07:00
..
benchmark/python [mlir] Fix declaration of nano time function in benchmark infra 2022-05-13 13:22:18 +02:00
cmake/modules [mlir] Leverage CMake interface libraries for mlir python 2022-06-28 10:42:58 -07:00
docs [mlir] Update the pass crash reproducer documentation 2022-06-29 12:23:11 -07:00
examples [mlir] move SCF headers to SCF/{IR,Transforms} respectively 2022-06-20 10:18:01 +02:00
include [mlir][LLVMIR] Apply SubElementTypeInterface on suitable types 2022-06-29 13:58:02 -07:00
lib [mlir][sparse] auto-insertion of conversion to resolve cycles 2022-06-29 18:28:18 -07:00
python [mlir] Leverage CMake interface libraries for mlir python 2022-06-28 10:42:58 -07:00
test [mlir][sparse] auto-insertion of conversion to resolve cycles 2022-06-29 18:28:18 -07:00
tools [mlir] Add `enableSplitting` and `insertMarkerInOutput` options to `splitAndProcessBuffer` 2022-06-28 15:42:35 -07:00
unittests [mlir][LLVMIR] Apply SubElementTypeInterface on suitable types 2022-06-29 13:58:02 -07:00
utils [gdb-scripts] Add to_string methods to printer implementations 2022-06-21 16:09:30 +00:00
.clang-format [mlir] Add missing newline at end of .clang-format file 2022-06-14 23:59:00 -07:00
.clang-tidy Enable readability-redundant-smartptr-get in MLIR local clang-tidy config 2022-01-08 20:07:11 +00:00
CMakeLists.txt Revert "[cmake] Don't export `LLVM_TOOLS_INSTALL_DIR` anymore" 2022-06-10 19:26:12 +00:00
LICENSE.TXT
README.md

README.md

Multi-Level Intermediate Representation

See https://mlir.llvm.org/ for more information.