CN109656719B - 算法处理方法、装置、存储介质及终端设备 - Google Patents
算法处理方法、装置、存储介质及终端设备 Download PDFInfo
- Publication number
- CN109656719B CN109656719B CN201811567183.XA CN201811567183A CN109656719B CN 109656719 B CN109656719 B CN 109656719B CN 201811567183 A CN201811567183 A CN 201811567183A CN 109656719 B CN109656719 B CN 109656719B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- processing
- target
- processing module
- module
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 406
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000012549 training Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 10
- 239000002609 medium Substances 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000013135 deep learning Methods 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例中提供的一种算法处理方法、装置、存储介质及终端设备,该方法包括:确定待执行操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。通过采用上述技术方案,可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种算法处理方法、装置、存储介质及终端设备。
背景技术
随着终端设备的发展,终端设备上配置的处理模块的类型也越来越多,例如,包括中央处理器(CPU,Central Processing Unit)、图形处理器(GPU,Graphics ProcessingUnit)、数字信号处理器(DSP,Digital Signal Processing)和神经网络处理器(NPU,Neural-network Processing Unit)等等。不同的处理模块的处理方式有所不同,不同的处理模块适合处理对应类型的任务,可以实现比较高的处理效率。
对于配置了多种类型的处理模块的终端设备,不同的处理模块可以分别执行其对应类型的任务,但是在某个特定类型的任务特别多时,该任务对应的处理模块就会持续高的工作负荷,而待执行的算法操作就需要进行排队等待,导致算法操作的执行效率低下。
发明内容
本申请实施例提供的一种算法处理方法、装置、存储介质及终端设备,可以提高待执行操作的操作效率。
第一方面,本申请实施例提供了一种算法处理方法,包括:
确定待执行操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;
将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
第二方面,本申请实施例提供了另一种算法处理方法,包括:
确定待执行样本操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;
从所述多个处理模块中确定目标处理模块;
将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
第三方面,本申请实施例提供了一种算法处理装置,包括:
类型确定模块,用于确定待执行操作的算法预设类型;
运行数据模块,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;
第一模块确定模块,用于将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
第四方面,本申请实施例提供了另一种算法处理装置,包括:
样本类型确定模块,用于确定待执行样本操作的算法预设类型;
样本运行数据模块,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;
第二模块确定模块,用于从所述多个处理模块中确定目标处理模块;
训练模块,用于将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
第五方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的算法处理方法。
第六方面,本申请实施例提供了一种终端设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例所述的算法处理方法。
本申请实施例中提供的一种算法处理方案,通过确定待执行操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。通过采用上述技术方案,可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
附图说明
图1为本申请实施例提供的一种算法处理方法的流程示意图;
图2为本申请实施例提供的另一种算法处理方法的流程示意图;
图3为本申请实施例提供的另一种算法处理方法的流程示意图;
图4为本申请实施例提供的另一种算法处理方法的流程示意图;
图5为本申请实施例提供的一种算法处理装置的结构框图;
图6为本申请实施例提供的另一种算法处理装置的结构框图;
图7为本申请实施例提供的一种终端设备的结构示意图;
图8为本申请实施例提供的另一种终端设备的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本申请的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
终端设备上配置了多个处理模块时,如果不能合理利用各个处理模块的处理能力,会使待执行的操作等待较长的时间,还会造成资源的浪费。本申请实施例可以根据各个处理模块的运行状况来确定出最适合处理待执行操作的处理模块。
图1为本申请实施例提供的一种算法处理方法的流程示意图,该方法可以由算法处理装置执行,其中该装置可以由软件和/或硬件实现,一般可以集成在终端设备中,也可以集成在其他安装有操作系统的设备中。如图1所示,该方法包括:
S110、确定待执行操作的算法预设类型。
其中,所述待执行操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类。示例性地,所述待执行操作可以是深度学习算法,深度学习算法为实现人工神经网络的算法,深度学习算法可以对输入数据层层提取特征或属性类别,最终发现输入数据的分布式特征表示。深度学习算法一般都需要进行大量的运算,包括多种类型的算法操作,例如,归一化操作(BATCH)、卷积操作(CONV)、池化操作(POOL)和激活操作(ACT)等等,上述操作分别对输入数据进行不同的处理且都需要进行大量的运算。
S111、确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据。
终端设备可以是智能手机、平板电脑或其他具有相应操作系统的电子设备,终端设备上配置有多个处理模块,所述多个处理模块可以是不同类型的多个处理模块。示例性地,处理模块可以包括中央处理器(CPU,Central Processing Unit)、图形处理器(GPU,Graphics Processing Unit)、数字信号处理器(DSP,Digital Signal Processing)和神经网络处理器(NPU,Neural-network Processing Unit)。
所述当前运行数据为体现每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况,工作模式包括处理模块的运行能力和运行方式。不同的处理模块之间存在工作模式的区别,不同处理模块之间也存在任务执行状况的不同,分别获取每个处理模块的当前运行数据,可以根据每个处理模块的当前运行数据判断其处理待执行操作的执行状况。示例性地,对于相同处理能力的两个处理模块,一个执行比较多任务,另一个执行比较少的任务,选择后一个处理模块处理待执行操作可以提高待执行操作的操作效率。又如,对于任务执行状况相同的两个处理模块,对于某一个特定的算法预设类型,可以选择运行状况适合处理该算法预设类型的处理模块来进行处理。
可选地,所述当前运行数据包括负载率、工作频率和芯片温度中的至少一个。负载率为处理模块上的任务执行状况,负载率越高表示处理模块上执行的任务越多。工作频率为处理模块工作时的时钟频率,工作频率可以体现处理模块的运行能力。芯片温度为处理模块的工作的温度,芯片温度由处理模块的发热量决定,处理模块的电压越高功率也就越高,发热量也就越高,芯片温度可以体现处理模块的当前运行状况。
S112、将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
其中,所述目标模型可以是预先对卷积神经网络(CNN,Convolutional NeuralNetworks)模型进行训练而成,所述目标模型可以根据输入的待执行操作的算法预设类型和多个处理模块的当前运行数据,确定目标处理模块。
目标处理模块为最终用于处理所述待执行操作的处理模块,目标处理模块可以是符合预设条件的处理模块,所述预设条件与目标模型的训练规则相对应,可以根据实际应用的需求确定对应的预设条件。示例性地,如果所述目标模型的训练规则为使所述目标模型确定处理所述待执行操作的操作效率最高的处理模块,则所述预设条件为操作效率最高。
所述目标模块信息为用于表示对应的处理模块的信息,可以是处理模块的编号信息。示例性地,如果终端设备中包括四个处理模块,分别是CPU、GPU、DSP和NPU,其对应的编号分别是“1000”、“0100”、“0010”和“0001”。如果目标模型输出的目标模块信息为1000,则表示确定的目标处理模块是CPU、如果目标模型输出的目标模块信息为0001,则表示确定的目标处理模块是NPU。
所述目标模型的训练过程可以通过如下方式实施:确定待执行样本操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;从所述多个处理模块中确定目标处理模块;将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
其中,在对预设模型进行训练时,将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,可以是将多个处理模块的当前样本运行数据和所述待执行样本操作的算法预设类型按照预设格式输入到预设模型中进行训练,示例性地,可以按照“P1_P2_P3_P4_TYPE”的预设格式;其中,P1表示CPU的当前样本运行数据,P2表示GPU的当前样本运行数据,P3表示DSP的当前样本运行数据,P4表示NPU的当前样本运行数据,TYPE表示待执行样本操作的算法预设类型。以及将目标处理模块的目标模块信息按照上文所述的编号信息输入到预设模型中进行训练。通过将编号信息和预设格式的规则进行对应,使预设模型可以建立两者之间的关系。具体实施方式可以根据实际应用进行设置,在此不作限定。
可选地,所述目标处理模块为所述多个处理模块中处理所述待执行操作的处理时间最短的处理模块。
其中,所述目标模型可以根据输入的所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据,输出处理所述待执行操作的处理时间最短的处理模块。即根据多个处理模块的当前运行状况确定出可以最快处理完待执行操作的处理模块,避免待处理操作持续等待被处理,提高待执行操作的操作效率。
相应地,在对预设模型进行训练以生成目标模型时,从所述多个处理模块中确定目标处理模块可以是通过如下方式实施:通过每个处理模块分别处理所述待执行样本操作,并记录每个处理模块的处理时间;将处理时间最短的处理模块确定为目标处理模块。
本申请实施例中提供的一种算法处理方法,通过确定待执行操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。通过采用上述技术方案,可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定出目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
图2为本申请实施例提供的另一种算法处理方法的流程示意图,在上述实施例所提供的技术方案的基础上,对确定待执行操作的算法预设类型的操作进行了优化,可选地,如图2所示,该方法包括:
S120、确定待执行操作所包括的至少一个待处理算法,其中,所述待处理算法中包括至少一个算法单元,所述至少一个算法单元对应同一个算法预设类型。
其中,所述待执行操作中包括至少一个待处理算法,如果包括多个待处理算法,则需要分别对每个待处理算法确定目标处理模块。可以确定所述待执行操作中包括的至少一个待处理算法,并分别确定每个待处理算法的算法预设类型。
待处理算法中包括至少一个算法单元,且一个待处理算法中包括的所有算法单元都对应同一个算法预设类型。算法单元为算法预设类型的分类的判断依据。示例性地,如果所述待执行操作为深度学习算法,待执行操作中包括多个不同类型的待处理算法,每个待处理算法对应一个算法预设类型,一个待处理算法的算法预设类型是包含多个卷积运算的卷积操作,一个待处理算法的算法预设类型是包含多个归一化运算的归一化操作。
S121、将算法单元对应的算法预设类型确定为所述待处理算法的算法预设类型。
其中,将一个待执行操作划分为多个待处理算法,并分别确定每个待处理算法的算法预设类型,进而可以分别对每个待处理算法进行处理。
S122、确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据。
具体实施方式可以参考上文的相关描述,在此不再赘述。
S123、对于每个待处理算法,将所述待处理算法的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应的目标处理模块为用于处理所述待处理算法的处理模块。
其中,如果一个待执行操作被划分为多个待处理算法,则分别将每个待处理算法的算法预设类型和多个处理模块的当前运行数据输入至目标模型,以确定用于处理该待处理算法的目标处理模块。即一个待执行操作中包括的多个待处理算法可以分别对应不同的目标处理模块,进而可以根据不同的目标处理模块分别处理对应的待处理算法,进一步提高待执行操作的处理效率。
可选地,还包括如下操作:
在将所述待处理算法的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息之后,分别通过每个待处理算法对应的目标处理模块处理所述待处理算法。
在确定了每个待处理算法对应的目标处理模块后,分别通过每个待处理算法对应的目标处理算法处理所述待处理算法,以使所有待处理算法都可以通过符合预设条件的目标处理模块进行处理。
本申请实施例通过确定待执行操作所包括的至少一个待处理算法,其中,所述待处理算法中包括至少一个算法单元,所述至少一个算法单元对应同一个算法预设类型;将算法单元对应的算法预设类型确定为所述待处理算法的算法预设类型。通过上述技术方案对包括多个待处理算法的待执行操作分别确定对应每个待处理算法的目标处理模块,分别通过不同的目标处理模块处理对应的待处理算法,可以进一步提高待执行操作的操作效率。
图3为本申请实施例提供的另一种算法处理方法的流程示意图,该方法可以由算法处理装置执行,其中该装置可以由软件和/或硬件实现,一般可以集成在终端设备中,也可以集成在其他安装有操作系统的设备中。如图3所示,该方法包括:
S130、确定待执行样本操作的算法预设类型。
其中,所述待执行样本操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类。示例性地,所述待执行样本操作可以是深度学习算法,深度学习算法为实现人工神经网络的算法,深度学习算法可以对输入数据层层提取特征或属性类别,最终发现输入数据的分布式特征表示。深度学习算法一般都需要进行大量的运算,包括多种类型的算法操作,例如,归一化操作(BATCH)、卷积操作(CONV)、池化操作(POOL)和激活操作(ACT)等等,上述操作分别对输入数据进行不同的处理且都需要进行大量的运算。
S131、确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据。
终端设备可以是智能手机、平板电脑或其他具有相应操作系统的电子设备,终端设备上配置有多个处理模块,所述多个处理模块可以是不同类型的多个处理模块。示例性地,处理模块可以包括中央处理器(CPU,Central Processing Unit)、图形处理器(GPU,Graphics Processing Unit)、数字信号处理器(DSP,Digital Signal Processing)和神经网络处理器(NPU,Neural-network Processing Unit)。
所述当前样本运行数据为体现每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况,工作模式包括处理模块的运行能力和运行方式。不同的处理模块之间存在工作模式的区别,不同处理模块之间也存在任务执行状况的不同,分别获取每个处理模块的当前运行数据,可以根据每个处理模块的当前运行数据判断其处理待执行操作的执行状况。示例性地,对于相同处理能力的两个处理模块,一个执行比较多任务,另一个执行比较少的任务,选择后一个处理模块处理待执行操作可以提高待执行操作的操作效率。又如,对于任务执行状况相同的两个处理模块,对于某一个特定的算法预设类型,可以选择运行状况适合处理该算法预设类型的处理模块来进行处理。
可选地,所述当前样本运行数据包括负载率、工作频率和芯片温度中的至少一个。负载率为处理模块上的任务执行状况,负载率越高表示处理模块上执行的任务越多。工作频率为处理模块工作时的时钟频率,工作频率可以体现处理模块的运行能力。芯片温度为处理模块的工作的温度,芯片温度由处理模块的发热量决定,处理模块的电压越高功率也就越高,发热量也就越高,芯片温度可以体现处理模块的当前运行状况。
S132、从所述多个处理模块中确定目标处理模块。
其中,可以是从多个处理模块中选择符合预设条件的处理模块作为目标处理模块,所述预设条件可以根据实际应用的需求进行确定。
S133、将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
所述预设模型可以是卷积神经网络(CNN,Convolutional Neural Networks)模型,可以是监督型机器学习模型。将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型进行训练,以使预设模型建立算法预设类型和所述多个处理模块的当前样本运行数据,与目标处理模块的目标模块信息的映射关系。
训练完后所生成的目标模型可以根据输入的所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据,输出目标模块信息,根据目标模块信息即可以确定目标处理模型,目标处理模型可以处理待执行操作。
可选地,如图4所示,从所述多个处理模块中确定目标处理模块的操作可以通过下述方式实施:
S1321、通过每个处理模块分别处理所述待执行样本操作,并记录每个处理模块的处理时间。
S1322、将处理时间最短的处理模块确定为目标处理模块。
分别通过每个处理模块处理所述待执行样本操作,可以得到每个处理模块的处理时间,将处理时间最短的处理模块确定为目标处理模块,并将所述目标处理模块的目标模块信息作为样本输出数据来训练预设模型,训练后生成的目标模型可以根据输入的所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据,确定处理所述待执行操作的处理时间最短的处理模块。
本申请实施例中提供的另一种算法处理方法,通过确定待执行样本操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;从所述多个处理模块中确定目标处理模块;将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。通过上述技术方案可以训练生成目标模型,目标模型可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
图5为本申请实施例提供的一种算法处理装置的结构框图,该装置可以执行算法处理方法,如图5所示,该装置包括:
类型确定模块200,用于确定待执行操作的算法预设类型;
运行数据模块201,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;
第一模块确定模块202,用于将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
本申请实施例中提供的一种算法处理装置,通过确定待执行操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。通过采用上述技术方案,可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
可选地,所述目标处理模块为所述多个处理模块中处理所述待执行操作的处理时间最短的处理模块。
可选地,所述当前运行数据包括负载率、工作频率和芯片温度中的至少一个。
可选地,类型确定模块具体用于:
确定待执行操作所包括的至少一个待处理算法,其中,所述待处理算法中包括至少一个算法单元,所述至少一个算法单元对应同一个算法预设类型;
将算法单元对应的算法预设类型确定为所述待处理算法的算法预设类型;
所述将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,包括:
对于每个待处理算法,将所述待处理算法的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应的目标处理模块为用于处理所述待处理算法的处理模块。
可选地,还包括:
执行模块,用于在所述将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息之后,分别通过每个待处理算法对应的目标处理模块处理所述待处理算法。
图6为本申请实施例提供的另一种算法处理装置的结构框图,该装置可以执行算法处理方法,如图6所示,该装置包括:
样本类型确定模块210,用于确定待执行样本操作的算法预设类型;
样本运行数据模块211,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;
第二模块确定模块212,用于从所述多个处理模块中确定目标处理模块;
训练模块213,用于将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
本申请实施例中提供的另一种算法处理装置,通过确定待执行样本操作的算法预设类型;确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;从所述多个处理模块中确定目标处理模块;将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。通过上述技术方案可以训练生成目标模型,目标模型可以根据待执行操作的类型和终端设备上的处理模块的当前运行状况确定目标处理模块,以通过目标处理模块处理所述待执行操作,可以提高待执行操作的操作效率。
可选地,第二模块确定模块具体用于:
通过每个处理模块分别处理所述待执行样本操作,并记录每个处理模块的处理时间;将处理时间最短的处理模块确定为目标处理模块。
本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的算法处理操作,还可以执行本申请任意实施例所提供的算法处理方法中的相关操作。
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行算法处理方法,该方法包括:
确定待执行操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;
将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行另一种算法处理方法,该方法包括:
确定待执行样本操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;
从所述多个处理模块中确定目标处理模块;
将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
本申请实施例提供了一种终端设备,该终端设备中可集成本申请实施例提供的算法处理装置。
图7为本申请实施例提供的一种终端设备的结构示意图,本申请实施例提供了一种终端设备30,包括存储器31,处理器32及存储在存储器31上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例所述的算法处理方法。本申请实施例提供的终端设备,可以提高待执行操作的操作效率。
图8为本申请实施例提供的一种终端设备的结构示意图。如图8所示,该终端设备可以包括:壳体(图中未示出)、触摸屏(图中未示出)、触摸按键(图中未示出)、存储器301、中央处理器(Central Processing Unit,CPU)302(又称处理器,以下简称CPU)、电路板(图中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述CPU302和所述存储器301设置在所述电路板上;所述电源电路,用于为所述终端设备的各个电路或器件供电;所述存储器301,用于存储可执行程序代码;所述CPU302通过读取所述存储器301中存储的可执行程序代码来运行与所述可执行程序代码对应的计算机程序,以实现以下步骤:
确定待执行操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;
将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
或者,可以实现以下步骤:
确定待执行样本操作的算法预设类型;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;
从所述多个处理模块中确定目标处理模块;
将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
所述终端设备还包括:外设接口303、RF(Radio Frequency,射频)电路305、音频电路306、扬声器311、电源管理芯片308、输入/输出(I/O)子系统309、触摸屏312、其他输入/控制设备310以及外部端口304,这些部件通过一个或多个通信总线或信号线307来通信。
应该理解的是,图示终端设备300仅仅是终端设备的一个范例,并且终端设备300可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面就本实施例提供的用于实现算法处理的终端设备进行详细的描述,该终端设备以手机为例。
存储器301,所述存储器301可以被CPU302、外设接口303等访问,所述存储器301可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
外设接口303,所述外设接口303可以将设备的输入和输出外设连接到CPU302和存储器301。
I/O子系统309,所述I/O子系统309可以将设备上的输入输出外设,例如触摸屏312和其他输入/控制设备310,连接到外设接口303。I/O子系统309可以包括显示控制器3091和用于控制其他输入/控制设备310的一个或多个输入控制器3092。其中,一个或多个输入控制器3092从其他输入/控制设备310接收电信号或者向其他输入/控制设备310发送电信号,其他输入/控制设备310可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。值得说明的是,输入控制器3092可以与以下任一个连接:键盘、红外端口、USB接口以及诸如鼠标的指示设备。
触摸屏312,所述触摸屏312是用户终端设备与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。
I/O子系统309中的显示控制器3091从触摸屏312接收电信号或者向触摸屏312发送电信号。触摸屏312检测触摸屏上的接触,显示控制器3091将检测到的接触转换为与显示在触摸屏312上的用户界面对象的交互,即实现人机交互,显示在触摸屏312上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。
RF电路305,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、电子邮件等。具体地,RF电路305接收并发送RF信号,RF信号也称为电磁信号,RF电路305将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。RF电路305可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、RF收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC(COder-DECoder,编译码器)芯片组、用户标识模块(Subscriber Identity Module,SIM)等等。
音频电路306,主要用于从外设接口303接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器311。
扬声器311,用于将手机通过RF电路305从无线网络接收的语音信号,还原为声音并向用户播放该声音。
电源管理芯片308,用于为CPU302、I/O子系统及外设接口所连接的硬件进行供电及电源管理。
本申请实施例提供的终端设备,可以提高待执行操作的操作效率。
上述实施例中提供的算法处理装置、存储介质及终端设备可执行本申请任意实施例所提供的算法处理方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的算法处理方法。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (10)
1.一种算法处理方法,其特征在于,包括:
确定待执行操作的算法预设类型;其中,所述待执行操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;其中,所述当前运行数据为表征每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况;
将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
2.如权利要求1所述的方法,其特征在于,所述目标处理模块为所述多个处理模块中处理所述待执行操作的处理时间最短的处理模块。
3.如权利要求1或2所述的方法,其特征在于,确定待执行操作的算法预设类型包括:
确定待执行操作所包括的至少一个待处理算法,其中,所述待处理算法中包括至少一个算法单元,所述至少一个算法单元对应同一个算法预设类型;
将算法单元对应的算法预设类型确定为所述待处理算法的算法预设类型;
所述将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,包括:
对于每个待处理算法,将所述待处理算法的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应的目标处理模块为用于处理所述待处理算法的处理模块。
4.如权利要求3所述的方法,其特征在于,所述将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息之后,还包括:
分别通过每个待处理算法对应的目标处理模块处理所述待处理算法。
5.一种算法处理方法,其特征在于,包括:
确定待执行样本操作的算法预设类型;其中,所述待执行样本操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类;
确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;其中,所述当前样本运行数据为表征每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况;
从所述多个处理模块中确定目标处理模块;
将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
6.如权利要求5所述的方法,其特征在于,从所述多个处理模块中确定目标处理模块包括:
通过每个处理模块分别处理所述待执行样本操作,并记录每个处理模块的处理时间;
将处理时间最短的处理模块确定为目标处理模块。
7.一种算法处理装置,其特征在于,包括:
类型确定模块,用于确定待执行操作的算法预设类型;其中,所述待执行操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类;
运行数据模块,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前运行数据;其中,所述当前运行数据为表征每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况;
第一模块确定模块,用于将所述待执行操作的算法预设类型和所述多个处理模块的当前运行数据输入至预先训练好的目标模型,以输出目标模块信息,其中,所述目标模块信息对应目标处理模块,所述目标处理模块为用于处理所述待执行操作的处理模块。
8.一种算法处理装置,其特征在于,包括:
样本类型确定模块,用于确定待执行样本操作的算法预设类型;其中,所述待执行样本操作为需要进行大量算法运算的操作,所述算法预设类型为依据算法应用特性或算法运算特性的不同,对需要进行大量算法运算的不同算法操作所进行的分类;
样本运行数据模块,用于确定终端设备上的多个处理模块,并分别获取每个处理模块的当前样本运行数据;其中,所述当前样本运行数据为表征每个处理模块的当前时刻的运行状况的数据,运行状况包括处理模块本身的工作模式以及当前时刻的任务执行状况;
第二模块确定模块,用于从所述多个处理模块中确定目标处理模块;
训练模块,用于将所述待执行样本操作的算法预设类型和所述多个处理模块的当前样本运行数据作为样本输入数据,以及将所述目标处理模块的目标模块信息作为样本输出数据输入至预设模型中进行训练,以生成目标模型。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一项所述的算法处理方法。
10.一种终端设备,其特征在于,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-6任一项所述的算法处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811567183.XA CN109656719B (zh) | 2018-12-19 | 2018-12-19 | 算法处理方法、装置、存储介质及终端设备 |
PCT/CN2019/112222 WO2020125182A1 (zh) | 2018-12-19 | 2019-10-21 | 算法处理方法、装置、存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811567183.XA CN109656719B (zh) | 2018-12-19 | 2018-12-19 | 算法处理方法、装置、存储介质及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109656719A CN109656719A (zh) | 2019-04-19 |
CN109656719B true CN109656719B (zh) | 2021-01-01 |
Family
ID=66115543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811567183.XA Active CN109656719B (zh) | 2018-12-19 | 2018-12-19 | 算法处理方法、装置、存储介质及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109656719B (zh) |
WO (1) | WO2020125182A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656719B (zh) * | 2018-12-19 | 2021-01-01 | Oppo广东移动通信有限公司 | 算法处理方法、装置、存储介质及终端设备 |
CN112052027A (zh) * | 2019-06-06 | 2020-12-08 | 阿里巴巴集团控股有限公司 | 一种处理ai任务的方法及装置 |
CN113411533B (zh) * | 2021-06-15 | 2023-03-31 | 三星电子(中国)研发中心 | 一种高动态范围制式的转换方法和装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959501B2 (en) * | 2010-12-14 | 2015-02-17 | Microsoft Corporation | Type and length abstraction for data types |
CN102831012A (zh) * | 2011-06-16 | 2012-12-19 | 日立(中国)研究开发有限公司 | 多节点分布式系统中的任务调度装置和任务调度方法 |
CN103713949A (zh) * | 2012-10-09 | 2014-04-09 | 鸿富锦精密工业(深圳)有限公司 | 动态任务分配系统及方法 |
US10268513B2 (en) * | 2016-12-23 | 2019-04-23 | Nice Ltd. | Computing resource allocation optimization |
CN108985367A (zh) * | 2018-07-06 | 2018-12-11 | 中国科学院计算技术研究所 | 计算引擎选择方法和基于该方法的多计算引擎平台 |
CN109656719B (zh) * | 2018-12-19 | 2021-01-01 | Oppo广东移动通信有限公司 | 算法处理方法、装置、存储介质及终端设备 |
-
2018
- 2018-12-19 CN CN201811567183.XA patent/CN109656719B/zh active Active
-
2019
- 2019-10-21 WO PCT/CN2019/112222 patent/WO2020125182A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN109656719A (zh) | 2019-04-19 |
WO2020125182A1 (zh) | 2020-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109656719B (zh) | 算法处理方法、装置、存储介质及终端设备 | |
CN109947497B (zh) | 应用程序预加载方法、装置、存储介质及移动终端 | |
CN108681474B (zh) | 应用预加载方法、装置、存储介质及终端 | |
CN109783028A (zh) | I/o调度的优化方法、装置、存储介质及智能终端 | |
US20220091905A1 (en) | Method and device for providing application list by electronic device | |
US11733754B2 (en) | Electronic device for power management, and operation method therefor | |
CN107766546B (zh) | 应用推荐方法、装置、存储介质及终端设备 | |
US11740681B2 (en) | Electronic device and application managing method thereof | |
CN108055644B (zh) | 定位控制方法、装置、存储介质及终端设备 | |
CN107291302B (zh) | 一种触摸屏的控制方法、装置、存储介质及终端 | |
US20200241740A1 (en) | Electronic device and method for displaying contextual information of application | |
CN111510901A (zh) | 一种功率调节方法、装置、存储介质及终端 | |
CN108829712B (zh) | 事项管理方法、装置、存储介质及终端设备 | |
US20240045560A1 (en) | Method for capturing images for multi windows and electronic device therefor | |
CN107291213B (zh) | 模式选择方法、装置、终端及计算机可读存储介质 | |
US20230350730A1 (en) | Electronic device and operation method of electronic device | |
US20230259188A1 (en) | Electronic device comprising connector | |
US20220326964A1 (en) | Processor for initializing model file of application and electronic device including the same | |
US11768702B2 (en) | Electronic device for scheduling based on heterogeneous multi-processor and operating method thereof | |
CN107704627B (zh) | 应用推荐方法、装置、存储介质及终端设备 | |
US11973356B2 (en) | Method and electronic device for providing fast charging | |
CN107608797B (zh) | 文件处理方法、装置、存储介质及电子设备 | |
US20230185458A1 (en) | Memory management method and electronic device | |
US20230164515A1 (en) | Electronic device and method for recommending user action based on location | |
US20240031187A1 (en) | Electronic device for providing personalized group service, and control method of same |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240117 Address after: 100000 3010, Floor 3, No.1 Kaifa Road, Shangdi Information Industry Base, Haidian District, Beijing Patentee after: Lezhi Xinchuang (Beijing) Consulting Service Co.,Ltd. Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. |
|
TR01 | Transfer of patent right |