[发明专利]用于稀疏-密集矩阵乘法的加速器在审
申请号: | 201910227563.7 | 申请日: | 2019-03-25 |
公开(公告)号: | CN110321525A | 公开(公告)日: | 2019-10-11 |
发明(设计)人: | S·纳拉亚纳穆尔蒂;N·R·萨蒂什;A·苏普鲁恩;K·J·珍妮克 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 何焜;黄嵩泉 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 稀疏 矩阵乘法 指令 矩阵 非零元素 取出 输出矩阵 加速器 稀疏度 稀疏源 源矩阵 电路 解码 解码电路 输出元素 指令解码 操作码 累加和 处理器 字段 | ||
所公开的实施例涉及用于稀疏‑密集矩阵指令的加速器。在一个示例中,一种用于执行稀疏‑密集矩阵乘法指令的处理器,包括:取出电路,用于取出稀疏‑密集矩阵乘法指令,稀疏‑密集矩阵乘法指令具有用于指定操作码、密集输出矩阵、密集源矩阵、和具有非零元素的稀疏度的稀疏源矩阵的字段,稀疏度小于一;解码电路,用于对所取出的稀疏‑密集矩阵乘法指令解码;执行电路,用于执行经解码的稀疏‑密集矩阵乘法指令以对于所指定的稀疏源矩阵的行M和列K处的每个非零元素进行以下操作:生成该非零元素与所指定的密集源矩阵的行K和列N处的每个对应密集元素的乘积;以及生成每个所生成的乘积与所指定的密集输出矩阵的行M和列N处的对应输出元素的先前值的累加和。
技术领域
本公开涉及处理逻辑、微处理器以及相关联的指令集架构的领域,并且更具体地涉及用于稀疏-密集矩阵指令的加速器。
背景技术
深度学习是一类机器学习算法。诸如深度神经网络的深度学习架构已经被应用于包括计算机视觉、语音识别、自然语言处理、音频识别、社交网络过滤、机器翻译、生物信息学和药物设计等的领域。
用于深度学习的两种工具推理和训练趋向于低精度算术。使深度学习算法和计算的吞吐量最大化可以帮助满足深度学习处理器的需求,深度学习处理器例如在数据中心中执行深度学习的那些处理器。
稀疏-密集矩阵乘法(SDMM)操作在深度学习情境中是有用的。但是,传统的CPU和GPU指令集架构需要具有相同密度的对称输入,这限制了通过利用稀疏输入矩阵的稀疏度来获得性能优势的能力。
附图说明
在所附附图中以示例方式而非限制方式来图示本发明,在附图中,类似的附图标记指示类似的要素,其中:
图1是图示根据一些实施例的用于执行诸如虚拟神经网络指令(SDMVNNI)的稀疏-密集矩阵乘法(SDMM)指令的处理组件的框图;
图2A是图示根据一些实施例的用于处理稀疏-密集矩阵乘法(SDMM)指令的数据流的框图;
图2B是图示根据一些实施例的用于处理稀疏-密集矩阵乘法(SDMM)指令的数据流的框图;
图3是图示根据一些实施例的用于处理稀疏-密集矩阵乘法(SDMM)指令的执行电路的框图;
图4是图示根据一些实施例的用于处理稀疏-密集矩阵乘法(SDMM)指令的执行电路的框图;
图5是图示根据一些实施例的用于处理稀疏-密集矩阵乘法(SDMM)指令的执行电路的伪代码;
图6是图示根据一些实施例的由处理器执行稀疏-密集矩阵乘法(SDMM)指令的过程流程图;
图7是图示根据一些实施例的稀疏-密集矩阵乘法(SDMM)指令的格式的框图;
图8A-8B是图示根据一些实施例的通用向量友好指令格式及其指令模板的框图;
图8A是图示根据一些实施例的通用向量友好指令格式及其A类指令模板的框图;
图8B是图示根据一些实施例的通用向量友好指令格式及其B类指令模板的框图;
图9A是图示根据一些实施例的示例性专用向量友好指令格式的框图;
图9B是图示根据本发明的一个实施例的专用向量友好指令格式中构成完整操作码字段的的字段的框图;
图9C是图示根据本发明的一个实施例的专用向量友好指令格式中构成寄存器索引字段的的字段的框图;
图9D是图示根据本发明的一个实施例的专用向量友好指令格式中构成扩充操作字段的字段的框图;
图10是根据本发明的一个实施例的寄存器架构的框图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910227563.7/2.html,转载请声明来源钻瓜专利网。