FlashGEMM:通过利用CPU上的数据重用来优化矩阵乘法序列的计算
《ACM Transactions on Architecture and Code Optimization》:FlashGEMM: Optimizing Sequences of Matrix Multiplication by Exploiting Data Reuse on CPUs
【字体:
大
中
小
】
时间:2025年11月08日
来源:ACM Transactions on Architecture and Code Optimization
编辑推荐:
通用矩阵乘法(GEMM)是高性能计算和深度学习的关键操作,主流库如MKL和OpenBLAS在处理大规模规则形状GEMM时表现优异。本文提出FlashGEMM,通过新型数据打包策略降低内存访问开销,设计VNNI指令集优化的微内核提升计算内存比,并采用循环融合策略重用中间数据,实验表明其多核CPU性能显著优于现有方案。
摘要
通用矩阵乘法(GEMM)是高性能计算(HPC)和深度学习(DL)应用中的基本操作。虽然主流的CPU线性代数库(如MKL和OpenBLAS)在处理单个大规模、规则形状的GEMM操作时能够实现高性能,而这些操作在新兴的HPC和DL应用中非常常见。我们提出了FlashGEMM,这是一种针对x86 CPU优化GEMM操作序列的新颖且高效的方法。FlashGEMM引入了一种新的数据打包策略,减少了与数据打包操作相关的内存访问开销。它还设计了新的微内核,以充分利用x86 CPU的向量神经网络指令(VNNI)单元,从而提高了计算与内存的比率(CMR)。此外,FlashGEMM还包括新的循环融合策略,以便在连续的GEMM操作中重用中间数据。实验结果表明,在多核CPU上,FlashGEMM在大多数GEMM工作负载上的性能均优于现有最佳算法。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号