掌桥专利:专业的专利平台
掌桥专利
首页

应用于AI芯片的计算图简化方法、装置、设备及介质

文献发布时间:2024-01-17 01:21:27


应用于AI芯片的计算图简化方法、装置、设备及介质

技术领域

本发明实施例涉及人工智能芯片技术,尤其涉及一种应用于AI芯片的计算图简化方法、装置、设备及介质。

背景技术

目前在人工智能(Artificial Intelligence,AI)芯片神经网络模型的计算图优化时,由于市场和研究方向慢慢转向对子结构的优化,因此对子结构进行分析的需求也随之增加。

但现有的基于不同硬件及软件架构生成不同计算图表达的方式并不能直观、便利且统一的搜索、匹配子结构,并基于硬件特点对主计算图进行分析,并灵活的折叠简化主计算图,导致当前计算图优化分析及研究的成本增加。

发明内容

本发明实施例提供一种应用于AI芯片的计算图简化方法、装置、设备及介质,以对应用于AI芯片的计算图进行简化。

第一方面,本发明实施例提供了一种应用于AI芯片的计算图简化方法,包括:获取算法模型所对应的主计算图以及待搜索的子计算图,其中,所述主计算图和所述子计算图中分别包含所述算法模型的节点和节点描述;

获取与所述主计算图适配的AI芯片信息,并根据所述AI芯片信息建立与所述主计算图和所述子计算图分别匹配的主结构体和子结构体;

将所述子结构体与所述主结构体进行匹配识别,当确定在所述主结构体中匹配到所述子结构体时获取匹配位置,根据所述AI芯片信息和所述匹配位置对所述主结构体进行折叠获取简化后的主结构体。

第二方面,本发明实施例提供了一种应用于AI芯片的计算图简化装置,包括:

计算图获取模块,用于获取算法模型所对应的主计算图以及待搜索的子计算图,其中,所述主计算图和所述子计算图中分别包含所述算法模型的节点和节点描述;

结构体获取模块,用于获取与所述主计算图适配的AI芯片信息,并根据所述AI芯片信息确定与所述主计算图和所述子计算图分别匹配的主结构体和子结构体;

匹配折叠模块,用于将所述子结构体与所述主结构体进行匹配识别,当确定在所述主结构体中匹配到所述子结构体时获取匹配位置,根据所述AI芯片信息和所述匹配位置对所述主结构体进行折叠获取简化后的主结构体。

第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法。

第四方面,本发明实施例提供了一种计算机可执行指令的存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的方法。

本申请实施例通过获取主计算图和子计算图分别对应的主结构体和子结构体之后,采用抽象后的计算图进行子结构搜索、匹配及折叠,并且支持不同硬件架构,从而简化了计算图的复杂度,降低了分析及研究的成本。

附图说明

图1是本发明实施例一提供的应用于AI芯片的计算图简化方法的流程图;

图2是本发明实施例二提供的应用于AI芯片的计算图简化方法的流程图;

图3是本发明实施例三提供的应用于AI芯片的计算图简化装置的结构示意图;

图4是本发明实施例四提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种应用于AI芯片的计算图简化方法的流程图,本实施例可适用于对计算图进行简化的情况,该方法可以由应用于AI芯片的计算图简化装置来执行,该装置可以由软件和/或硬件的方式实现,应用于AI芯片的计算图简化方法,包括:

步骤S101,获取算法模型所对应的主计算图以及待搜索的子计算图。

具体的说,算法模型可以是神经网络模型或者贝叶斯模型,本实施方式中并不对算法模型的具体类型进行限定。并且可以是通过任意深度学习框架生成与算法模型所对应的主计算图,而通过任意深度学习框架所生成的主计算图可以包括算法模型的节点和节点描述。此时所获取的主计算图具体可以是中间表达的形式,例如:%22=“gather”(%arg60,%19){dimension_numbers=collapsed_slice_dims=dense<0>:tensor<1xi64>,index_vector_dim=1:i64,offset_dims=dense<1>:tensor<1xi64>,start_index_map=dense<0>:tensor<1xi64>,indices_are_sorted=fal se,name=“gather.278”,op_id=7:i64,slice_size=dense<[1,1024]>:tensor<2xi64>,tensor_split=dense<[4,1]>:tensor<1x2xi32>,unique_name=“common20_gather”}。其中,gather是节点的名称,而{}内所包含的内容为节点描述,当然,本实施方式中仅是举例说明,而并不对主计算图中所包含的节点数量,以及节点描述内容进行具体限定。

其中,子计算图可以是经典已知结构的计算图,或者是通用性比较强的用户所选择出来的计算图,并且在子计算图中也会包括算法模型的节点和节点描述,但是子计算图中的节点数量通常不多于主计算图中的节点数量,其具体形式如上述所描述的主计算图的形式大致相同,本实施方式中并不对子计算图的节点数量以及具体形式进行限定。

步骤S102,获取与主计算图适配的AI芯片信息,并根据AI芯片信息建立与主计算图和子计算图分别匹配的主结构体和子结构体。

可选的,获取与主计算图适配的AI芯片信息,并根据AI芯片信息建立与主计算图和子计算图分别匹配的主结构体和子结构体,包括:

对主计算图中的节点描述进行识别,获取与主计算图适配的AI芯片信息,其中,节点描述包括节点类型和节点名称;根据AI芯片信息对主计算图和子计算图分别进行后向遍历计算,建立主结构体和子结构体,其中,主结构体和子结构体中分别包含算法模型的节点、节点描述和节点依赖关系。

其中,本实施方式中在获取到主计算图后会对主计算图中的节点描述进行识别,由于在节点描述中包含了节点名称和节点类型,而由于不同的AI芯片信息支持不同的节点类型,因此在主计算图中的节点类型已知的情况下,根据节点类型和AI芯片信息的对应关系,可以获取到与AI芯片信息适配的主计算图信息,而在AI芯片信息中可以包括AI芯片的类型、基于AI芯片的底层硬件算子信息或硬件参数信息等,本实施方式中并不对AI芯片信息中所包含的具体内容进行限定。并且在获取到AI芯片信息后,可以根据AI芯片的类型对主计算图和子计算图进行后向遍历处理,建立主结构体和子结构体。

需要说明的是,本实施方式在获取与主计算图所对应的主结构体时,具体是按照所确定的遍历方式对主计算图进行后向遍历获取节点依赖关系,并根据节点、节点描述和节点依赖关系构建出初始主结构体。此时所获取的初始主结构体中可能存在冗余信息,因此可以按照指定规则对初始主结构体中非计算类的节点进行删除,以及将指定形式的节点描述进行删除,并基于AI芯片信息进行节点评估计算以获取到最终的主结构体。当然,本实施方式中仅是以获取主结构体的方式进行举例说明,对于获取子结构体的方式与此大致相同,本实施方式中并不对其进行赘述。

步骤S103,将子结构体与主结构体进行匹配识别,当确定在主结构体中匹配到子结构体时获取匹配位置,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体。

可选的,将子结构体与主结构体进行匹配识别,包括:从主结构体中反向遍历寻找与子结构体最后一个节点相同的目标节点;获取目标节点的属性信息以及最后一个节点的属性信息,其中,属性信息中包含关联父节点;当确定目标节点的属性信息中所包含的关联父节点,与最后一个节点的属性信息中所包含的关联父节点完全相同或者存在重合时,则从目标节点依次反向遍历主结构体;判断主结构体中是否存在与子结构体中剩余节点相同并且属性信息也相同的节点,若存在,则确定在主结构体中匹配到子结构体,否则,在主结构体中没有匹配到子结构体。

具体的说,当主结构体中所包含的节点分别为:A B C D E F G H I C D E FG HI C D E F G H IC D E F G H IA DIA,而子结构体中所包含的节点为GHI时,则从主结构体中反向遍历寻找子结构体中最后一个节点I相同的目标节点,在获取到主结构体中倒数第二个位置的目标节点I时,由于在主结构和子结构中分别包含每个节点的描述信息,而描述信息则为节点的属性信息,并且在属性信息中包含关联父节点,因此会判断主结构体中目标节点I与子结构体中最后一个节点I的关联父节点是否完全相同或者存在重复的情况,其中,完全相同是采用的精准匹配,即两者所包含的关联父节点的数量和类型相同的情况下,则确定两个节点匹配;存在重复的情况是采用的粗匹配,即只要子结构体中最后一个节点I的关联父节点,为主结构体中目标节点I的关联父节点的子集,则确定两个节点匹配,当然,用户可以根据简化匹配的实际情况从精准匹配和粗匹配中进行选择,本实施方式中并不对其进行限定。

其中,在确定主结构体中目标节点I与子结构体中最后一个节点I匹配时,则顺序查找主结构体中倒数第三位置的目标节点D,与子结构中下一个节点H是否相同,很明显两者是不相同的,因此也无需再进行关联父节点的比较。此时则重新从主结构体中倒数第二个位置开始反向遍历,直到在倒数第五个位置重新找到新的目标节点I,此时按照上述方式重新进行匹配对比,当确定在主结构体中倒数第五、第六和第七位置的节点GHI与子结构体GHI中各节点的关联父节点分别相同时,则确定在主结构体中匹配到子结构体,并将主结构体中的节点GHI位置标记为第一个匹配位置,当在主结构体中多个位置匹配的子结构体时,则可以获取到多个匹配位置,本实施方式中并不对主结构体中所获取到的匹配位置的数量进行限定。

可选的,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体,包括:将匹配位置的子结构体进行折叠获取折叠主结构体;获取AI芯片信息的硬件参数信息,根据硬件参数信息确定折叠主结构体中各节点的硬件资源信息,其中,硬件资源信息包括存储空间使用量和运行时间评估信息;将各节点的硬件资源信息添加到折叠主结构体中获取简化后的主结构体。

具体的说,本实施方式中,在通过匹配确定出多个匹配位置后,将匹配位置的子结构体进行折叠获取折叠主结构体。例如,在获取到上述主结构中第一个匹配位置后,可以将上述匹配位置处的节点GHI采用一个节点O进行表示,从而实现对主结构体的折叠。同时还会获取AI芯片信息的硬件参数信息,并根据硬件参数信息确定折叠主结构体中各节点的硬件资源信息,其中,硬件资源信息包括存储空间使用量和运行时间评估信息,并将各节点的硬件资源信息添加到折叠主结构体中以获取简化后的主结构体。因此本实施方式中在对计算图进行简化的同时还保留了硬件参数信息,从而进一步便于用户根据简化后的主结构体进行分析调优。

需要说明的是,在采用上述方式进行匹配折叠时,所使用的算法复杂度的计算方式为:假设有图G(V,E),由顶点集V:{v1,v2,v3,......},边集E:{e1,e2,e3,.......}构成,其中,与任意定点vi链接的边ei属于E‘:{e'1,e'2,e'3,.......},故,有图T,S属于G,其中T为主图,S为子图,在T中精确匹配子图S,则有:遍历主图上顶点的复杂度:O(V),判定主图与子图节点的一致性:O(E'+E'log2E'),向量化节点判定后,时间复杂度:O(E'log2E'),故,当前算法复杂度为:O(VE'log2E')。当然,本实施方式中仅是举例说明,而并不对匹配折叠时算法复杂度的具体计算方式进行限定。

可选的,当确定子结构体的数量为多个时,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体之后,还包括:

当确定主结构体中的多个子结构体之间存在关联关系时,采用非克隆方式将匹配位置的子结构体采用指定节点进行表示,以获取更新后的主结构体;将其余待匹配的子结构体中与匹配位置的子结构体关联的节点采用指定节点进行替换,以获取更新后的其余待匹配的子结构体;将更新后的其余待匹配的子结构体与更新后的主结构体进行匹配识别,获取新的匹配位置,并将新的匹配位置的其余待匹配的子结构体进行折叠,以对简化后的主结构体进行折叠简化。

具体的说,当确定子结构体的数量为多个时,例如,主结构中包含的包含的节点分别为:A B C D E F G H I C D E F G H I C D E F G H IC D E F G H IA DIA,第一个子结构体所包含的节点为GHI,第二个子结构体所包含的节点为EF。当确定在主结构中的第一个匹配位置匹配到GHI,在将GHI用O进行替换后,如果E的父节点为H的情况下,直接替换的话,在第二个子结构进行匹配时由于已经将GHI替换为O,此时则无法对第二个子结构体进行精准匹配,此时,可以将EF调整为E(父节点—>H—>修改为O)F,即将第二个子结构体中与H相关的节点也适应性的进行修改,这种方式可以成为非克隆方式,并且当采用非克隆方式时由于计算上不重复计算H可能会增加内存压力,但不会增加H节点的计算时间。在主结构体和第二子结构体都更新的情况下,则可以将更新后的第二个子结构体与更新后的主结构体继续进行匹配识别,以获取新的匹配位置,并将新的匹配位置的子结构进行折叠,以对针对第一个子结构进行匹配折叠所获取的简化后的主结构体进行优化,以进一步降低计算图的复杂性,关于针对第二个子结构体进行折叠的方式与第一个子结构体进行折叠的方式大致相同,本实施方式中不再进行赘述。

可选的,当确定子结构体的数量为多个时,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体之后,还包括:当确定主结构体中的多个子结构体之间存在关联关系时,采用克隆方式将匹配位置的子结构体采用指定节点以及与其余待匹配的子结构体中的关联节点进行组合表示,以获取更新后的主结构体;将其余待匹配的子结构体与更新后的主结构体直接进行匹配识别,获取新的匹配位置,并将新的匹配位置的其余待匹配的子结构体进行折叠,以对简化后的主结构体进行折叠简化。

具体的说,当确定子结构体的数量为多个时,例如,主结构中包含的包含的节点分别为:A B C D E F G H I C D E F G H I C D E F G H IC D E F G H IA DIA,第一个子结构体所包含的节点为GHI,第二个子结构体所包含的节点为EF。当确定在主结构中的第一个匹配位置匹配到GHI,如果将GHI用O进行替换后,如果E的父节点为H的情况下,直接替换的话,在第二个子结构进行匹配时由于已经将GHI替换为O,此时则无法对第二个子结构体进行精准匹配,此时,则可以将第一个匹配位置匹配到的GHI,采用H’O进行替换,而H’为H的克隆节点,此时第二个子机构体则可以保持不变E(父节点—>H)F,这种方式可以成为克隆方式,并且当采用克隆方式时计算上重复计算H节点,可能会减少内存压力,但是会增加H节点的计算时间。在主结构体更新但第二子结构体不变的情况下,则可以将第二个子结构体与更新后的主结构体继续进行匹配识别,以获取新的匹配位置,并将新的匹配位置的子结构进行折叠,以对针对第一个子结构进行匹配折叠所获取的简化后的主结构体进行优化,以进一步降低计算图的复杂性,关于针对第二个子结构体进行折叠的方式与第一个子结构体进行折叠的方式大致相同,本实施方式中不再进行赘述。当然,本时候方式中仅是以克隆方式和非克隆方式进行举例说明,而并不对所采用的具体配置方式进行限定,用户可以根据实际匹配折叠的实际需求进行选定。

本申请通过获取主计算图和子计算图分别对应的主结构体和子结构体之后,采用抽象后的计算图进行子结构搜索、匹配及折叠,并且支持不同硬件架构,从而简化了计算图的复杂度,降低了分析及研究的成本。

实施例二

图2为本发明实施例二提供的一种应用于AI芯片的计算图简化方法的流程图,本实施例以上述实施例为基础,在根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体之后,还包括:对简化后的主结构体进行检测,根据检测结果确定简化后的主结构体异常时进行报警。如图2所示,方法包括:

步骤S201,获取算法模型所对应的主计算图以及待搜索的子计算图。

步骤S202,获取与主计算图适配的AI芯片信息,并根据AI芯片信息建立与主计算图和子计算图分别匹配的主结构体和子结构体。

可选的,获取与主计算图适配的AI芯片信息,并根据AI芯片信息建立与主计算图和子计算图分别匹配的主结构体和子结构体,包括:

对主计算图中的节点描述进行识别,获取与主计算图适配的AI芯片信息,其中,节点描述包括节点类型和节点名称;根据AI芯片信息对主计算图和子计算图分别进行后向遍历计算,建立主结构体和子结构体,其中,主结构体和子结构体中分别包含算法模型的节点、节点描述和节点依赖关系。

步骤S203,将子结构体与主结构体进行匹配识别,当确定在主结构体中匹配到子结构体时获取匹配位置,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体。

可选的,将子结构体与主结构体进行匹配识别,包括:从主结构体中反向遍历寻找与子结构体最后一个节点相同的目标节点;获取目标节点的属性信息以及最后一个节点的属性信息,其中,属性信息中包含关联父节点;当确定目标节点的属性信息中所包含的关联父节点,与最后一个节点的属性信息中所包含的关联父节点完全相同或者存在重合时,则从目标节点依次反向遍历主结构体;判断主结构体中是否存在与子结构体中剩余节点相同并且属性信息也相同的节点,若存在,则确定在主结构体中匹配到子结构体,否则,在主结构体中没有匹配到子结构体。

步骤S204,通过计算图简化自检系统对简化后的主结构体进行检测,根据检测结果确定简化后的主结构体异常时进行报警。

具体的说,本实施方式在获取到简化后的主结构体之后,会对简化后的主结构体进行检测,具体是检测简化后的主结构体中节点数量的变化情况,当确定节点数量减少或者不变的情况下,则说明简化后的主结构体正常,节点数量减少说明在主结构体中匹配到子结构体,节点数量不变的情况,则说明在主结构体中没有匹配到子结构体。但是,当出现简化后的主结构体中节点数量增加,此时则说明简化后的主结构体异常,因为在正常匹配折叠的过程中不可能出现节点数量增加的可能,出现上述情况的原因可能是算法匹配出现错误,或者折叠出现错误。

其中,在简化后的主结构体异常时会生成报警信息,并根据报警信息进行报警,以提示开发人员及时对软件进行检查,以恢复正常处理操作,从而进一步保证计算图简化的准确性。

本申请通过获取主计算图和子计算图分别对应的主结构体和子结构体之后,采用抽象后的计算图进行子结构搜索、匹配及折叠,并且支持不同硬件架构,从而简化了计算图的复杂度,降低了分析及研究的成本。

实施例三

图3为本发明实施例三提供的一种应用于AI芯片的计算图简化装置的结构示意图,该装置可以执行上述各实施例中涉及到的应用于AI芯片的计算图简化方法。该装置可采用软件和/或硬件的方式实现,如图4所示,应用于AI芯片的计算图简化装置具体包括:计算图获取模块310、结构体获取模块320和匹配折叠模块330。

计算图获取模块310,用于获取算法模型所对应的主计算图以及待搜索的子计算图,其中,主计算图和子计算图中分别包含算法模型的节点和节点描述;

结构体获取模块320,用于获取与主计算图适配的AI芯片信息,并根据AI芯片信息建立与主计算图和子计算图分别匹配的主结构体和子结构体;

匹配折叠模块330,用于将子结构体与主结构体进行匹配识别,当确定在主结构体中匹配到子结构体时获取匹配位置,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体。

可选的,结构体获取模块,用于对主计算图中的节点描述进行识别,获取与主计算图适配的AI芯片信息,其中,节点描述包括节点类型和节点名称;

根据AI芯片信息对主计算图和子计算图分别进行后向遍历计算,建立主结构体和子结构体,其中,主结构体和子结构体中分别包含算法模型的节点、节点描述和节点依赖关系。

可选的,匹配模块包括主结构体简化子模块,用于将匹配位置的子结构体进行折叠获取折叠主结构体;

获取AI芯片信息的硬件参数信息,根据硬件参数信息确定折叠主结构体中各节点的硬件资源信息,其中,硬件资源信息包括存储空间使用量和运行时间评估信息;

将各节点的硬件资源信息添加到折叠主结构体中获取简化后的主结构体。

可选的,匹配模块包括匹配子模块,用于从主结构体中反向遍历寻找与子结构体最后一个节点相同的目标节点;

获取目标节点的属性信息以及最后一个节点的属性信息,其中,属性信息中包含关联父节点;

当确定目标节点的属性信息中所包含的关联父节点,与最后一个节点的属性信息中所包含的关联父节点完全相同或者存在重合时,则从目标节点依次反向遍历主结构体;

判断主结构体中是否存在与子结构体中剩余节点相同并且属性信息也相同的节点,若存在,则确定在主结构体中匹配到子结构体,否则,在主结构体中没有匹配到子结构体。

可选的,装置还包括非克隆匹配优化模块,用于当确定主结构体中的多个子结构体之间存在关联关系时,采用非克隆方式将匹配位置的子结构体采用指定节点进行表示,以获取更新后的主结构体;

将其余待匹配的子结构体中与匹配位置的子结构体关联的节点采用指定节点进行替换,以获取更新后的其余待匹配的子结构体;

将更新后的其余待匹配的子结构体与更新后的主结构体进行匹配识别,获取新的匹配位置,并将新的匹配位置的其余待匹配的子结构体进行折叠,以对简化后的主结构体进行折叠简化。

可选的,装置还包括克隆匹配优化模块,用于当确定主结构体中的多个子结构体之间存在关联关系时,采用克隆方式将匹配位置的子结构体采用指定节点以及与其余待匹配的子结构体中的关联节点进行组合表示,以获取更新后的主结构体;

将其余待匹配的子结构体与更新后的主结构体直接进行匹配识别,获取新的匹配位置,并将新的匹配位置的其余待匹配的子结构体进行折叠,以对简化后的主结构体进行折叠简化。

可选的,装置还包括检测模块,用于对简化后的主结构体进行检测;

根据检测结果确定简化后的主结构体异常时进行报警。

实施例四

图4为本发明实施例六提供的一种计算机设备的结构示意图,如图4所示,该计算机设备包括处理器610、存储器620、输入装置630和输出装置640;计算机设备中处理器610的数量可以是一个或多个,图4中以一个处理器610为例;计算机设备中的处理器610、存储器620、输入装置630和输出装置640可以通过总线或其他方式连接,图4中以通过总线连接为例。

存储器620作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的应用于AI芯片的计算图简化方法对应的程序指令/模块(例如,循环神经网络的参数量化装置中的循环神经网络获取模块410、量化尺度计算模块420、量化参数计算模块430以及后训练量化网络生成模块440)以及本发明实施例中的应用于AI芯片的计算图简化方法对应的程序指令/模块(例如,量化网络中的推断装置中的输入数据序列获取模块510、量化输入序列输入模块520以及网络计算模块530)。处理器610通过运行存储在存储器620中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的应用于AI芯片的计算图简化方法。

应用于AI芯片的计算图简化方法,包括:

获取算法模型所对应的主计算图以及待搜索的子计算图,其中,主计算图和子计算图中分别包含算法模型的节点和节点描述;

获取与主计算图适配的AI芯片信息,并根据AI芯片信息确定与主计算图和子计算图分别匹配的主结构体和子结构体;

将子结构体与主结构体进行匹配识别,当确定在主结构体中匹配到子结构体时获取匹配位置,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体。

存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器620可进一步包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置630可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种应用于AI芯片的计算图简化方法;

获取算法模型所对应的主计算图以及待搜索的子计算图,其中,主计算图和子计算图中分别包含算法模型的节点和节点描述;

获取与主计算图适配的AI芯片信息,并根据AI芯片信息确定与主计算图和子计算图分别匹配的主结构体和子结构体;

将子结构体与主结构体进行匹配识别,当确定在主结构体中匹配到子结构体时获取匹配位置,根据AI芯片信息和匹配位置对主结构体进行折叠获取简化后的主结构体。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的应用于AI芯片的计算图简化方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。

值得注意的是,上述实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

相关技术
  • 芯片离线烧录方法、装置、系统、计算机存储介质及设备
  • Activiti流程图的重绘制方法、装置、计算机设备及存储介质
  • 一种查询图构建方法、装置、电子设备及计算机存储介质
  • 用于切分图数据的方法、装置、设备以及计算机可读存储介质
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 图斑简化方法、装置、设备和计算机可读存储介质
  • 图斑简化方法、装置、设备和计算机可读存储介质
技术分类

06120116150107