你的位置:做手机小程序需要多少钱 > 联系我们 > 小程序开发公司 H100期骗率飙升至75%!英伟达亲身下场FlashAttention三代升级,比表率可贵力快16倍

小程序开发公司 H100期骗率飙升至75%!英伟达亲身下场FlashAttention三代升级,比表率可贵力快16倍

发布日期:2024-07-18 16:03    点击次数:185

  开头:量子位  

  时隔一年,FlashAttention-3还是全标的升级。考试速率擢升1.5-2倍,FP16下狡计糊涂量高达740TFLOPs/s,达表面最大糊涂量75%,更充分期骗狡计资源,此前只可作念到35%。FP8下速率接近1.2PFLOPs/s!同期极端也进一步减小,FP8下的极端比表率Attention减少2.6倍。

  大模子考试推理神作,又更新了!

  主流大模子齐在用的FlashAttention,刚刚升级第三代。

  时隔一年,FlashAttention-3还是全标的升级。

  考试速率擢升1.5-2倍,FP16下狡计糊涂量高达740TFLOPs/s,达表面最大糊涂量75%,更充分期骗狡计资源,此前只可作念到35%。

  FP8下速率接近1.2PFLOPs/s!

  同期极端也进一步减小,FP8下的极端比表率Attention减少2.6倍。

  况且这一次,不再是一作Tri Dao单打独斗,FlashAttention-3径直和英伟达、Meta、谷歌等团结,针对最强芯片H100特地作念优化。

  英伟达CUTLASS团队和cuDNN团队,齐径直为该接头提供复旧。

  同期和前作同样,FlashAttention-3也将开源,PyTorch和Hugging Face中辘集成。

  作家之一Vijay Thakkar容或暗示:

也曾在FA2发布时,我就说过这句话。今天,我想再说一次:

看到CUTLASS和CuTe被用来开让Tensor Core奋起直追的新算法,确切泰裤辣。

  前Stable Diffusion雇主Emad也相当海涵这一进展,他揣测使用FlashAttention-3,能将4090的FP8狡计糊涂量推升到700+TFLOPs。

  充分期骗Hopper架构秉性

上期龙头05,龙头最近10期分别是06 04 02 01 03 07 03 03 01 05,奇偶比为7:3,综合分析,本期龙头参考:03。

赛后,阿根廷队核心梅西接受了媒体采访。他表示:“这届美洲杯的比赛条件非常艰难,场地状况不佳,气温也很高。但我现在正在尽情享受自己职业生涯中的最后一届美洲杯,就像当初享受最后一届世界杯一样,这是我最后的战斗!”

  自初代发布以来,FlashAttention还是使大模子速率提高了4-8倍,但还有一个缺憾:尚未充分期骗当代 GPU。

  针对英伟达H100倍后的Hopper架构新秉性,三代进行了特地优化。

  扫数系列的中枢念念路,是IO感知优化和分块处理。

  作家觉得,传统的可贵力机制成果低的原因,在处理长序列时,会出现内存侦查操作常常,以及算法复杂度指数级暴增这两大问题。

  FlashAttention通过IO感知优化将数据从较大但逐步的高带宽内存(HBM)加载到较小但更快的片上内存(SRAM),在SRAM中履行狡计,减少了内存读写操作的次数。

  分块处理则是将输入序列分红多年少块,每次只处理一个小块的数据。这种要津使得每次处理的数据量减少,从而镌汰了内存使用和狡计复杂度。

  这么一来,两个缺陷问题就得到了料理,这两大中枢念念想也在本次的FlashAttention-3中得到了接管。

  可是,第一代的FlashAttention也留传住了并行性不够强、责任分区画分分歧理,以及非矩阵乘法较多(GPU狡计单位处理矩阵乘法比非矩阵速率更快)的问题。

  针对这一问题,第二代FlashAttention通过重写softmax,减少了再行缩放操作、畛域检讨和因果屏蔽操作的次数,使得大部分狡计结合在矩阵乘法上。

  另外,FlashAttention-2引入了序列长度维度上的并行化,并针对责任在线程块之间的分拨进行了优化,GPU期骗成果更高了。

  不错说前两代当中,作家一直坚执着充分期骗硬件秉性这一念念路,但站在今天的视角来看,对硬件的挖掘仍然不够充分。

  到了此次的FlashAttention-3,由于是径直和英伟达官方团结,对英伟达Hopper架构秉性的长入愈加透顶,软硬件之间的协同进一步增强了。

  FlashAttention-3的期间文告披露,为了充分匹配Hopper架构,团队主要作念了三方面的期间升级。

  率先,Hopper架构的一个伏击秉性是Tensor Core的异步性,FlashAttention-3针对性地提倡了一种异步款式。

  具体来说,FlashAttention-3引入了一种“出产者(Producer)-破钞者(Consumer)”的编程模子,将可贵力的阴盘算分为两个脚色。

“出产者”崇敬将数据从HBM异步加载到片上分享内存(SMEM)。这个进程主要期骗了Hopper GPU的张量内存加快器(TMA),不错在不陡立CUDA中枢的情况下进行数据传输。

破钞者径直从分享内存读取数据,并使用Tensor Core履行矩阵乘法等狡计密集型任务。由于分享内存的侦查蔓延远低于全局内存,破钞者不错快速获取所需数据,擢升狡计成果。

  为了竣事脚色的离别,作家引入了warp特地化期间,用不同的warp分别匹配出产者和破钞者,让两者不错并行履行。

  这其中期骗了Hopper架构的动态warp寄存器分拨秉性,通过setmaxnreg指示优化了寄存器资源的期骗。

  为了进一步提高GPU的期骗率,作家又提倡了一种“乒乓调和”计谋,让一个warp组履行矩阵乘法时,另一个warp组履行softmax,从而竣事狡计的疏浚。

  具体讲,FlashAttention-3使用CUDA的同步原语限度不同warp组之间的履行法例,做手机小程序需要多少钱让不同warp组分别履行两种运算,然后像乒乓球同样瓜代开动。

  第二大期间秉性,是warp组里面GEMMs和softmax的疏浚,中枢奥义是再行安排狡计的履行法例以提高GPU期骗率。

  与乒乓调和不同,这里的狡计重排处理的是warp组里面的疏浚,而乒乓调和更海涵组间融合。

  竣事款式上,FlashAttention-3提倡了一种两阶段GEMM-softmax活水线决策,以冲突不同操作之间的数据依赖。

第一阶段,刻下迭代(iteration)的softmax操作与下一个迭代的Q·K^T矩阵乘法疏浚履行。

第二阶段,刻下迭代的P·V矩阵乘法与下一个迭代的softmax操作疏浚履行。

  通过引入特地的寄存器和分享内存缓冲区,FlashAttention-3竣事了跨迭代的数据传递和重用。

  在每个迭代中,Q·K^T的终结率先存储在名为S_cur的缓冲区中,用于刻下迭代的softmax狡计,同期异设推行下一个迭代的Q·K^T矩阵乘法,终结存储在名为S_next的缓冲区中。

  在履行刻下迭代的P·V矩阵乘法时,异设推行下一个迭代的softmax操作,并更新S_cur和S_next缓冲区。

  第三项更新,是用更低的FP8精度替代FP16。

  本色上,镌汰数值精度是一种常见的优化计谋,不错权臣提高GPU的狡计糊涂量和能效,Hopper GPU也引入了FP8精度的Tensor Core复旧。

  可是,径直将可贵力狡计从FP16鬈曲为FP8可能会引入较大的精度耗费。

  另外,FP8 Tensor Core对输入数据的布局也有特定的要求(K维度攀附),厄运的是,可贵力狡计中的输入数据存储式样(头维度攀附)并不适合这么的要求。

  是以FlashAttention-3率先引入了一系列内存布局鬈曲期间,动态转置V矩阵的块,改变其攀附款式,从而适配FP8 Tensor Core的布局要求。

  在此基础之上,为了得到更高的狡计精度,FlashAttention-3又接收了分块量化和非关联处理期间。

  传统的量化要津无为对扫数矩阵使用一个团结的缩放因子(per-tensor quantization),无法很好地适合不同区域的数值规模。

  FlashAttention-3则接收了分块量化(block-wise quantization)的计谋,为每个块单独建造缩放因子,更好地捕捉局部的数值分散。

  非关联处理(incoherent processing)期间则是通过飞速正交矩阵对输入数据进行旋转,龙套不同块之间的关联性,减少许化极端的传播。

  这两项期间的结合使得FlashAttention-3在FP8精度下取得了更高的狡计精度,权臣优于传统的量化要津。

  终结,与基于传统量化要津的FP8竣事比拟,FlashAttention-3的使得精度提高了2.6倍。

  比表率Attention快16倍

  以上即是FlashAttention-3在充分接头Hopper架构秉性后作念出的三大更新,针对更新后的发扬,作家主要进行了3方面测试。

可贵力基准测试

消融实验

FP8可贵力准确性测试

  率先来看可贵力基准测试。

  通过改变序列长度(512、1k、……16k),并建造批大小以确保总token数为16k。接头东说念主员将避讳维度建造为2048,头维度建造为64、128或258,狡计前向传播、后向传播。

  对比表率Attention、FlashAttention-2、Triton、cuDNN和FlashAttention-3,在H100 80GB SXM5上FP16的开动时期。

  FlashAttention-3的前向传播比FlashAttention-2快1.5-2倍,后向传播快1.5-1.75倍。

  与表率Attention比拟,FlashAttention-3的速率快了3-16倍。

  关于中长序列(1k以上),FlashAttention-3致使向上了特地为H100优化的cuDNN。

  在消融实验中,通过对非因果FP16 FlashAttention-3进行了2阶段WGMMA-softmax活水线和warp特殊化的消融接头,参数固定为{batch, seqlen, nheads, hdim} = {4, 8448, 16, 128}。

  终结阐述,FlashAttention-3改革带来了权臣加快,从570擢升到661。

  另外,因为对FlashAttention的数值极端感酷爱,接头团队还将FlashAttention-2、FlashAttention-3和表率Attention进行了比较。

  为了模拟LLMs中的异常特征和激活,接头团队生成了Q、K、V的条目,分散为:N(0,1)+N(0,100)⋅Bernoulli(0.001)

  也即是说,每个条目齐效力均值为0、表率差为1的正态分散,但关于0.1%的条目,加多了一个颓丧的项,其表率差为10。然后测量均方根极端(RMSE)。

  终结披露,在FP16中,由于中间终结(softmax)保留在FP32中,FlashAttention-2和FlashAttention-3的RMSE比表率Attention减少1.7倍。

  FP8的表率Attention使用每个张量的缩放,matmul累加器在FP32中,中间softmax终结保留在FP16中。由于块量化和非关联处理,FP8中的FlashAttention-3比这个基线更准确2.6倍。

  终末,论文还暗示当今责任专注于Hopper架构,后续将引申到其他硬件。

  除了英伟达为接头提供了期间复旧外,Meta、Together AI和普林斯顿大学为接头提供了狡计复旧。

  本文开头:量子位,原文标题:《H100期骗率飙升至75%!英伟达亲身下场FlashAttention三代升级,比表率可贵力快16倍》

  风险教导及免责要求

  阛阓有风险,投资需严慎。本文不组成个东说念主投资建议,也未研究到个别用户特殊的投资办法、财务景色或需要。用户应试虑本文中的任何主张、不雅点或论断是否适合其特定景色。据此投资,背负自诩。

海量资讯、精确解读,尽在新浪财经APP

背负剪辑:欧阳名军 小程序开发公司