CN111722923A - 一种异构资源的调用方法、装置和计算机可读存储介质 - Google Patents

一种异构资源的调用方法、装置和计算机可读存储介质 Download PDF

Info

Publication number
CN111722923A
CN111722923A CN202010479028.3A CN202010479028A CN111722923A CN 111722923 A CN111722923 A CN 111722923A CN 202010479028 A CN202010479028 A CN 202010479028A CN 111722923 A CN111722923 A CN 111722923A
Authority
CN
China
Prior art keywords
training
calling
hardware
hardware device
heterogeneous
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.)
Withdrawn
Application number
CN202010479028.3A
Other languages
English (en)
Inventor
赵谦谦
阚宏伟
仝培霖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN202010479028.3A priority Critical patent/CN111722923A/zh
Publication of CN111722923A publication Critical patent/CN111722923A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

本发明实施例公开了一种异构资源的调用方法、装置和介质,根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例。当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;按照训练样本比例,将训练集划分为多个训练子集;调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。每个硬件设备有其独立的神经网络架构,每一层都可以调用多个硬件设备实现对多个训练子集的并行训练,有效的提升了资源利用率。各个设备独立存储,无需进行硬件设备间数据交互,节省了数据传输时间。

Description

一种异构资源的调用方法、装置和计算机可读存储介质
技术领域
本发明涉及机器学习技术领域,特别是涉及一种异构资源的调用方法、装置和计算机可读存储介质。
背景技术
目前很多厂商的硬件支持Caffe模型的推理和训练,例如:中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)等。
Caffe是一个采用layer方式来实现深度学习模型的开源深度学习框架,Caffe中包含多个layer,目前的实现方案一个layer在运算时只能分配到一种硬件上。当模型串行执行时,其他硬件在等待上一个layer的计算结果,无法并行计算,导致资源利用率较低。
可见,如何提升资源利用率,是本领域技术人员需要解决的问题。
发明内容
本发明实施例的目的是提供一种异构资源的调用方法、装置和计算机可读存储介质,可以提升资源利用率。
为解决上述技术问题,本发明实施例提供一种异构资源的调用方法,包括:
根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;
当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;
按照所述训练样本比例,将所述训练集划分为多个训练子集;其中,不同的训练子集对应不同硬件设备的神经网络架构;
调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
可选地,所述当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构包括:
遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
可选地,所述计算函数包括前向计算函数和后向计算函数;
所述调用与各训练子集相对应的神经网络架构对各训练子集进行训练包括:
调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练。
可选地,在调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练之后还包括:
调用所有所述硬件设备各自的后向计算函数,对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值;
对所有硬件设备的残差值进行归一化和正则化处理,得到更新后的权重值;
将更新后的权重值分发到所述异构资源集合中的各硬件设备,以便于各硬件设备遍历更新各层的权重值。
可选地,所述异构资源集合包括FPGA、GPU和/或CPU,每个硬件设备有其独立的存储空间。
本发明实施例还提供了一种异构资源的调用装置,包括设置单元、构建单元、划分单元和调用单元;
所述设置单元,用于根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;
所述构建单元,用于当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;
所述划分单元,用于按照所述训练样本比例,将所述训练集划分为多个训练子集;其中,不同的训练子集对应不同硬件设备的神经网络架构;
所述调用单元,用于调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
可选地,所述构建单元具体用于遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
可选地,所述计算函数包括前向计算函数和后向计算函数;
所述调用单元具体用于调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练。
可选地,还包括统计单元、处理单元和分发单元;
所述统计单元,用于调用所有所述硬件设备各自的后向计算函数,对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值;
所述处理单元,用于对所有硬件设备的残差值进行归一化和正则化处理,得到更新后的权重值;
所述分发单元,用于将更新后的权重值分发到所述异构资源集合中的各硬件设备,以便于各硬件设备遍历更新各层的权重值。
可选地,所述异构资源集合包括FPGA、GPU和/或CPU,每个硬件设备有其独立的存储空间。
本发明实施例还提供了一种异构资源的调用装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任意一项所述异构资源的调用方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述异构资源的调用方法的步骤。
由上述技术方案可以看出,根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;异构资源集合中包含了多个硬件设备,根据当前主机配置的硬件资源设置各硬件设备的训练样本比例,可以实现多个硬件设备的资源均衡,可以充分发挥各硬件设备的处理能力。当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;按照训练样本比例,将训练集划分为多个训练子集;不同的训练子集对应不同硬件设备的神经网络架构;调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。在该技术方案中,针对于每个硬件设备构建其独立的神经网络架构,使得每一层都可以调用多个硬件设备实现对多个训练子集的并行训练,有效的提升了资源利用率。并且训练过程中产生的中间层的数据存储在各个设备独立的内部存储,区别于传统的layer层级的并行拆分,该技术方案无需进行硬件设备间数据交互,有效的节省了数据传输时间。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种异构资源的调用方法的流程图;
图2为本发明实施例提供的一种异构资源的调用装置的结构示意图;
图3为本发明实施例提供的一种异构资源的调用装置的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种异构资源的调用方法。图1为本发明实施例提供的一种异构资源的调用方法的流程图,该方法包括:
S101:根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例。
异构资源集合中可以包含多种不同类型的硬件设备,例如,FPGA、GPU、CPU等。
每种类型的硬件设备的个数往往有多个,对于同一种类型的硬件设备可以通过编号进行区分。例如,FPGA的个数为3个,可以用编号0、1和2区分这3个FPGA。
在实际应用中,可以根据不同的应用需求,设置不同的异构资源集合。例如,将0号FPGA、0号GPU和0号CPU作为一个异构资源集合。
在本发明实施例中,为了在Caffe架构下实现多种硬件设备的并行运行,可以在模型文件即prototxt文件中增加对异构资源集合的声明。
为了实现对异构资源集合的调用,可以根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例。
假设,当前0号FPGA为1T算力、0号GPU为2T算力、0号CPU为0.5T算力,则可以将mini_batch拆分为比例为2:4:1的mini_batch,即FPGA、GPU和CPU的训练样本比例为2:4:1。
S102:当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构。
在本发明实施例中,构建硬件设备的神经网络架构指的是在Caffe架构的每一层中对硬件设备构建计算函数。
模型文件中记载了Caffe架构中每个layer的类型,在实际应用中,可以遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
以CPU为例,Caffe遍历prototxt定义的深度学习网络每一层,使用creat_layer函数为每一层创建CPU设备类型的计算函数。这样CPU类型的神经网络架构所有的计算在CPU中进行,所有中间层数据存储在主机内存。而GPU类型的神经网络架构所有的计算在GPU中进行,所有的中间层数据存储在GPU显存。同理FPGA类型的神经网络架构所有的计算在FPGA中进行,所有数据存储在FPGA内存。异构设备间的内存交互时间开销远大于设备内的内存开销。本发明实施例中,针对于不同的硬件设备设置独立的神经网络架构,每种类型的硬件设备有其对应的存储空间,在数据训练过程中无需执行异构设备间的数据交互,大大减小了交互开销。
不同类型的硬件设备有其各自对应的计算函数。对于同一个硬件设备而言,其在不同类型的layer中对应的计算函数有所差异。
根据layer类型和设备类型调用creat_layer函数为硬件设备创建各自计算函数的方式较为常规,在此不再赘述,本发明实施例中,针对于每一层都会创建硬件设备的计算函数,以便于每一层都可以调用多个硬件设备对训练集执行训练,实现多个硬件设备的并行处理。
S103:按照训练样本比例,将训练集划分为多个训练子集。
对于Caffe架构中每一层都可以调用多个硬件设备对训练集进行训练,在本发明实施例中,可以根据每个硬件设备分配的训练样本比例,对各硬件设备分配相应数量的训练数据。
训练样本比例反映的是各硬件设备的资源分配率,每个硬件设备有其独立的神经网络架构,因此,在划分出训练子集后,不同的训练子集对应不同硬件设备的神经网络架构。
以上述介绍中FPGA、GPU和CPU的训练样本比例为2:4:1为例,可以将训练集划分为3个训练子集,第一个训练子集包含2/7的训练数据;第二个训练子集包含4/7的训练数据;第三个训练子集包含1/7的训练数据。
需要说明的是,当检测到训练集对应的设备类型为异构资源集合时,既可以先执行S102中调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构,再执行S103按照训练样本比例,将训练集划分为多个训练子集。也可以先执行S103按照训练样本比例,将训练集划分为多个训练子集,再执行S102中调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构。
S104:调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
不同硬件设备的神经网络架构的区别主要体现在计算函数,计算函数包括前向计算函数和后向计算函数。
在实际应用中,可以调用与各训练子集相对应的前向计算函数,以利用前向计算函数所指向的硬件设备完成对各训练子集的训练。
每个硬件设备有其各自独立的神经网络架构以及存储空间,保证了各硬件设备训练过程的相互独立,训练过程在各硬件设备内部进行,训练过程中产生的中间层的数据存储在各个设备独立的内部存储空间,区别于传统的layer层级的并行拆分,无需进行设备间数据交互,节省数据传输时间。
由上述技术方案可以看出,根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;异构资源集合中包含了多个硬件设备,根据当前主机配置的硬件资源设置各硬件设备的训练样本比例,可以实现多个硬件设备的资源均衡,可以充分发挥各硬件设备的处理能力。当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;按照训练样本比例,将训练集划分为多个训练子集;不同的训练子集对应不同硬件设备的神经网络架构;调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。在该技术方案中,针对于每个硬件设备构建其独立的神经网络架构,使得每一层都可以调用多个硬件设备实现对训练集的训练,有效的提升了资源利用率。并且训练过程中产生的中间层的数据存储在各个设备独立的内部存储,区别于传统的layer层级的并行拆分,该技术方案无需进行硬件设备间数据交互,有效的节省了数据传输时间。
在本发明实施例中,为了提升Caffe架构中硬件设备的工作效率,可以依据当前各硬件设备的残差值(loss),对Caffe架构中各layer的权重值进行更新。
具体的,可以在调用与各训练子集相对应的前向计算函数,以利用前向计算函数所指向的硬件设备完成对各训练子集的训练之后,调用所有硬件设备各自的后向计算函数,对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值;对所有硬件设备的残差值进行归一化和正则化处理,得到更新后的权重值;将更新后的权重值分发到异构资源集合中的各硬件设备。
在本发明实施例中,为了提升权重更新的处理效率,可以选用CPU设备负责权重更新的工作。
举例说明,可以选取0号CPU执行权重计算工作,将各个硬件设备的更新权重值按照训练配置文件中设置的优化方式进行计算,并将计算后的权重值分发到各个硬件设备,各硬件设备依据0号CPU分发的权重值更新现有的权重。其中,优化方式包括对损失值进行归一化和正则化处理。
选用CPU设备负责权重更新的工作,可以使用本地内存完成权重计算工作,有效的提升了权重计算的效率。
图2为本发明实施例提供的一种异构资源的调用装置的结构示意图,包括设置单元21、构建单元22、划分单元23和调用单元24;
设置单元21,用于根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;
构建单元22,用于当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;
划分单元23,用于按照训练样本比例,将训练集划分为多个训练子集;其中,不同的训练子集对应不同硬件设备的神经网络架构;
调用单元24,用于调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
可选地,构建单元具体用于遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
可选地,计算函数包括前向计算函数和后向计算函数;
调用单元具体用于调用与各训练子集相对应的前向计算函数,以利用前向计算函数所指向的硬件设备完成对各训练子集的训练。
可选地,还包括统计单元、处理单元和分发单元;
统计单元,用于调用所有硬件设备各自的后向计算函数,对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值;
处理单元,用于对所有硬件设备的残差值进行归一化和正则化处理,得到更新后的权重值;
分发单元,用于将更新后的权重值分发到异构资源集合中的各硬件设备,以便于各硬件设备遍历更新各层的权重值。
可选地,异构资源集合包括FPGA、GPU和/或CPU,每个硬件设备有其独立的存储空间。
图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;异构资源集合中包含了多个硬件设备,根据当前主机配置的硬件资源设置各硬件设备的训练样本比例,可以实现多个硬件设备的资源均衡,可以充分发挥各硬件设备的处理能力。当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;按照训练样本比例,将训练集划分为多个训练子集;不同的训练子集对应不同硬件设备的神经网络架构;调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。在该技术方案中,针对于每个硬件设备构建其独立的神经网络架构,使得每一层都可以调用多个硬件设备实现对训练集的训练,有效的提升了资源利用率。并且训练过程中产生的中间层的数据存储在各个设备独立的内部存储,区别于传统的layer层级的并行拆分,该技术方案无需进行硬件设备间数据交互,有效的节省了数据传输时间。
图3为本发明实施例提供的一种异构资源的调用装置3的硬件结构示意图,包括:
存储器31,用于存储计算机程序;
处理器32,用于执行计算机程序以实现如上述任意实施例所述的异构资源的调用方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任意实施例所述的异构资源的调用方法的步骤。
以上对本发明实施例所提供的一种异构资源的调用方法、装置和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

Claims (10)

1.一种异构资源的调用方法,其特征在于,包括:
根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;
当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;
按照所述训练样本比例,将所述训练集划分为多个训练子集;其中,不同的训练子集对应不同硬件设备的神经网络架构;
调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
2.根据权利要求1所述的异构资源的调用方法,其特征在于,所述当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构包括:
遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
3.根据权利要求2所述的异构资源的调用方法,其特征在于,所述计算函数包括前向计算函数和后向计算函数;
所述调用与各训练子集相对应的神经网络架构对各训练子集进行训练包括:
调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练。
4.根据权利要求3所述的异构资源的调用方法,其特征在于,在调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练之后还包括:
调用所有所述硬件设备各自的后向计算函数,对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值;
对所有硬件设备的残差值对各自的神经网络架构各层的特征信息和权重分别进行残差计算,得出各层权重的残差值对所有硬件设备的残差值进行归一化和正则化处理,得到更新后的权重值;
将更新后的权重值分发到所述异构资源集合中的各硬件设备,以便于各硬件设备遍历更新各层的权重值。
5.根据权利要求1-4任意一项所述的异构资源的调用方法,其特征在于,所述异构资源集合包括FPGA、GPU和/或CPU,每个硬件设备有其独立的存储空间。
6.一种异构资源的调用装置,其特征在于,包括设置单元、构建单元、划分单元和调用单元;
所述设置单元,用于根据当前主机配置的硬件资源,为异构资源集合中的各硬件设备设置训练样本比例;
所述构建单元,用于当检测到训练集对应的设备类型为异构资源集合时,调用预先设置的模型文件对所述异构资源集合中的各硬件设备分别构建各自独立的神经网络架构;
所述划分单元,用于按照所述训练样本比例,将所述训练集划分为多个训练子集;其中,不同的训练子集对应不同硬件设备的神经网络架构;
所述调用单元,用于调用各硬件设备的神经网络架构对相应的训练子集进行训练,并将训练过程生成的数据存储至各硬件设备各自独立的存储空间。
7.根据权利要求6所述的异构资源的调用装置,其特征在于,所述构建单元具体用于遍历模型文件定义的深度学习网络的每一层,根据layer类型和设备类型调用creat_layer函数为每一层创建各硬件设备各自的计算函数。
8.根据权利要求7所述的异构资源的调用装置,其特征在于,所述计算函数包括前向计算函数和后向计算函数;
所述调用单元具体用于调用与各训练子集相对应的前向计算函数,以利用所述前向计算函数所指向的硬件设备完成对各训练子集的训练。
9.一种异构资源的调用装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至5任意一项所述异构资源的调用方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任意一项所述异构资源的调用方法的步骤。
CN202010479028.3A 2020-05-29 2020-05-29 一种异构资源的调用方法、装置和计算机可读存储介质 Withdrawn CN111722923A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010479028.3A CN111722923A (zh) 2020-05-29 2020-05-29 一种异构资源的调用方法、装置和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010479028.3A CN111722923A (zh) 2020-05-29 2020-05-29 一种异构资源的调用方法、装置和计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN111722923A true CN111722923A (zh) 2020-09-29

Family

ID=72565570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010479028.3A Withdrawn CN111722923A (zh) 2020-05-29 2020-05-29 一种异构资源的调用方法、装置和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN111722923A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281521A (zh) * 2021-11-21 2022-04-05 苏州浪潮智能科技有限公司 优化深度学习异构资源通信效率方法、系统、设备及介质
CN116521380A (zh) * 2023-07-05 2023-08-01 之江实验室 一种资源自适应协同的模型训练加速方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5390285A (en) * 1990-11-08 1995-02-14 British Telecommunications Public Limited Company Method and apparatus for training a neural network depending on average mismatch
CN104463322A (zh) * 2014-11-10 2015-03-25 浪潮(北京)电子信息产业有限公司 一种异构系统的并行混合人工蜂群方法
CN110462591A (zh) * 2017-04-26 2019-11-15 美的集团股份有限公司 使用作业服务器在大规模分布式系统上训练机器学习模型
CN110705705A (zh) * 2019-09-25 2020-01-17 浪潮电子信息产业股份有限公司 卷积神经网络模型同步训练方法、集群及可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5390285A (en) * 1990-11-08 1995-02-14 British Telecommunications Public Limited Company Method and apparatus for training a neural network depending on average mismatch
CN104463322A (zh) * 2014-11-10 2015-03-25 浪潮(北京)电子信息产业有限公司 一种异构系统的并行混合人工蜂群方法
CN110462591A (zh) * 2017-04-26 2019-11-15 美的集团股份有限公司 使用作业服务器在大规模分布式系统上训练机器学习模型
CN110705705A (zh) * 2019-09-25 2020-01-17 浪潮电子信息产业股份有限公司 卷积神经网络模型同步训练方法、集群及可读存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281521A (zh) * 2021-11-21 2022-04-05 苏州浪潮智能科技有限公司 优化深度学习异构资源通信效率方法、系统、设备及介质
CN114281521B (zh) * 2021-11-21 2024-01-09 苏州浪潮智能科技有限公司 优化深度学习异构资源通信效率方法、系统、设备及介质
CN116521380A (zh) * 2023-07-05 2023-08-01 之江实验室 一种资源自适应协同的模型训练加速方法、装置及设备

Similar Documents

Publication Publication Date Title
CN105446979B (zh) 数据挖掘方法和节点
CN105159610B (zh) 大规模数据处理系统及方法
CN112559163B (zh) 优化张量计算性能的方法及装置
US8898422B2 (en) Workload-aware distributed data processing apparatus and method for processing large data based on hardware acceleration
CN110516810B (zh) 一种量子程序的处理方法、装置、存储介质和电子装置
CN108334408B (zh) 代码执行方法、装置、终端设备及计算机可读存储介质
CN115880132B (zh) 图形处理器、矩阵乘法任务处理方法、装置及存储介质
WO2023066084A1 (zh) 算力分配方法、装置及算力服务器
CN111722923A (zh) 一种异构资源的调用方法、装置和计算机可读存储介质
US20210201120A1 (en) Inference apparatus, convolution operation execution method, and program
CN115237580B (zh) 面向智能计算的流水并行训练自适应调整系统、方法
CN114764549B (zh) 基于矩阵乘积态的量子线路模拟计算方法、装置
CN115437795B (zh) 一种异构gpu集群负载感知的显存重计算优化方法及系统
CN111461335A (zh) 基于mpi多进程的含噪声单量子逻辑门实现方法及装置
CN107957977A (zh) 一种计算方法及相关产品
CN107145394A (zh) 一种针对数据倾斜的均衡负载处理方法及装置
CN111767023A (zh) 数据排序方法和数据排序系统
CN116991560B (zh) 针对语言模型的并行调度方法、装置、设备及存储介质
CN105210059A (zh) 一种数据处理方法及系统
CN115016947A (zh) 负载分配方法、装置、设备及介质
CN110766133B (zh) 嵌入式设备中的数据处理方法、装置、设备和存储介质
CN112506644B (zh) 基于云边端混合计算模式系统的任务调度方法和系统
CN113128771A (zh) 一种并行差分进化算法的昂贵函数寻优方法及其装置
CN110162021A (zh) 一种控制论系统性能检测方法
CN117112145B (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20200929