神经网络的执行方法及相关装置与流程
- 国知局
- 2024-08-19 14:23:17
本申请涉及电数字数据处理,特别是一种神经网络的执行方法及相关装置。
背景技术:
1、人工智能(artificial intelligence,ai)芯片一般使用并行架构的设计来实现高性能,神经网络在ai芯片上执行时,会根据其节点任务之间的相互依赖关系展开多个执行流,有依赖关系的节点顺序执行,互相独立的节点尽量让它们能够并行执行,以获得更好的性能。
2、目前展开执行流时,为了保证其执行顺序需要申请多个信号量,在实际应用中,由于神经网络可能存在成千上万的节点任务,用户需要手动管理信号量不相互影响,编程效率较低且用户编程体验不佳。
技术实现思路
1、有鉴于此,本申请提供了一种神经网络的执行方法及相关装置,设置了逻辑信号量的概念,可以在保证神经网络执行正确的情况下,无需再手动对大量的物理信号量进行管理,大大降低用户编程的难度并提升了用户的编程体验。
2、第一方面,本申请实施例提供了一种神经网络的执行方法,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务,所述方法包括:
3、在申请神经网络的资源的过程中,分配所述逻辑信号量,所述神经网络包括第一节点任务、第二节点任务、第三节点任务和第四节点任务,所述第二节点任务和所述第三节点任务依赖于所述第一节点任务,所述第四节点任务依赖于所述第二节点任务和所述第三节点任务,所述第二节点任务和所述第三节点任务相互独立,所述逻辑信号量包括预设条件信号任务和预设条件等待任务;
4、在对所述神经网络进行构建、实例化以及执行的过程中,以第一执行流和第二执行流执行所述神经网络,所述第一执行流依次包括所述第一节点任务、所述预设条件信号任务、所述第二节点任务、所述预设条件等待任务和所述第四节点任务,所述第二执行流依次包括所述预设条件等待任务、所述第三节点任务和所述预设条件信号任务;
5、在所述第一执行流中,所述预设条件信号任务关联第一物理信号量的第一条件信号任务,所述预设条件等待任务关联所述第二物理信号量的第二条件等待任务;在所述第二执行流中,所述预设条件信号任务关联第二物理信号量的第二条件信号任务,所述预设条件等待任务关联所述第一物理信号量的第一条件等待任务。
6、第二方面,本申请实施例提供了一种神经网络的执行装置,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务,所述装置包括:
7、分配单元,用于在申请神经网络的资源的过程中,分配所述逻辑信号量,所述神经网络包括第一节点任务、第二节点任务、第三节点任务和第四节点任务,所述第二节点任务和所述第三节点任务依赖于所述第一节点任务,所述第四节点任务依赖于所述第二节点任务和所述第三节点任务,所述第二节点任务和所述第三节点任务相互独立,所述逻辑信号量包括预设条件信号任务和预设条件等待任务;
8、执行单元,用于在对所述神经网络进行构建、实例化以及执行的过程中,以第一执行流和第二执行流执行所述神经网络,所述第一执行流依次包括所述第一节点任务、所述预设条件信号任务、所述第二节点任务、所述预设条件等待任务和所述第四节点任务,所述第二执行流依次包括所述预设条件等待任务、所述第三节点任务和所述预设条件信号任务;在所述第一执行流中,所述预设条件信号任务关联第一物理信号量的第一条件信号任务,所述预设条件等待任务关联所述第二物理信号量的第二条件等待任务;在所述第二执行流中,所述预设条件信号任务关联第二物理信号量的第二条件信号任务,所述预设条件等待任务关联所述第一物理信号量的第一条件等待任务。
9、第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面任一方法中的步骤的指令。
10、第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
11、第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
12、可见,通过上述神经网络的执行方法及相关装置,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务,首先,在申请神经网络的资源的过程中,分配所述逻辑信号量,所述神经网络包括第一节点任务、第二节点任务、第三节点任务和第四节点任务,所述第二节点任务和所述第三节点任务依赖于所述第一节点任务,所述第四节点任务依赖于所述第二节点任务和所述第三节点任务,所述第二节点任务和所述第三节点任务相互独立,所述逻辑信号量包括预设条件信号任务和预设条件等待任务;接着,在对所述神经网络进行构建、实例化以及执行的过程中,以第一执行流和第二执行流执行所述神经网络,所述第一执行流依次包括所述第一节点任务、所述预设条件信号任务、所述第二节点任务、所述预设条件等待任务和所述第四节点任务,所述第二执行流依次包括所述预设条件等待任务、所述第三节点任务和所述预设条件信号任务;在所述第一执行流中,所述预设条件信号任务关联第一物理信号量的第一条件信号任务,所述预设条件等待任务关联所述第一物理信号量的第一条件等待任务;在所述第二执行流中,所述预设条件信号任务关联第二物理信号量的第二条件信号任务,所述预设条件等待任务关联所述第二物理信号量的第二条件等待任务。可以在保证神经网络执行正确的情况下,无需再手动对大量的物理信号量进行管理,大大降低用户编程的难度和提升用户的编程体验。
技术特征:1.一种神经网络的执行方法,其特征在于,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述预设条件等待任务在其上一个最近的所述预设条件信号任务执行后执行。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述逻辑信号量对应每个神经网络实例化的物理信号量数据列表,每个物理信号量数据列表包括对应实例化过程中,所述逻辑信号量执行的所述预设条件信号任务的次数、神经网络实例标识以及物理信号量的列表,所述物理信号量的列表包括每个物理信号量的物理信号量标识以及所述每个物理信号量的物理信号量状态。
8.一种神经网络的执行装置,其特征在于,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务,所述装置包括:
9.一种电子设备,其特征在于,包括:处理器,存储器,以及一个或多个程序;所述一个或多个程序被存储在所述存储器中,并且被配置成由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
技术总结本申请提供了一种神经网络的执行方法及相关装置,应用于人工智能芯片,所述人工智能芯片配置有逻辑信号量,每个逻辑信号量关联多个物理信号量,支持多个对应的条件等待任务对应一个条件信号任务可以支持多个对应的条件等待任务对应一个条件信号任务,首先,在申请神经网络的资源的过程中,分配所述逻辑信号量,所述逻辑信号量包括预设条件信号任务和预设条件等待任务;接着,在对所述神经网络进行构建、实例化以及执行的过程中,以第一执行流和第二执行流执行所述神经网络。可以在保证神经网络执行正确的情况下,无需再手动对大量的物理信号量进行管理,大大降低用户编程的难度和提升用户的编程体验。技术研发人员:姜维维受保护的技术使用者:珠海市芯动力科技有限公司技术研发日:技术公布日:2024/8/16本文地址:https://www.jishuxx.com/zhuanli/20240819/275012.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。