【论文解析】基于脉动阵列的层融合注意力模型加速器结构

news2024/11/15 11:37:48

作者及发刊详情

刘晓航, 姜晶菲, 许金伟. 基于脉动阵列的层融合注意力模型加速器结构[J]. Computer Engineering & Science/Jisuanji Gongcheng yu Kexue, 2023, 45(5).

摘要

正文

主要工作贡献

1))提出了硬件协同控制的注意力机制矩阵分块方法

2)提出了基于双步softmax函数分解计算的层融合计算方法,使softmax函数能够更好地适配块矩阵计算

3)设计了基于细粒度调度的层融合注意力机制计算流程,将提出的计算分块方法和softmax函数分解方法应用于注意力机制计算中

4)采用高级综合语言 HLS(HighLevelSynthesis)实现了基于脉动阵列的层融合注意力模型加速器结构。采用双脉动阵列结构和乒乓结构来减小计算资源延迟和增加吞吐量。

实验环境

实验验证平台:

选用模型:

训练数据集:

推理任务

工具:

实验评估

注意力加速器结构与配置了IntelCorei7-8700K 处理器的CPU 实现相比,延迟加速了4.91倍;与 GeForceGTX1080Ti上的 GPU 实现相比,能效提高了1.24倍。

设计思想

硬件协同控制的注意力机制矩阵分块

为了减少存储资源的利用,考虑到无论注意力模型怎么变化,分在每个head上的权重维度是不变,因此可以将注意力机制的矩阵Q、K、V 以及中间生成的矩阵S 全部分成了64×64大小的矩阵块。
在这里插入图片描述

分块操作的softmax函数分解计算

在这里插入图片描述

细粒度调度的层融合注意力计算

在这里插入图片描述

硬件设计

  • 采用2个SA(systolic array)作为加速器的主要计算模块,分别执行 Q K T QK^T QKT、每个元素的指数操作,以及 S V SV SV、指数和操作。
  • 每个SA由NxN个PE阵列组成,每个PE是实现乘累加功能且自带寄存器,SA0的PE中配置求指数逻辑
  • 采用大量的FIFO保持脉动阵列的高流水性,FIFO的数量取决于N,大小取决于缓冲区Q0的大小
  • FIFO后设置两个并行的求和逻辑,求解指数和
  • PEarray由64个乘法阵列组成,用来并行计算矩阵Z与向量sum的除法。
  • 本设计的缓冲区采用乒乓结构来加速流水计算
    在这里插入图片描述

参考文献

针对transformer的attention计算的较为简单的加速硬件设计。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2089840.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据仓库系列14:数据清洗和转换的常见方法有哪些?

数据仓库的建立不仅仅是数据的简单存储,更是对数据的深度利用。而数据清洗和转换是确保数据质量和一致性的重要环节。在这篇文章中,我们将深入探讨数据清洗和转换的常见方法,帮助你在数据仓库中更高效地处理数据。 目录 为什么数据清洗和转换…

任务通知笔记

1、任务通知简介 任务通知 用来通知任务的,任务控制块中的结构体成员变量ulNotifiedValue就是这个通知值。 任务通知与队列、信号量和时间标志组的区别 任务通知的优势及劣势 优势 效率更高:使用任务通知向任务发送事件或者数据比使用队列、事件标志…

C语言典型例题56

《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 例题4.8 将范围为100~200的不能被3整除的数输出。 代码&#xff1a; //《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 //例题4.8 将范围为100~200的不能被3整除的数输出。//#include <stdio.h>…

您下一款项目管理工具何必是它,10款软件推荐

国内外主流的 10 款项目管理系统对比&#xff1a;PingCode、Worktile、Teambition、明道云、泛微E-cology、Asana、Trello、Monday.com、ClickUp、Wrike。 在项目管理的世界里&#xff0c;选择合适的管理工具似乎是一个令人头疼的问题。你是否经常在众多选项中感到迷茫&#xf…

AI如何改变科学与数学领域:陶哲轩演讲解析

引言 在当今技术迅猛发展的时代&#xff0c;人工智能&#xff08;AI&#xff09;正逐步渗透到各个领域&#xff0c;其对科学与数学领域的影响尤为引人关注。菲尔茨奖获得者陶哲轩最近在一场演讲中深刻探讨了AI在科学与数学中的应用及其潜在的革命性影响。本文将基于陶哲轩的演…

Goby 漏洞发布|Nacos Jraft 服务文件读取漏洞【已复现】

漏洞名称&#xff1a;Nacos Jraft 服务文件读取漏洞 English Name&#xff1a;Nacos Jraft Services File Read Vulnerability CVSS core: 5.0 漏洞描述&#xff1a; NACOS 是阿里巴巴推出来的一个新开源项目&#xff0c;是一个更易于构建云原生应用的动态服务发现、配置管…

J.U.C Review - Java线程间的通信

文章目录 Java线程间的通信无锁的程序锁与同步等待/通知机制信号量管道 其它通信相关join方法join 方法概述底层实现细节小结 sleep方法1. Thread.sleep 方法详解2. sleep 和 wait 的主要区别3. 实际代码示例 ThreadLocal类ThreadLocal 的基本概念ThreadLocal 的主要方法Thread…

STM32——看门狗(独立/窗口)

程序运行的保障措施&#xff0c;需要在程序中定期喂狗实现&#xff0c;如果某次没有喂&#xff0c;表示程序出现卡死或者其他状态&#xff0c;此时看门狗就会自动复位电路&#xff0c;防止程序长时间卡死。相当于自动复位电路。 独立看门狗&#xff1a;有单独的时钟LSI 窗口看…

谷歌发布新AI GameNGen:AI也能实时生成游戏画面!

有关 GameNGen 的帖子 又有一则消息直接让全网为之狂欢&#xff01;Google 推出了一个实时AI生成的游戏引擎 GameNGen。目前 GameNGen 生成3D游戏的祖宗《BOOM》的视频已经火遍 X 平台&#xff0c;在视频中&#xff0c;游戏画面每一个画面都是由AI实时生成&#xff0c;可以说是…

应用层协议(下)Https加密Http的秘密(含逻辑图解 简单易学 通俗易懂!)

绪论​ “如今我努力奔跑&#xff0c;不过是为了追上那个曾经被寄予厚望的自己 —— 约翰丶利文斯顿”&#xff0c;本章承接上章Http&#xff0c;没看过强烈建议看后再看本章&#xff0c;本章主要就是学习Https是干什么的并且去底层的学习Http的原理&#xff0c;将会讲到Https的…

pdf转dwg怎么转换?5个软件教你轻松转换文件

pdf转dwg怎么转换&#xff1f;5个软件教你轻松转换文件 将PDF文件转换为DWG格式可以帮助你将静态的图像和矢量图形转换为可编辑的CAD图纸。这在建筑、工程和设计领域尤为重要&#xff0c;因为它可以让你在CAD软件中进一步编辑和利用这些图纸数据。以下是五款能够帮助你轻松将P…

查看显卡cuda版本

1.命令行窗口 打开cmd&#xff0c;输入下列语句 nvidia-smi 如下图红框所示&#xff1a; 2.查看cuda版本&#xff0c;打开英伟达控制面板&#xff0c;桌面右键或者系统右下角&#xff0c;然后点击系统信息&#xff0c;之后点击组件

锻炼思考力的有效实践

1. 意识觉醒 意识觉醒是提升思考力最重要的一个点&#xff0c;我认为。只要形成了这种意识&#xff0c;就已经成功了一半。 很多同学思维能力没有上去&#xff0c;是没有意识到思考力这个概念&#xff0c;只是机械地做事情&#xff0c;做事情&#xff0c;做事情……每次都在同…

C++ Vector容器操作

vector赋值操作 提供三种方式进行赋值 assign函数是STL中提供的一个成员函数&#xff0c;assign() 函数可以重新定义向量的内容&#xff0c;可以用于设置特定数量的重复元素&#xff0c;或者直接用另一个容器的元素来替换当前向量的元素。 //直接赋值&#xff0c;类似于拷贝 …

软考高级证书拿到手了,怎么评职称?

软考&#xff0c;是以考代评&#xff0c;以一个考试来代替提交若干材料的评职称的过程。 但是评聘是分开的。就是指评审或考试后取得软考证书之后&#xff0c;也需要你们单位聘任你&#xff0c;才可以享受相应职称工资待遇&#xff0c;担任相应专业技术职位。 也就是说&#…

【FPGA】入门学习路线

文章目录 编程语言语法RTL设计RTL验证学习方法仿真工具 基础知识&#xff08;1&#xff09;专业基础课&#xff08;2&#xff09;FPGA相关专业知识&#xff08;3&#xff09;FPGA开发流程 开发工具动手实验 编程语言 硬件描述语言HDL&#xff08;Hardware Description Languag…

项目型企业管理系统有哪些?这10款值得研究

国内外主流的 10 款企业项目管理系统对比&#xff1a;PingCode、Worktile、泛微 e-office、金蝶云星瀚、用友项目管理软件、Jira、Monday.com、Asana、Trello、Basecamp。 在面对复杂的项目管理需求时&#xff0c;许多企业经常感到手头的工具不足以支撑高效的运作。有效的项目型…

代码随想录刷题day17丨654.最大二叉树,617.合并二叉树,700.二叉搜索树中的搜索,98.验证二叉搜索树

代码随想录刷题day17丨654.最大二叉树&#xff0c;617.合并二叉树&#xff0c;700.二叉搜索树中的搜索&#xff0c;98.验证二叉搜索树 1.题目 1.1最大二叉树 题目链接&#xff1a;654. 最大二叉树 - 力扣&#xff08;LeetCode&#xff09; 视频讲解&#xff1a;又是构造二叉…

【GeoscenePro】Pro连接本机Portal

打开自己的portal下面框住的就是链接的地址 证书的话点击是即可

嵌入式数据库

概述 1.作用&#xff1a;存储大量数据&#xff0c;专业存储数据 存储在内存&#xff08;数组&#xff0c;变量&#xff0c;链表&#xff09;上的特点&#xff1a;程序运行结束&#xff0c;或者掉电&#xff0c;数据会丢失。 存储在硬盘&#xff08;文件&#xff09;上的特点…