一系列矩阵乘法例程的自动生成器与 Apache TVM
本论文通过使用贝叶斯优化提出了一种新的 TVM 自动调优框架,并利用 TVM 张量表达语言实现了 LU、Cholesky 和 3mm 等线性代数核,通过在 Argonne 国家实验室的一个 GPU 集群 Swing 上评估这些方法的有效性,将所提出的自动调优框架与四个调优器的 TVM 自动调优框架 AutoTVM 进行了比较,并发现在大多数情况下我们的框架优于 AutoTVM。
Sep, 2023
矩阵乘法(或 GEMM)的优化是近几十年来的需求之一,本研究提出了一种使用 Exo 编译器生成 micro-kernels 的逐步过程,并且性能接近(甚至优于)使用内置函数或汇编代码手动开发的 micro-kernels,同时提高了生成代码的可移植性。
Oct, 2023
TVM 是一个深度学习编译器,可将深度学习工作负载在各种硬件后端上具有良好的性能移植性,通过学习基于成本模型的方法,自动进行低级程序的硬件特征优化,实验结果表明,TVM 在处理低功率 CPU、移动 GPU 和服务器级 GPU 的竞争性能与手工调优库类似,并能定位到新的加速器后端,如基于 FPGA 的深度学习通用加速器。
Feb, 2018
我们提出了一个通用的开源框架,旨在促进高效、个性化的数值矩阵乘法运算(MMM)。该框架提供了两个主要贡献:第一,一个经过优化的、自动化的算术数据通路生成流水线,可以实现高度定制化的脉动式 MMM 核心;第二,生成的核心能够无缝集成到用户代码中,无论使用的是哪种编程语言,而无需进行修改。该框架在多样化的高性能计算工作负载中展现了能效提升的系统性效果,这些工作负载展示了多种数字需求,如人工智能推理和海面高度计算。在人工智能推理方面,我们考虑了一系列最先进的神经网络模型,包括 ResNet18、ResNet34、ResNet50、DenseNet121、DenseNet161、DenseNet169 和 VGG11,结合了两个数据集、两种计算机格式和 27 种不同的中间算术数据通路。我们的方法在所有情况下都能显著减少能耗,其中一个明显的例子是在使用 ResNet50 进行 ImageNet 推理时,IEEE754-32 的能耗降低了 3.3 倍,Bfloat16 的能耗降低了 1.4 倍。在保持 82.3% 和 86% 的准确率的同时,与传统的浮点数单元(FPUs)所实现的准确率相当。在 SSH 计算方面,我们的方法通过使用双精度字实现了完全可重现的结果,超过了传统双精度和四倍精度浮点数运算器(FPUs)的准确率。我们的方法相比 IEEE754-64 和 IEEE754-128,最低提高了 5 倍和 27 倍的 SSH 计算准确性,从而在每单位功耗方面的准确度提升分别为 5.6 倍和 15.1 倍。
May, 2024
本研究提出了一种新的框架 NeuralMatrix,可以在一个单一的通用矩阵乘法加速器上计算多功能的深度神经网络,同时在性能和特定应用的加速水平方面与 CPU 和 GPU 等通用处理器相比具有优势。
May, 2023
通过将稀疏矩形块进行分割,利用 Tensor Core Units(TCUs)的混合精度模式实现的稀疏矩阵乘法算法 tSparse,可以显著比常用的 cuSPARSE、CUSP、RMerge2、Nsparse、AC-SpGEMM 和 spECK 的方法提高性能。
Sep, 2020
Amulet 框架使用数据库和编译器优化技术来生成适合于特定执行环境的快速代码,相对于现有编译器,Amulet 在各种矩阵乘法任务上都获得了加速效果,可以处理更广泛的计算类型,并且在处理大型矩阵时性能通常接近手工调优的矩阵乘法库的 15%。
May, 2023
本文介绍了 NVIDIA Volta GPU 微架构中一种特殊的处理器 Tensor Core,它能够在每个时钟周期内对 4x4 矩阵执行一个矩阵乘积累加操作,经过测试,我们发现 NVIDIA Tensor Core 在 Tesla V100 GPU 上能够以混合精度提供 83 Tflops/s 的处理速度,使得 HPC 应用的矩阵乘法能够获得显著的性能提升。
Mar, 2018
本文介绍了一种名为 NGEMM 的基于编译器的 GEMM 实现方法,用于加速低精度 DNN 的训练和推理。与 MKL 等库相比,NGEMM 的性能表现更优,平均速度提升了 1.86 倍。
Oct, 2019
本文提出了一种新的 MCMK 卷积方法,能够在不使用 im2col 的情况下将卷积核应用于输入图像,相比 im2col 方法,该方法在 CPU 上的速度更快。
Apr, 2017