tvm

apache / tvm

TVM 是一个端到端开源机器学习编译器框架,用于将深度学习模型优化并部署到多种硬件后端,解决异构算力下的性能与移植问题。

Python AI 基础设施 开发工具 机器学习编译器 模型部署 硬件加速 深度学习 TVM

为什么值得看

编辑点评

作为业界领先的 ML 编译基础设施,TVM 支持从主流框架导入模型,并通过自动调优与代码生成充分释放 GPU、CPU、NPU 等硬件潜力。适合对推理性能有极致要求、需要跨平台部署的生产团队。缺点是学习曲线陡峭,调试复杂,建议结合官方文档和社区案例逐步上手。

Star 趋势

近 7 日
  • Star 总数13,755
  • 今日新增+1
  • 7 日增速-200%
  • Fork3,979

同类项目

同场景 · AI 基础设施 / 开发工具

项目文档

来自 GitHub README · main 分支

Open Machine Learning Compiler Framework

Documentation | Contributors | Community | Release Notes

Apache TVM is an open machine learning compilation framework, following the following principles:

  • Python-first development that enables quick customization of machine learning compiler pipelines.
  • Universal deployment to bring models into minimum deployable modules.

License

TVM is licensed under the Apache-2.0 license.

Getting Started

Check out the TVM Documentation site for installation instructions, tutorials, examples, and more. The Getting Started with TVM tutorial is a great place to start.

Contribute to TVM

TVM adopts the Apache committer model. We aim to create an open-source project maintained and owned by the community. Check out the Contributor Guide.

History and Acknowledgement

TVM started as a research project for deep learning compilation. The first version of the project benefited a lot from the following projects:

  • Halide: Part of TVM's TIR and arithmetic simplification module originates from Halide. We also learned and adapted some parts of the lowering pipeline from Halide.
  • Loopy: use of integer set analysis and its loop transformation primitives.
  • Theano: the design inspiration of symbolic scan operator for recurrence.

Since then, the project has gone through several rounds of redesigns. The current design is also drastically different from the initial design, following the development trend of the ML compiler community.

The most recent version focuses on a cross-level design with TensorIR as the tensor-level representation and Relax as the graph-level representation and Python-first transformations. The project's current design goal is to make the ML compiler accessible by enabling most transformations to be customizable in Python and bringing a cross-level representation that can jointly optimize computational graphs, tensor programs, and libraries. The project is also a foundation infra for building Python-first vertical compilers for domains, such as LLMs.

文档抓取自 GitHub 仓库 README,版权归原作者所有;已过滤徽章等噪音并经安全消毒后展示。