大模型硬件优化方向论文阅读笔记

大模型硬件优化方向论文阅读笔记

PrimePar: Efficient Spatial-temporal Tensor Partitioning for Large Transformer Model Training

ASPLOS2024
这是一篇关于大模型系统优化的工作,主要通过提出一种引入时间维度的索引方法,进行tensor的分区,结合提出的块动态调度优化算法,通过减少集中通信量,有效的减少了节点间的通信延迟和访存量。本工作基于8节点,每个节点4个V100和一个32核至强cpu计算系统,在pytorch上实现了通信优化算法,并通过nccl和自己实现的c++拓展库实现本文提出的新型索引功能。

A^3: Accelerating Attention Mechanisms in Neural Networks with Approximation

HPCA2020
一篇关于attention的加速器的文章,文章中的attention算子非常简单,只是基础的向量矩阵乘加一个softmax,因此本文提出的基础的加速器结构也很简单,不过文章倒是介绍的很详细。本文创新点主要在于结合attention算法的特点,做了近似处理,节省了不少计算量,有效提高性能和节省资源,但牺牲了模型的精确度,最后,文章用chisel实现了这个加速器,用开源或官方代码实现了3个软件负载,并用40nm工艺进行流片,由于本文算是attention加速器的开创性工作,因此本文的对比对象是CPU和GPU,当然在能效比上实现了遥遥领先。

ELSA: Hardware-Software Co-design for Efficient, Lightweight Self-Attention Mechanism in Neural Networks

ISCA2021
同样来自上一篇A^3的的作者,是attention加速器相关顶会的早期几篇文章。研究动机也是self-attention计算成本高,在NN中占比大,却没有很好的软硬件协同优化方案。本篇文章ELSA加速的self-attention算子与A^3的算子复杂度相当,都是比较简单的,基本就是从向量矩阵乘到矩阵乘。
ELSA的结构包括文章思路与A^3也是如出一辙,同样是先从计算模式出发,提出一种基于近似的优化方案,该优化的过程大致是:通过hash编码和相似度计算,再进行candidate selection,可以在牺牲较小精度的情况下只进行部分计算,有效降低计算量。接着本文给出软硬件设计方案,也就是ELSA加速器,详细介绍了ELSA各部分的组成,以及优化后的算法,最后在一些典型的workload/benchmark上与CPU/GPU/A^3/谷歌的TPU进行比较,在牺牲较少精确度的情况下,实现能效的大幅优化(相比于GPU的能效在几何平均值上提升了58.1×)对比A^3,ELSA的并行度更高,所需面积资源更小。
本文的实现采用了模拟器外接pytorch/tensorflow实现性能测试,并用chisel实现可综合设计,进行面积、功耗的测试。

FACT: FFN-Attention Co-optimized Transformer Architecture with Eager Correlation Prediction

ISCA2023
这同样是一篇关于transformer加速器的文章,但可以算的上是之前众多相关工作的集大成者,文章论证给人感觉很充分,图示也很生动形象,无论在写作上还是在设计上都很值得学习。
本文解决的主要问题是:之前的相关工作几乎都只针对transformer模型的attention计算部分进行加速,而attention计算部分只有在输入序列长度很大时才占据主要部分,本文提出了一种算法-硬件协同优化设计,可以针对transformer模型的三个主要模块,都进行加速。本文首先介绍了这种被称为eager prediction(EP)的算法,其原理大致是Q、K、V矩阵进行稀疏预测,避免不必要的运算,并根据预测的注意力进行混合精度分配,提高运算的吞吐量。本文在硬件上也实现了对应的优化,包括但不限于:将乘法变为移位加运算,使用乱序调度器消除预测延迟,通过对角线存储模式避免混合精度访存冲突等。最后,得到相比于V100有94.98×的能效提升。
本文的设计进行了RTL实现,通过pytorch跑benchmark得到trace,并将trace灌入RTL,得到性能、功耗、延迟、面积等数据,本设计对RTL通过DCG、ICC等工具进行布局布线,再用PT和VCS实现后仿,使得性能和功耗等数据都更加准确可靠。
总的来说,笔者认为本文在transformer加速器的系列工作中,算是质量很高的一篇工作,值得重点关注。

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值