Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.h | ||
---|---|---|
452 | Can you make this For sequential for loops: (the For for reads a bit like a typo) | |
467 | do we only support addition reduction? | |
mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp | ||
442 | Variables | |
mlir/test/Dialect/SparseTensor/sparse_parallel.mlir | ||
155 | this is good for *this* test, since it looks for structure but can you also add a more strict CHECK test for all details of scf.reduce? | |
mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir | ||
8 | parallelizaiton |
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.h | ||
---|---|---|
467 | No, but we only support "one-line reduction". |
some super nits to wrap this up ;-)
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.cpp | ||
---|---|---|
248 | although correct english, do you really need temporally or temporarily? | |
516 | Here and below, follow the "full sentence" style we usually follow | |
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.h | ||
458 | end with : | |
471–472 | period | |
mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp | ||
910–911 | "reduction*s*" or "a parallel reduction" | |
mlir/test/Dialect/SparseTensor/sparse_parallel_reduce.mlir | ||
42 ↗ | (On Diff #471245) | yeah, nice! |
mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir | ||
6 ↗ | (On Diff #471245) | period at end |
mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir | ||
8 | same |
rebase + address comments from Aart.
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.cpp | ||
---|---|---|
248 | You are right ;-(. |
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.cpp | ||
---|---|---|
267 | not for this revision, but the loop emitter methods are becoming a bit big (for example this one, but also the exit loop below!) perhaps we can later refactor the public methods into small methods that call a number of private methods with a very specific function, e.g. prepare induction, do reduction etc. WDYT? | |
mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp | ||
443 | The name genReducUpdateStmt is a bit misnomer, right? But moving the two similar parts into one method is good refactoring! | |
911 | testing for expCount is very hard to read in these expression can we make this something like isExpanion = codegenExpCount and then use it in the expressions? |
mlir/lib/Dialect/SparseTensor/Transforms/CodegenUtils.cpp | ||
---|---|---|
267 | yeah, that's a good idea! |
address comments from Aart.
mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp | ||
---|---|---|
911 | I instead followed the way how you did with codegen.SparseOut, which seems even more clear! |
This change appears to have broken the Windows buildbot. https://lab.llvm.org/buildbot/#/builders/13/builds/28002/steps/6/logs/stdio
C:\buildbot\mlir-x64-windows-ninja\llvm-project\mlir\lib\Dialect\SparseTensor\Transforms\CodegenUtils.cpp(227): error C2220: the following warning is treated as an error C:\buildbot\mlir-x64-windows-ninja\llvm-project\mlir\lib\Dialect\SparseTensor\Transforms\CodegenUtils.cpp(227): warning C4804: '<=': unsafe use of type 'bool' in operation
Like I commented on D136185, do you actually need SmallVectorImpl here or can you use MutableArrayRef instead?