[mlir][sparse][gpu] various cuSparse refinements
authorAart Bik <ajcbik@google.com>
Thu, 25 May 2023 03:47:54 +0000 (20:47 -0700)
committerAart Bik <ajcbik@google.com>
Thu, 25 May 2023 05:32:52 +0000 (22:32 -0700)
commitbcb698bfdc723cb5e626e61808933583287ad928
tree02f65c8b670d675f2592b6b879d6601c68fad92d
parentedfd360d78bc610953053cb2ddf491f4f2b8e8c2
[mlir][sparse][gpu] various cuSparse refinements

(1) keep all cuSparse ops on single stream without wait() in right order
(2) use more type precise memref types for COO
(3) use ToTensor on resulting memref (even though it folds away again)

Reviewed By: K-Wu

Differential Revision: https://reviews.llvm.org/D151404
mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
mlir/lib/ExecutionEngine/CudaRuntimeWrappers.cpp
mlir/test/Dialect/SparseTensor/GPU/gpu_matmul_lib.mlir
mlir/test/Dialect/SparseTensor/GPU/gpu_matvec_lib.mlir