当前位置: 首页 > news >正文

文献阅读(81)FACT

  • 题目:FACT: FFN-Attention Co-optimized Transformer Architecture with Eager Correlation Prediction
  • 时间:2023
  • 会议:ISCA
  • 研究机构:清华

主要贡献

  • 算法优化:提出了Eager Prediction (EP),预测softmax前重要的部分,跳过不重要的计算,减少QKV的计算量。
  • 使用基于log的加法操作进行预测,减少乘法运算。
  • 通过一个乱序调度器消除预测的延迟,使得预测和计算可以完全流水线化。
  • 通过一种新颖的对角线存储模式避免混合精度FFN中的内存访问冲突。

在这里插入图片描述
如上图所示,transformer中FFN的计算量是更大的,只有token数量足够长时attention的计算量才会超过FFN

在这里插入图片描述
过去的工作只是节约了S=QK的计算量,还不够,这篇论文更进一步,预测完再动态的生成QKV,从而结余QKV的计算量

在这里插入图片描述
Out-of-order QKV Generation Scheduler

  • 输入和预测:输入token矩阵被送入系统,同时EP单元开始工作,预测注意力矩阵。

  • 乱序QKV生成:
    步骤1:EP单元预测第一行的注意力矩阵,确定需要计算的K、V矩阵的列。
    步骤2:PE阵列立即开始为这些列生成K、V矩阵,并将结果存储在临时缓冲区中。
    步骤3:当EP单元预测下一行的注意力矩阵时,PE阵列会计算额外需要的K、V矩阵,同时继续处理之前生成的Q矩阵。
    并行处理:随着EP单元逐行预测注意力矩阵,PE阵列并行地生成QKV矩阵,并根据预测结果动态调整计算顺序。

  • 存储和使用:生成的QKV矩阵以乱序的方式存储在临时缓冲区中,当计算某一行的注意力分数时,直接从缓冲区中读取对应的QKV矩阵。


http://www.mrgr.cn/news/31029.html

相关文章:

  • 一个win32 / WTL下多线程库(CThread类)的使用心得
  • Django Form
  • vue内置方法总结
  • 【eNSP】企业网络架构链路聚合、数据抓包、远程连接访问实验(二)
  • 设计模式-七个基本原则之一-开闭原则 + SpringBoot案例
  • 数据库SQL——连接表达式(JOIN)图解
  • 什么是CSRF攻击,该如何防护CSRF攻击
  • visionpro脚本
  • MySQL 数据库备份与恢复指南
  • 使用反向代理软件frp在局域网内共享上网
  • GAMES202 作业1
  • Acwing Hash表
  • docker 升级步骤
  • Nginx配置虚拟主机
  • 【计算机网络】传输层协议UDP
  • 【Elasticsearch】-图片向量化存储
  • 个人小结(2.0)
  • vue2中字符串动态拼接字段给到接口
  • Android 增加宏开关控制android.bp
  • 推荐五种msvcr71.dll丢失的解决方法,msvcr71.dll为什么会丢失?
  • 使用canal.deployer-1.1.7和canal.adapter-1.1.7实现mysql数据同步
  • 数据库的char 和 varchar 有什么不同
  • java(2)方法的使用
  • ubuntu下使用qt编译QOCI(libqsqloci.so)驱动详解及测试
  • 三维手势 handpose 3D RGB 手势3D建模 三维建模-手势舞 >> DataBall
  • VSCode开发ros程序无法智能提示的解决方法(一)