llvm/llvm-project

Implement sparse kernel benchmarks (moderate level, independent, starter)

Open

#51,650 创建于 2021年10月25日

在 GitHub 查看
 (7 评论) (0 反应) (1 负责人)C++ (10,782 fork)batch import
bugzillaconfirmedgood first issuemlir:llvmmlir:sparsetensor

仓库指标

Star
 (26,378 star)
PR 合并指标
 (平均合并 1天 2小时) (30 天内合并 1,000 个 PR)

描述

Bugzilla Link 52308
Version unspecified
OS Linux
CC @joker-eph,@SaurabhJha

Extended Description

The sparse compiler relies on FileCheck based tests (https://github.com/llvm/llvm-project/tree/main/mlir/test/Dialect/SparseTensor) and "regression" test (https://github.com/llvm/llvm-project/tree/main/mlir/test/Integration/Dialect/SparseTensor/CPU). These tests make sure that the generated IR is as expected and that the lowering runs "end to end". Most of these tests were developed in conjunction with particular features while they were being added.

However, we don't have any benchmarks to measure the performance of the generated code (and make sure this performance does not regress by later changes to the sparse compiler).

The entry requests adding such benchmarks to MLIR, which requires (1) investigating the typical way in which LLVM at large integrates benchmarks (2) find interesting sparse kernels to implement and measure (3) integrate such tests in a continuous build (or at least frequently run system)

This can act as a good independent start (since it does not require intimate knowledge of the inner workings of MLIR's sparse compiler). The level is medium, however, since the engineering work is non-trivial.

贡献者指南