OpenPPL 中的卷积优化技巧
导读:目前 OpenPPL 在 FP16 精度 T4 GPU 上取得了不错的性能,单 batch 模型的推理性能全面超越 TensorRT 8.0,多 batch 模型的推理性能达到 TensorRT 8.0 的 90%+。 作者:刘宇玺 本文将介绍 OpenPPL 目前开源的卷积算子实现方法,从算法层面介绍 OpenPPL 在 Tensor Core 上的设计方法和优化经验。不涉及 mma 指令、ldmatrix 指令等的使用技巧,比如 conflict-free 的数据搬运、shared memory 的数据排布等,相关知识可以参考 ptx 手册及英伟达官方的教程。 OpenPPL GitHub 地址:https://github.com/openppl-public/ppl.nn 文章共分为五个部分: 第一部分介绍 Tensor Core 上运行卷积算子的背景知识; 第二部分介绍基于 Tensor Core 计算模式的特点,将卷积共分为三种类型; 第三部分介绍针对各种卷积类型 OpenPPL 设计的卷积算法,以及生成卷积 kernel 的代码生成技术; 第四部分将给出目前 Ope...