常见问题#

如何安装#

阅读 安装 TVM

如何添加一个新的硬件后端#

TVM 与其他 IR/DSL 项目的关系#

在深度学习系统中,通常有两个层次的 IR 抽象。TensorFlow 的 XLA 和英特尔的 ngraph 都使用计算图表示。这种表示法是高水平的,可以帮助进行通用优化,如内存重用、布局转换和自动区分”

TVM 采用了一种低级别的表示方法,明确表达了对内存布局、并行化模式、位置性和硬件基元等的选择。这一层次的 IR 更接近于直接的目标硬件。低级别的 IR 采用了现有的图像处理语言的想法,如 Halide、darkroom 和循环转换工具,如 loopy 和基于多面体的分析。我们特别关注表达深度学习的工作负载(如递归),为不同的硬件后端进行优化,并与框架嵌入,以提供端到端的编译栈。

TVM 与 libDNN、cuDNN 的关系#

TVM 可以将这些库作为外部调用纳入。TVM 的一个目标是能够生成高性能的内核。我们将以渐进的方式发展 TVM,因为我们从手工制作内核的技术中学习,并将这些技术作为基元加入 DSL 中。TVM 中运算符的配方也见顶部。

安全#

参阅:安全指南