技术新讯 > 计算推算,计数设备的制造及其应用技术 > 稀疏算子生成方法、装置、电子设备和计算机可读介质与流程  >  正文

稀疏算子生成方法、装置、电子设备和计算机可读介质与流程

  • 国知局
  • 2024-07-31 22:37:56

本公开的实施例涉及计算机,具体涉及稀疏算子生成方法、装置、电子设备和计算机可读介质。

背景技术:

1、目前,随着神经网络模型的不断发展,尤其是以chatgpt的语言大模型的出现,神经网络模型的大小在不断地扩大,已经达到了现有计算资源难以负担的程度。因此,模型压缩技术成为了研究领域的一大热点,其中,稀疏化技术是模型压缩技术重要的一枝,稀疏化将神经网络模型中的稠密算子进行稀疏化剪枝,从而达到减少计算量,减少内存占用的效果。目前,主要采用人工设计的稀疏模式对应的稀疏算子库对稠密算子进行稀疏剪枝,或采用基于模版或者完全自动的稀疏模式对应的算子库对稠密算子进行优化,得到稀疏算子。

2、然而,当采用上述方式生成稀疏算子时,经常会存在如下技术问题:

3、不同稀疏模式及其对应的稀疏算子库往往是由人工设计、开发、优化得到的,采用了不同稀疏模式的各种稀疏算子库针对不同的后端硬件,采用了不同的优化以及实现方式,各个稀疏算子库的性能有所不同。例如,条带状稀疏模式tw的算子库是手动针对tensorcore gpu进行的调优。导致所设计的稀疏模式对应的算子库对不同的后端硬件适用性较差。当采用基于模版或者完全自动的稀疏模式对应的算子库对算子进行优化,由于不同的后端硬件的多层级并行度以及存储器的层次架构不同,当不同的后端硬件采用相同的稀疏模式模板,导致所生成的稀疏算子库性能较差。

4、该背景技术部分中所公开的以上信息仅用于增强对本发明构思的背景的理解,并因此,其可包含并不形成本国的本领域普通技术人员已知的现有技术的信息。

技术实现思路

1、本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

2、本公开的一些实施例提出了稀疏算子生成方法、装置、电子设备和计算机可读介质,来解决以上背景技术部分提到的技术问题中的一项或多项。

3、第一方面,本公开的一些实施例提供了一种稀疏算子生成方法,该方法包括:获取目标稠密算子;对上述目标稠密算子进行解析处理,得到稠密循环结构信息;对上述稠密循环结构信息进行循环中间表示处理,得到各个循环中间表示信息;基于上述各个循环中间表示信息,生成各个稀疏算子。

4、第二方面,本公开的一些实施例提供了一种稀疏算子生成装置,装置包括:获取单元,被配置成获取目标稠密算子;解析单元,被配置成对上述目标稠密算子进行解析处理,得到稠密循环结构信息;处理单元,被配置成对上述稠密循环结构信息进行循环中间表示处理,得到各个循环中间表示信息;生成单元,被配置成基于上述各个循环中间表示信息,生成各个稀疏算子。

5、第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述第一方面任一实现方式所描述的方法。

6、第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。

7、本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的稀疏算子生成方法,提高了所生成的稀疏算子的适用性,减少了所生成的稀疏算子的内存消耗,缩短了所生成的稀疏算子的运算时间。具体来说,造成所生成的稀疏算子的适用性较差、所生成的稀疏算子的内存消耗较多、运行时间较长的原因在于:不同稀疏模式及其对应的稀疏算子库往往是由人工设计、开发、优化得到的,采用了不同稀疏模式的各种稀疏算子库针对不同的后端硬件,采用了不同的优化以及实现方式,各个稀疏算子库的性能有所不同。例如,条带状稀疏模式tw的算子库是手动针对tensorcore gpu进行的调优。导致所设计的稀疏模式对应的算子库对不同的后端硬件适用性较差。当采用基于模版或者完全自动的稀疏模式对应的算子库对算子进行优化,由于不同的后端硬件的多层级并行度以及存储器的层次架构不同,当不同的后端硬件采用相同的稀疏模式模板,导致所生成的稀疏算子库性能较差。基于此,本公开的一些实施例的稀疏算子生成方法,首先,获取目标稠密算子。由此,可以得到包括稠密循环的稠密算子。然后,对上述目标稠密算子进行解析处理,得到稠密循环结构信息。由此,可以得到上述目标稠密算子中包括的稠密循环结构。之后,对上述稠密循环结构信息进行循环中间表示处理,得到各个循环中间表示信息。由此,可以得到对应各种稀疏模式的各个循环中间表示信息。最后,基于上述各个循环中间表示信息,生成各个稀疏算子。由此,可以得到各个对应上述目标稠密算子的各个稀疏算子。也因为所实现的稀疏算子生成方法所采用的稀疏模式中间表示,是基于稠密算子的循环展开的,并对任意一层循环结构进行循环穿孔,从而能够表示各种现有的稀疏模式,以及全新的稀疏模式,从而能够生成针对各种硬件后端的各种稀疏算子,从而提升了所生成的稀疏算子后端硬件的适用性。还因为所采用的稀疏模式中间表示基于循环的特性,可以更好的利用底层算子编译器,从而可以直接对接各种底层算子编译器生成高效的稀疏算子,从而减少了所生成的稀疏算子的内存消耗,缩短了所生成的稀疏算子的运算时间。

技术特征:

1.一种稀疏算子生成方法,包括:

2.根据权利要求1所述的方法,其中,所述方法还包括:

3.根据权利要求1所述的方法,其中,所述稠密循环结构信息包括至少两层循环结构;以及所述对所述稠密循环结构信息进行循环中间表示处理,得到各个循环中间表示信息,包括:

4.根据权利要求3所述的方法,其中,所述根据所述待变换循环结构,对所述稠密循环结构信息进行条带状稀疏变换处理,得到对应条带稀疏模式的循环中间表示信息,包括:

5.根据权利要求3所述的方法,其中,所述根据所述待变换循环结构,对所述稠密循环结构信息进行细粒度条带状稀疏变换处理,得到对应细粒度条带稀疏模式的循环中间表示信息,包括:

6.根据权利要求5所述的方法,其中,所述根据所述待变换循环结构,对所述稠密循环结构信息进行向量稀疏变换处理,得到对应向量稀疏模式的循环中间表示信息,包括:

7.根据权利要求3所述的方法,其中,所述根据所述待处理循环结构信息,对所述稠密循环结构信息进行非结构化稀疏变换处理,得到对应非结构化稀疏模式的循环中间表示信息,还包括:

8.一种稀疏算子生成装置,包括:

9.一种电子设备,包括:

10.一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述的方法。

技术总结本公开的实施例公开了稀疏算子生成方法、装置、电子设备和计算机可读介质。该方法的一具体实施方式包括:获取目标稠密算子;对目标稠密算子进行解析处理,得到稠密循环结构信息;对稠密循环结构信息进行循环中间表示处理,得到各个循环中间表示信息;基于各个循环中间表示信息,生成各个稀疏算子。该实施方式提高了所生成的稀疏算子的硬件适用性,减少了所生成的稀疏算子的内存消耗,缩短了了所生成的稀疏算子的运算时间。技术研发人员:冷静文,过敏意,沈小舜,管乐,于昌明受保护的技术使用者:上海期智研究院技术研发日:技术公布日:2024/7/25

本文地址:https://www.jishuxx.com/zhuanli/20240730/193899.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。