原论文标题: Tensor Comprehensions: Framework-Agnostic High-Performance Machine Learning Abstractions
作者: Nicolas Vasilache 等
分类: Programming Languages (cs.PL), Machine Learning (cs.LG)
arXiv: 1802.04730
最新版本: v3(2018-06-29)
随着卷积神经网络(CNN)与循环神经网络(RNN)的广泛应用,深度学习已成为图像识别、语音识别、机器翻译、推荐系统和广告系统等领域的核心技术。
主流深度学习框架(如 TensorFlow、PyTorch、MXNet、Caffe 等)通常基于计算图(DAG)执行模型,并调用底层高性能库(例如 GPU 上的 cuDNN 或 CPU 上的 NNPACK)来加速算子执行,同时自动完成内存管理、同步与分布式处理。
然而,当研究者设计新的算子时,往往无法直接复用现有高性能库,需要手写 CUDA 内核或进行底层优化。这不仅工程成本极高,而且导致新算子在性能上明显落后,从而影响研究创新速度。此外,即便已有现成库函数,也未必针对具体网络结构与数据形状进行优化,缺少算子融合与尺寸特化等跨算子优化能力。
本文提出了 Tensor Comprehensions(TC),旨在解决“表达灵活性”与“执行性能”之间的矛盾,其主要贡献包括:
Tensor Comprehensions 的核心思想是:
将“算子定义”与“性能优化”解耦。
研究人员只需关注数学表达与算法创新,而系统自动完成底层 GPU 优化与代码生成。这种方式:
该工作在深度学习编译器、自动代码生成与高性能机器学习系统领域具有重要影响。
引用方式: arXiv:1802.04730 [cs.PL]