CN110210605A - 硬件算子匹配方法及相关产品 - Google Patents
硬件算子匹配方法及相关产品 Download PDFInfo
- Publication number
- CN110210605A CN110210605A CN201910473288.7A CN201910473288A CN110210605A CN 110210605 A CN110210605 A CN 110210605A CN 201910473288 A CN201910473288 A CN 201910473288A CN 110210605 A CN110210605 A CN 110210605A
- Authority
- CN
- China
- Prior art keywords
- operator
- hardware operator
- layer
- hardware
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请实施例公开了一种硬件算子匹配方法及相关产品,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器确定第i层对应的多个参考硬件算子,模拟器模拟运行多个参考硬件算子,得到多个参考硬件算子对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可通过自动匹配得到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种硬件算子匹配方法及相关产品。
背景技术
在运行神经网络模型中的过程中,神经网络处理器(neural network processing unit,NPU)具有一套完整的指令集。通过指令集可以实现神经网络模型中的算子。当系统中存在一个以上的硬件算子可以支持同一种运算操作,需要选择一个最优的硬件算子,在现有技术中,选择硬件算子通常由人工测试并添加固定的规则来选择硬件算子。
但是,由于需要人工参与制定选择规则,当硬件算子的参数个数增多后,导致规则也随之变得更多更复杂,导致维护成本高。当需要添加更高性能的硬件算子时,也需要增加或修改现有规则,导致开发周期较长。因此,如何在运行神经网路模型的过程中提高选择硬件算子的效率的问题亟待解决。
发明内容
本申请实施例提供了一种硬件算子匹配方法及相关产品,可通过自动匹配得到满足神经网络模型中的运算功能、并且性能最优的硬件算子。
第一方面,本申请实施例提供了一种硬件算子匹配方法,应用于电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,所述方法包括:
在所述NPU运行神经网络模型至第i层时,所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;
所述控制器根据所述目标硬件算子执行所述第i层的运算。
第二方面,本申请实施例提供了一种硬件算子匹配装置,应用于电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,所述硬件算子匹配装置包括:
确定单元,用于在所述NPU运行神经网络模型至第i层时,通过所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
模拟单元,用于通过所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述确定单元,还用于通过所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;
执行单元,用于通过所述控制器根据所述目标硬件算子执行所述第i层的运算。
第三方面,本申请实施例提供了一种电子设备,包括:神经网络处理器NPU、控制器、模拟器、存储器和通信接口;以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置成由所述控制器执行,所述程序包括用于如本申请实施例第一方面中所描述的部分或全部步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,所述计算机可读存储介质用于存储计算机程序,其中,所述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤的指令。
第五方面,本申请实施例提供了一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具有如下有益效果:
可以看出,本申请实施例中所描述的硬件算子匹配方法及相关产品,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器确定第i层对应的多个参考硬件算子,模拟器模拟运行多个参考硬件算子,得到多个参考硬件算子对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可通过自动匹配得到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是本申请实施例提供的一种电子设备的结构示意图;
图1B是本申请实施例提供的一种硬件算子匹配方法的流程示意图;
图1C是本申请实施例提供的一种模拟器模拟执行多个指令流中每一指令流的流程示意图;
图1D是本申请实施例提供的一种硬件算子匹配方法的流程示意图;
图2是本申请实施例提供的另一种硬件算子匹配方法的流程示意图;
图3是本申请实施例提供的另一种硬件算子匹配方法的流程示意图;
图4是本申请实施例提供的另一种电子设备的结构示意图;
图5是本申请实施例提供的一种硬件算子匹配装置的结构示意图;
图6是本申请实施例提供的电子设备的另一种结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例所涉及到的电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(user equipment,UE),移动台(mobile station,MS),终端设备(terminaldevice)等等。为方便描述,上面提到的设备统称为电子设备。
下面对本申请实施例进行详细介绍。
请参阅图1A,图1A是本申请实施例提供的一种电子设备100的结构示意图,上述电子设备100包括:壳体110、设置于所述壳体110内的电路板120,所述电路板120上设置有神经网络处理器NPU123、模拟器124、控制器121和存储器122。
其中,神经网络处理器是一种专用于加速神经网络的处理器。它采用哈佛结构或冯诺依曼结构,具有一套完整的指令集。通过指令集可以实现神经网络模型中的算子。使用这种方法实现的算子最终运行在NPU上,由控制器选择和调度算子。
请参阅图1B,图1B是本申请实施例提供的一种硬件算子匹配方法的流程示意图,本实施例中所描述的硬件算子匹配方法,应用于如图1A所示的电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,该硬件算子匹配方法包括:
101、在所述NPU运行神经网络模型至第i层时,所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层。
本申请实施例中,神经网络模型包括n层神经网络,n为大于1的整数,在NPU运行神经网络模型至第i层时,可为第i层神经网络匹配多个参考硬件算子,多个参考硬件算子均为能够实现第i层神经网络的运算功能的硬件算子。
可选地,上述步骤101中,控制器确定所述第i层对应的多个参考硬件算子,可包括以下步骤:
11、所述控制器解析所述第i层,得到所述第i层的目标网络参数;
其中,目标网络参数为实现第i层神经网络的功能的网络参数,具体实现中,第i层神经网络的算子不同,对应的目标网络参数也不同,例如,当第i层神经网络的网络算子包括卷积算子,则目标网络参数可包括以下至少一种:卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距等等。
12、从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
本申请实施例中,可预先为神经网络模型中所有类型的算子分别建立数据表,数据表中包含每一类型的算子对应的网络参数。从而,可在获取目标网络参数后,从预设的数据表中查询与目标网络参数对应的多个参考硬件算子,从而,得到的多个参考硬件算子均为能够实现第i层神经网络的功能的硬件算子。
可选地,所述第i层包括卷积算子,所述目标网络参数包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距,上述步骤12中,从预设的数据表查询与所述目标网络参数对应的多个参考硬件算子,可包括以下步骤:
根据所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距查询所述数据表,得到与所述卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距均一致的多个参考卷积硬件算子。
其中,当第i层包括卷积算子,目标网络参数可包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距。举例说明,如下表1所示,为本申请实施例提供的一种针对卷积算子类型建立的数据表:
ID | 名称 | 输入尺寸 | 卷积核大小 | 内边距 | 卷积步长 |
1 | Conv3x3 | 224,224,3 | 3,3 | Same | 1 |
2 | Conv3x3 | 224,224,3 | 3,3 | Same | 2 |
3 | Conv3x3_s1 | 224,224,3 | 3,3 | Same | 1 |
4 | Conv3x3_s2 | 224,224,3 | 3,3 | Same | 2 |
表1
从而,当第i层包括的卷积算子的目标网络参数为:卷积核大小为3x3,卷积步长为1时,表明,需要匹配卷积核大小为3x3,卷积步长为1时的卷子硬件算子,从而,可得到2个功能匹配的参考硬件算子,2个参考硬件算子的ID分别为1和3。
可见,通过根据神经网络模型中第i层的网络参数确定多个参考硬件算子,可初步选择能够实现第i层神经网络的功能的多个参考硬件算子,从而,可使匹配硬件算子的过程更加智能。
102、所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数。
其中,可通过模拟器分别针对多个参考硬件算子中每一参考硬件算子进行模拟,从而得到每一参考硬件算子的运行周期循环数。
可选地,上述步骤102中,所述当前环境参数包括环境温度和环境湿度,所述静脉识别模组包括红外灯,模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,可包括以下步骤:
21、所述模拟器构造一组输入数据;
22、翻译所述多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,所述多个指令流中每一指令流包含多个指令;
23、根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数。
其中,模拟器可构造一组与真实情况相同的输入数据,举例说明,假定多个参考硬件算子中包含表1中ID为1和3的卷积算子,模拟器可构造一组满足网络参数的输入数据:一个随机数据生成的卷积核大小3x3卷积核、一个随机数据生成的输入尺寸为224x224x3的输入图像、内边距=Same,卷积步长=1。
然后,通过模拟器模拟运行多个参考硬件算子中每一参考硬件算子。具体地,可将每一参考硬件算子的指令流进行翻译,然后执行翻译后的指令流,得到每一指令流对应的运行周期循环数。具体地,可根据输入数据分别执行多个指令流中每一指令流包含的多个指令,得到每一指令流对应的运行周期循环数。从而,可确定多个指令流对应的多个运行周期循环数。
可选地,上述步骤23中,根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数,可包括以下步骤:
A1、获取指令流j中的多个指令,所述指令流j为所述多个指令流中的任一指令流;
A2、根据所述输入数据执行所述指令流j中的多个指令,并记录所述多个指令中每一指令对应的指令周期循环数,得到多个指令周期循环数;
A3、在所述多个指令执行完成后,确定所述多个指令周期循环数之和,将所述多个指令周期循环数之和作为所述指令流j对应的运行周期循环数。
其中,针对多个指令流中每一指令流,可获取该指令流中的多个指令,并对该多个指令进行执行,并记录执行多个指令中每一指令的指令周期循环数。具体地,针对指令流j中的多个指令,模拟器可根据输入数据执行指令流j中的多个指令,并记录多个指令中每一指令对应的指令周期循环数,得到多个指令周期循环数,在指令流j中的多个指令执行完成后,可确定多个指令周期循环数之和,将多个指令周期循环数之和作为指令流j对应的运行周期循环数。从而,可确定多个指令流对应的多个运行周期循环数。请参阅图1C,图1C为本申请实施例提供的一种模拟器模拟执行多个指令流中每一指令流的流程示意图。如图1C所示,模拟器可按照多个指令的指令顺序获取指令,然后执行指令,得到指令执行结果,并计算指令执行时的指令周期循环数,并将该指令周期循环数与该指令流中已执行的指令对应的指令周期循环数进行累加,直到该指令流中的多个指令全部执行完成,得到该指令流对应的运行周期循环数。
可见,通过模拟器模拟运行多个参考硬件算子,可根据多个参考硬件算子的运行周期循环数确定多个参考硬件算子中运行周期循环数最小的参考硬件算子为性能最优的目标硬件算子,从而,可提高匹配硬件算子的智能性。
103、所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;以及,根据所述目标硬件算子执行所述第i层的运算。
本申请实施例中,多个指令流对应的多个运行周期循环数中,运行周期循环数越小,表明对应的参考硬件算子的性能最优,因此,控制器可确定多个运行周期循环数中最小值对应的目标硬件算子,然后根据目标硬件算子执行所述第i层的运算,从而,可针对第i层匹配最佳的目标硬件算子,类似地,针对神经网络模型的每一层,均可按照上述步骤选择该层神经网络对应的目标硬件算子,使得神经网络模型的运算效率更高。
举例说明,请参与图1D,图1D为本申请实施例提供的一种硬件算子匹配方法的流程示意图,如图1D所示,当NPU运行神经网络模型至第i层时,可通过控制器解析第i层,得到第i层的目标网络参数,然后根据目标网络参数选择目标硬件算子,进而,由NPU根据目标硬件算子执行第i层,直到神经网络模型的每一层执行结束。
可以看出,本申请实施例中所描述的硬件算子匹配方法,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器确定第i层对应的多个参考硬件算子,模拟器模拟运行多个参考硬件算子,得到多个参考硬件算子对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可通过自动匹配得到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
请参阅图2,图2是本申请实施例提供的另一种硬件算子匹配方法的流程示意图,本实施例中所描述的硬件算子匹配方法,应用于如图1A所示的电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,该方法可包括以下步骤:
201、在所述NPU运行神经网络模型至第i层时,所述控制器解析所述第i层,得到所述第i层的目标网络参数,所述第i层为所述神经网络模型中的任意一层。
202、从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
203、所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数。
204、所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;以及,根据所述目标硬件算子执行所述第i层的运算。
其中,上述步骤201-204的具体实现过程可参照步骤101-103中相应的描述,在此不再赘述。
可以看出,本申请实施例中所描述的硬件算子匹配方法,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器解析第i层,得到第i层的目标网络参数,从预设的数据表中查询与目标网络参数对应的多个参考硬件算子,模拟器模拟运行多个参考硬件算子,得到多个参考硬件算子对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可先根据第i层网络参数匹配功能满足条件的多个参考硬件算子,然后通过模拟器匹配得到性能最优的目标硬件算子,从而可匹配到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
与上述一致地,请参阅图3,为本申请实施例提供的另一种硬件算子匹配方法的流程示意图,本实施例中所描述的硬件算子匹配方法,应用于如图1A所示的电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,该方法可包括以下步骤:
301、在所述NPU运行神经网络模型至第i层时,所述控制器解析所述第i层,得到所述第i层的目标网络参数,所述第i层为所述神经网络模型中的任意一层。
302、从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
303、所述模拟器构造一组输入数据。
304、所述模拟器翻译所述多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,所述多个指令流中每一指令流包含多个指令。
305、所述模拟器根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数。
306、所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;以及,根据所述目标硬件算子执行所述第i层的运算。
其中,步骤301-306的具体实现过程可参见步骤101-103中相应的描述,在此不再赘述。
可以看出,本申请实施例中所描述的硬件算子匹配方法,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器解析第i层,得到第i层的目标网络参数,从预设的数据表中查询与目标网络参数对应的多个参考硬件算子,模拟器构造一组输入数据,翻译多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,根据输入数据分别模拟执行多个指令流中每一指令流,得到多个指令流对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可先根据第i层网络参数匹配功能满足条件的多个参考硬件算子,然后通过模拟器匹配得到性能最优的目标硬件算子,从而可匹配到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
以下是实施上述硬件算子匹配方法的装置,具体如下:
与上述一致地,请参阅图4,图4是本申请实施例提供的一种电子设备的结构示意图,该电子设备包括:控制器410、通信接口430、模拟器440、神经网络处理器NPU450和存储器420;以及一个或多个程序,所述一个或多个程序421被存储在所述存储器420中,并且被配置成由所述控制器执行,所述程序421包括用于执行以下步骤的指令:
在所述NPU运行神经网络模型至第i层时,所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;以及,根据所述目标硬件算子执行所述第i层的运算。
在一个可能的示例中,在所述控制器确定所述第i层对应的多个参考硬件算子方面,所述程序421包括用于执行以下步骤的指令:
所述控制器解析所述第i层,得到所述第i层的目标网络参数;
从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
在一个可能的示例中,所述第i层包括卷积算子,所述目标网络参数包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距,在所述从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子方面,所述程序421包括用于执行以下步骤的指令:
根据所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距查询所述数据表,得到与所述卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距均一致的多个参考卷积硬件算子。
在一个可能的示例中,在所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数方面,所述程序421还包括用于执行以下步骤的指令:
所述模拟器构造一组输入数据;
翻译所述多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,所述多个指令流中每一指令流包含多个指令;
根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数。
在一个可能的示例中,在所述根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数方面,所述程序421包括用于执行以下步骤的指令:
获取指令流j中的多个指令,所述指令流j为所述多个指令流中的任一指令流;
根据所述输入数据执行所述指令流j中的多个指令,并记录所述多个指令中每一指令对应的指令周期循环数,得到多个指令周期循环数;
在所述多个指令执行完成后,确定所述多个指令周期循环数之和,将所述多个指令周期循环数之和作为所述指令流j对应的运行周期循环数。
请参阅图5,图5是本实施例提供的一种硬件算子匹配装置的结构示意图,应用于电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,所述硬件算子匹配装置包括确定单元501、模拟单元502和执行单元503,其中,
所述确定单元501,用于在所述NPU运行神经网络模型至第i层时,通过所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
所述模拟单元502,用于通过所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述确定单元501,还用于通过所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;
所述执行单元503,用于通过所述控制器根据所述目标硬件算子执行所述第i层的运算。
可选地,在所述控制器确定所述第i层对应的多个参考硬件算子方面,所述确定单元501具体用于:
通过所述控制器解析所述第i层,得到所述第i层的目标网络参数;
从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
可选地,所述第i层包括卷积算子,所述目标网络参数包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距,在所述从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子方面,所述确定单元具体用于:
根据所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距查询所述数据表,得到与所述卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距均一致的多个参考卷积硬件算子。
可选地,在所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数方面,所述模拟单元502具体用于:
所述模拟器构造一组输入数据;
翻译所述多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,所述多个指令流中每一指令流包含多个指令;
根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数。
可选地,在所述根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数方面,所述执行单元503具体用于:
获取指令流j中的多个指令,所述指令流j为所述多个指令流中的任一指令流;
根据所述输入数据执行所述指令流j中的多个指令,并记录所述多个指令中每一指令对应的指令周期循环数,得到多个指令周期循环数;
在所述多个指令执行完成后,确定所述多个指令周期循环数之和,将所述多个指令周期循环数之和作为所述指令流j对应的运行周期循环数。
可以看出,本申请实施例中所描述的硬件算子匹配装置,应用于电子设备,电子设备包括神经网络处理器NPU、控制器和模拟器,通过在所述NPU运行神经网络模型至第i层时,控制器确定第i层对应的多个参考硬件算子,模拟器模拟运行多个参考硬件算子,得到多个参考硬件算子对应的多个运行周期循环数,控制器确定多个运行周期循环数中最小值对应的目标硬件算子,控制器根据目标硬件算子执行第i层的运算,如此,可通过自动匹配得到满足神经网络模型中的运算功能、并且性能最优的硬件算子,减少人工开发量,减少开发时间,降低维护成本。
可以理解的是,本实施例的硬件算子匹配装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例还提供了另一种电子设备,如图6所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该电子设备可以为包括手机、平板电脑、PDA(personal digital assistant,个人数字助理)、POS(point of sales,销售终端)、车载电脑等任意终端设备,以电子设备为手机为例:
图6示出的是与本申请实施例提供的电子设备相关的手机的部分结构的框图。参考图6,手机包括:射频(Radio Frequency,RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(Wireless Fidelity,Wi-Fi)模块970、控制器980、神经网络处理器NPU9100、模拟器9110以及电源990等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图6对手机的各个构成部件进行具体的介绍:
RF电路910可用于信息的接收和发送。通常,RF电路910包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobilecommunication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code DivisionMultiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器920可用于存储软件程序以及模块,控制器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元930可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括指纹识别模组931以及其他输入设备932。指纹识别模组931,可采集用户在其上的指纹数据。除了指纹识别模组931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于触控屏、物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示屏941,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机或无机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示屏941。
手机还可包括至少一种传感器950,其中,传感器包括环境传感器,环境传感器可包括温度传感器、湿度传感器和环境光传感器。除了环境传感器951,传感器950还可以包括其他传感器952,比如运动传感器、压力传感器等等。其中,环境光传感器还可根据环境光线的明暗来调节手机的背光亮度,进而调节显示屏941的亮度,接近传感器可在手机移动到耳边时,关闭显示屏941和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路960、扬声器961,传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号播放;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据播放控制器980处理后,经RF电路910以发送给比如另一手机,或者将音频数据播放至存储器920以便进一步处理。
Wi-Fi属于短距离无线传输技术,手机通过Wi-Fi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了Wi-Fi模块970,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
控制器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,控制器980可包括一个或多个处理单元;优选的,控制器980可集成应用控制器和调制解调控制器,其中,应用控制器主要处理操作系统、用户界面和应用程序等,调制解调控制器主要处理无线通信。可以理解的是,上述调制解调控制器也可以不集成到控制器980中。
手机还包括给各个部件供电的电源990(比如电池),优选的,电源可以通过电源管理系统与控制器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
手机还可以包括摄像头,摄像头用于拍摄图像与视频,并将拍摄的图像和视频传输到控制器980进行处理。
手机还可以包括蓝牙模块等,在此不再赘述。
前述图1B、图2和图3所示的实施例中,各步骤方法流程可以基于该手机的结构实现。
本申请实施例还提供一种计算机可读存储介质,其中,该计算机可读存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述硬件算子匹配方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一硬件算子匹配方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种硬件算子匹配方法,其特征在于,应用于电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,所述方法包括:
在所述NPU运行神经网络模型至第i层时,所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;以及,根据所述目标硬件算子执行所述第i层的运算。
2.根据权利要求1所述的方法,其特征在于,所述控制器确定所述第i层对应的多个参考硬件算子,包括:
所述控制器解析所述第i层,得到所述第i层的目标网络参数;
从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
3.根据权利要求2所述的方法,其特征在于,所述第i层包括卷积算子,所述目标网络参数包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距,所述从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子,包括:
根据所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距查询所述数据表,得到与所述卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距均一致的多个参考卷积硬件算子。
4.根据权利要求1-3任一项所述的方法,所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,包括:
所述模拟器构造一组输入数据;
翻译所述多个参考硬件算子中每一参考硬件算子的指令流,得到多个指令流,所述多个指令流中每一指令流包含多个指令;
根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数。
5.根据权利要求4所述的方法,其特征在于,所述根据所述输入数据分别模拟执行所述多个指令流中每一指令流,得到所述多个指令流对应的多个运行周期循环数,包括:
获取指令流j中的多个指令,所述指令流j为所述多个指令流中的任一指令流;
根据所述输入数据执行所述指令流j中的多个指令,并记录所述多个指令中每一指令对应的指令周期循环数,得到多个指令周期循环数;
在所述多个指令执行完成后,确定所述多个指令周期循环数之和,将所述多个指令周期循环数之和作为所述指令流j对应的运行周期循环数。
6.一种硬件算子匹配装置,其特征在于,应用于电子设备,所述电子设备包括神经网络处理器NPU、控制器和模拟器,所述硬件算子匹配装置包括:
确定单元,用于在所述NPU运行神经网络模型至第i层时,通过所述控制器确定所述第i层对应的多个参考硬件算子,所述第i层为所述神经网络模型中的任意一层;
模拟单元,用于通过所述模拟器模拟运行所述多个参考硬件算子,得到所述多个参考硬件算子对应的多个运行周期循环数,每一参考硬件算子对应一个运行周期循环数;
所述确定单元,还用于通过所述控制器确定所述多个运行周期循环数中最小值对应的目标硬件算子;
执行单元,用于通过所述控制器根据所述目标硬件算子执行所述第i层的运算。
7.根据权利要求6所述的硬件算子匹配装置,其特征在于,在所述控制器确定所述第i层对应的多个参考硬件算子方面,所述确定单元具体用于:
通过所述控制器解析所述第i层,得到所述第i层的目标网络参数;
从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子。
8.根据权利要求7所述的硬件算子匹配装置,其特征在于,所述第i层包括卷积算子,所述目标网络参数包括以下至少一种:所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距,在所述从预设的数据表中查询与所述目标网络参数对应的多个参考硬件算子方面,所述确定单元具体用于:
根据所述卷积算子的卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距查询所述数据表,得到与所述卷积核大小、卷积步长、输入尺寸、卷积核类型或内边距均一致的多个参考卷积硬件算子。
9.一种电子设备,其特征在于,包括:神经网络处理器NPU、控制器、模拟器、存储器和通信接口;以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置成由所述控制器执行,所述程序包括用于如权利要求1-5任一项所述的方法的指令。
10.一种计算机可读存储介质,其特征在于,其用于存储计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910473288.7A CN110210605B (zh) | 2019-05-31 | 2019-05-31 | 硬件算子匹配方法及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910473288.7A CN110210605B (zh) | 2019-05-31 | 2019-05-31 | 硬件算子匹配方法及相关产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110210605A true CN110210605A (zh) | 2019-09-06 |
CN110210605B CN110210605B (zh) | 2023-04-07 |
Family
ID=67790172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910473288.7A Active CN110210605B (zh) | 2019-05-31 | 2019-05-31 | 硬件算子匹配方法及相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110210605B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111210005A (zh) * | 2019-12-31 | 2020-05-29 | Oppo广东移动通信有限公司 | 设备运行方法、装置、存储介质及电子设备 |
CN111291864A (zh) * | 2020-01-20 | 2020-06-16 | Oppo广东移动通信有限公司 | 运算处理模组、神经网络处理器、电子设备及数据处理方法 |
CN113033757A (zh) * | 2019-12-09 | 2021-06-25 | 中科寒武纪科技股份有限公司 | 用于测试神经网络中算子精度的方法、装置和计算机可读存储介质 |
CN114492737A (zh) * | 2021-12-31 | 2022-05-13 | 北京百度网讯科技有限公司 | 数据处理方法、装置及电子设备、存储介质及程序产品 |
WO2022253226A1 (zh) * | 2021-06-02 | 2022-12-08 | 杭州海康威视数字技术股份有限公司 | 神经网络模型的配置确定方法、装置、设备及存储介质 |
WO2024055660A1 (zh) * | 2022-09-13 | 2024-03-21 | 华为技术有限公司 | 一种数据运算方法、装置及设备 |
US11983086B2 (en) | 2021-12-31 | 2024-05-14 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for processing data, and electronic device, storage medium and program product |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016175A (zh) * | 2017-03-23 | 2017-08-04 | 中国科学院计算技术研究所 | 适用神经网络处理器的自动化设计方法、装置及优化方法 |
US20170323200A1 (en) * | 2016-05-06 | 2017-11-09 | International Business Machines Corporation | Estimating cardinality selectivity utilizing artificial neural networks |
CN108133269A (zh) * | 2016-12-01 | 2018-06-08 | 上海兆芯集成电路有限公司 | 具有可作为高速缓存存储器或神经网络单元存储器操作的存储器阵列的处理器 |
CN108734636A (zh) * | 2017-04-24 | 2018-11-02 | 英特尔公司 | 用于高效卷积的专用固定功能硬件 |
US20190080239A1 (en) * | 2017-09-13 | 2019-03-14 | Samsung Electronics Co., Ltd. | Neural network system for reshaping a neural network model, application processor including the same, and method of operating the same |
-
2019
- 2019-05-31 CN CN201910473288.7A patent/CN110210605B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170323200A1 (en) * | 2016-05-06 | 2017-11-09 | International Business Machines Corporation | Estimating cardinality selectivity utilizing artificial neural networks |
CN108133269A (zh) * | 2016-12-01 | 2018-06-08 | 上海兆芯集成电路有限公司 | 具有可作为高速缓存存储器或神经网络单元存储器操作的存储器阵列的处理器 |
CN107016175A (zh) * | 2017-03-23 | 2017-08-04 | 中国科学院计算技术研究所 | 适用神经网络处理器的自动化设计方法、装置及优化方法 |
CN108734636A (zh) * | 2017-04-24 | 2018-11-02 | 英特尔公司 | 用于高效卷积的专用固定功能硬件 |
US20190080239A1 (en) * | 2017-09-13 | 2019-03-14 | Samsung Electronics Co., Ltd. | Neural network system for reshaping a neural network model, application processor including the same, and method of operating the same |
Non-Patent Citations (2)
Title |
---|
关学忠等: "基于BP神经网络的无刷直流电机的自抗扰控制", 《计算机与数字工程》 * |
杨一晨等: "一种基于可编程逻辑器件的卷积神经网络协处理器设计", 《西安交通大学学报》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113033757A (zh) * | 2019-12-09 | 2021-06-25 | 中科寒武纪科技股份有限公司 | 用于测试神经网络中算子精度的方法、装置和计算机可读存储介质 |
CN113033757B (zh) * | 2019-12-09 | 2024-05-07 | 中科寒武纪科技股份有限公司 | 用于测试神经网络中算子精度的方法、装置和计算机可读存储介质 |
CN111210005A (zh) * | 2019-12-31 | 2020-05-29 | Oppo广东移动通信有限公司 | 设备运行方法、装置、存储介质及电子设备 |
CN111210005B (zh) * | 2019-12-31 | 2023-07-18 | Oppo广东移动通信有限公司 | 设备运行方法、装置、存储介质及电子设备 |
CN111291864A (zh) * | 2020-01-20 | 2020-06-16 | Oppo广东移动通信有限公司 | 运算处理模组、神经网络处理器、电子设备及数据处理方法 |
CN111291864B (zh) * | 2020-01-20 | 2023-11-03 | Oppo广东移动通信有限公司 | 运算处理模组、神经网络处理器、电子设备及数据处理方法 |
WO2022253226A1 (zh) * | 2021-06-02 | 2022-12-08 | 杭州海康威视数字技术股份有限公司 | 神经网络模型的配置确定方法、装置、设备及存储介质 |
CN114492737A (zh) * | 2021-12-31 | 2022-05-13 | 北京百度网讯科技有限公司 | 数据处理方法、装置及电子设备、存储介质及程序产品 |
CN114492737B (zh) * | 2021-12-31 | 2022-12-09 | 北京百度网讯科技有限公司 | 数据处理方法、装置及电子设备、存储介质及程序产品 |
US11983086B2 (en) | 2021-12-31 | 2024-05-14 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for processing data, and electronic device, storage medium and program product |
WO2024055660A1 (zh) * | 2022-09-13 | 2024-03-21 | 华为技术有限公司 | 一种数据运算方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110210605B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110210605A (zh) | 硬件算子匹配方法及相关产品 | |
CN110515626A (zh) | 深度学习计算框架的代码编译方法及相关产品 | |
CN107356261B (zh) | 导航方法及相关产品 | |
CN106126174B (zh) | 一种场景音效的控制方法、及电子设备 | |
CN107770596A (zh) | 一种特效同步方法、装置及移动终端 | |
CN110489344A (zh) | 引擎测试方法及相关产品 | |
CN106413070B (zh) | 一种功率调整方法、移动终端及计算机可读存储介质 | |
CN110430592A (zh) | 网络控制方法及相关产品 | |
CN106502824B (zh) | 数据备份方法及云服务器 | |
CN107766139B (zh) | 应用管理方法及装置 | |
CN110245601A (zh) | 眼球追踪方法及相关产品 | |
CN108415863A (zh) | 电子装置的硬件兼容实现方法及相关产品 | |
CN110209245A (zh) | 人脸识别方法及相关产品 | |
CN108429575A (zh) | 天线切换方法、移动终端以及计算机可读存储介质 | |
CN109254793A (zh) | 引擎隔离方法、相关设备以及计算机可读存储介质 | |
CN109922539A (zh) | 网络连接方法及相关产品 | |
CN106453909B (zh) | 一种功率调整方法及移动终端 | |
CN106202422B (zh) | 网页图标的处理方法和装置 | |
CN108037874B (zh) | 截屏方法及相关产品 | |
CN110428782A (zh) | 亮度调节方法及相关产品 | |
CN110413639A (zh) | 数据核查方法及装置、电子设备和计算机可读存储介质 | |
CN107317917B (zh) | 应用控制方法及相关产品 | |
CN110113493A (zh) | 多麦录音方法及相关产品 | |
CN108323236A (zh) | 一种交互方法和终端 | |
CN109587552A (zh) | 视频人物音效处理方法、装置、移动终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |