CN114816755A - 调度方法及调度装置、处理核、电子设备、可读介质 - Google Patents
调度方法及调度装置、处理核、电子设备、可读介质 Download PDFInfo
- Publication number
- CN114816755A CN114816755A CN202210467443.6A CN202210467443A CN114816755A CN 114816755 A CN114816755 A CN 114816755A CN 202210467443 A CN202210467443 A CN 202210467443A CN 114816755 A CN114816755 A CN 114816755A
- Authority
- CN
- China
- Prior art keywords
- node
- computing
- calculation
- computation
- neuron
- 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.)
- Pending
Links
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/5083—Techniques for rebalancing the load in a distributed system
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/061—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using biological neurons, e.g. biological neurons connected to an integrated circuit
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了一种计算资源的调度方法,所述调度方法包括:确定多个计算节点中各个所述计算节点在预定时间段内的计算量;当各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量未过载的计算节点。本公开还提供了一种调度装置、一种数据处理方法、一种数据处理装置、一种电子设备及一种计算机可读介质。
Description
技术领域
本公开涉及人工智能技术领域,特别涉及一种计算资源的调度方法及调度装置、处理核、电子设备、计算机可读介质。
背景技术
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考或规划等)的学科,主要包括计算机实现智能的原理、制造类似于人脑智能的计算机,使计算机能实现更高层次的应用。
随着人工智能技术的不断发展,涌现出了各种用于模拟人脑中神经元的神经网络。相应地,需要通过多个计算节点组成的计算系统执行神经网络中的运算。
而在通过多个计算节点组成的计算系统执行神经网络中的运算时,通常根据神经网络中各个神经元的静态拓扑连接特性为各个计算节点分配计算任务。如何提高计算系统的计算效率,一直是本领域所追求的。
发明内容
本公开提供一种计算资源的调度方法及调度装置、处理核、电子设备、计算机可读介质。
第一方面,本公开提供了一种计算资源的调度方法,所述调度方法包括:
确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
当各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量未过载的计算节点。
可选地,所述计算任务包括以下任务中的至少一者:
图像处理任务、语音处理任务、文本处理任务、当前计算节点对应的神经元所连接的后继突触的权重、延迟、以及后继神经元的编号信息进行收集。
第二方面,本公开提供了一种数据处理方法,包括:
确定与当前计算节点连接的突触的突触信息,所述突触信息包括当前计算节点对应的神经元的后继神经元的位置信息、以及当前计算节点对应的神经元的突触权重;
将当前计算节点对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述后继神经元对应的计算节点进行突触积分计算,
其中,当存在任务转移通知时,至少部分所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行本公开第一个方面所提供的调度方法后生成的任务转移通知。
第三方面,本公开提供了一种计算资源的调度装置,包括:
计算量确定模块,用于确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
任务转移模块,用于在各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量过载的计算节点。
第四方面,本公开提供了一种数据处理装置,包括:
关联突触信息确定模块,用于确定与当前数据处理装置连接的突触的突触信息,所述突触信息包括当前数据处理装置对应的神经元的后继神经元的位置信息、以及当前数据处理装置对应的神经元的突触权重;
发送模块,用于将当前数据处理装置对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述后继神经元对应的计算节点进行突触积分计算,其中,当存在任务转移通知时,至少部分所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行本公开第一个方面所提供的调度方法后生成的任务转移通知。
第五方面,本公开提供了一种处理核,包括上述调度装置,和/或上述数据处理装置。
第六个方面,本公开提供了一种电子设备,包括:
多个处理核;以及
片上网络,被配置为交互所述多个处理核间的数据和外部数据;
一个或多个所述处理核中存储有一个或多个指令,一个或多个所述指令被一个或多个所述处理核执行,以使一个或多个所述处理核能够执行上述调度方法,和/或上述数据处理方法。
第七个方面,提供一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理核执行时实现上述调度方法;和/或上述数据处理方法。
本公开所提供的计算资源的调度方法及调度装置、处理核、电子设备、计算机可读介质,在利用包括多个计算节点的计算系统执行神经网络运算时,对预定时间段内的计算节点的计算量进行统计,当发现不同计算节点之间的计算量不均衡(即,不同计算节点之间计算量差距较大),则将计算量过载的计算节点中的部分计算任务转移至其他计算量未过载的计算节点中,从而可以实现不同计算节点之间的负载均衡、并提高神经网络的整体运算效率的目的。
通过所述调度方法对神经元的计算任务进行调整后,各个计算节点所负责的计算任务可能不再对应于同一层中的神经元。换言之,通过本公开所提供的计算资源的调度方法对计算任务进行重新分配后,发放率较大的神经元的计算任务分散在多个不同的计算节点中,使得不同计算节点的负载均衡。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用来提供对本公开的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其他特征和优点对本领域技术人员将变得更加显而易见,在附图中:
图1为本公开提供的计算资源的调度方法的一种实施方式的流程图;
图2为步骤S110的一种实施方式的流程图;
图3为本公开所提供的调度方法的另一种实施方式的流程图;
图4是本公开第二个方面所提供的数据处理方法的一种实施方式的流程图;
图5是一种神经网络的示意图;
图6为本公开所提供的一种调度装置的组成框图;
图7为本公开所提供的一种数据处理装置的组成框图;
图8是本公开所提供的电子设备的组成框图。
具体实施方式
为使本领域的技术人员更好地理解本公开的技术方案,以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
除了神经元数量外,神经网络的计算量还取决于神经元的发放率。而神经元的发放率与该神经元所在层有明显关联,也就是说,不同层的神经元的发放率可能存在很大区别。如果只根据神经元的静态连接特性进行计算资源的分配,会造成计算节点负载不均衡,降低总体计算效率。需要指出的是,此处“计算节点”可以被看作是“计算资源”。
图1为本公开实施例提供的一种计算资源的调度方法的一种实施方式的流程图。
本公开实施例提供一种计算资源的调度方法,参照图1,所述调度方法都包括:
在步骤S110中,确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
在步骤S120中,当各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点。
其中,所述目标计算节点为满足预设条件、且计算量未过载的计算节点。
在利用包括多个计算节点的计算系统执行神经网络运算时,对预定时间段内的计算节点的计算量进行统计,当发现不同计算节点之间的计算量不均衡(即,不同计算节点之间计算量差距较大),则将计算量过载的计算节点中的部分计算任务转移至其他计算量未过载的计算节点中,从而可以实现不同计算节点之间的负载均衡、并提高神经网络的整体运算效率的目的。
通过所述调度方法对神经元的计算任务进行调整后,各个计算节点所负责的计算任务可能不再对应于同一层中的神经元。换言之,通过本公开所提供的计算资源的调度方法对计算任务进行重新分配后,发放率较大的神经元的计算任务分散在多个不同的计算节点中,使得不同计算节点的负载均衡。
在本公开中,对“预设条件”也不做特殊的限定。例如,所述预定条件可以是计算量低于某个特定的计算量。再例如,所述预定条件可以为:与所述计算量过载的计算节点之间的距离不超过预定数量的计算节点。也就是说,目标计算节点应当是与计算量过载的计算节点距离较近的计算节点(例如,所述目标计算计算节点与计算量过载的计算节点之间的距离不超过两个计算节点)。
作为一种优选实施方式,周期性地执行所述调度方法,并且,不同周期内的预定时间段为各自周期内的时间段。在这种实施方式中,每隔一段时间进行一次计算节点的计算量统计,发现存在计算节点之间计算量不均衡(即,负载不均衡)的现象时,即对计算量过载的计算节点进行计算任务转出,再次实现负载均衡。也就是说,通过本实施方式所提供的调度方法,可以在出现负载不均衡时及时对计算资源进行重新分配,并在整个计算过程中实现大致负载均衡,最终提高神经网络的运算效率。
在本公开中,对如何确定多个计算节点中各个计算节点在预定时间段内的计算量不做特殊的限定,作为一种可选实施方式,如图2所示,确定多个计算节点中各个计算节点在预定时间段内的计算量的步骤S110可以包括:
在步骤S110a中,分别统计所述预定时间段内多个计算节点中的每一个计算节点的发放脉冲个数;
在步骤S110b中,根据以下公式(2)计算各个计算节点在所述预定时间段内的计算量:
Pi=Ri·Ci (2)
其中,多个计算节点依次编号,i为计算节点的编号;
Pi为第i个计算节点在所述预定时间段内的计算量;
Ri为第i个计算节点在所述预定时间段内的发放脉冲个数;
Ci为第i个计算节点在所述预定时间段内的突触连接个数。
在本公开中,对所述计算资源的调度方法的执行设备不做特殊的限定。作为一种可选实施方式,可以利用独立于计算节点的电子设备执行所述调度方法、也可以利用多个计算节点中的一者执行所述调度方法。
当由独立于计算节点的电子设备执行所述调度方法时,所述电子设备可以向各个计算节点发送发放脉冲个数获取请求,以获得各个计算节点在所述预定时间段内的发放脉冲个数。
当由计算节点执行所述调度方法时,执行该调度方法的计算节点可以向其他计算节点发送发放脉冲个数获取请求,以获得其他各个计算节点在所述预定时间段内发放的脉冲个数。当然,本公开并不限于此,在这种实施方式中,各个计算节点可以周期性地向其他计算节点发送自己在预定时间段内的发放脉冲个数。
在本公开中,对如何判定各个计算节点之间的计算量是否出现不均衡现象不做特殊的限定。作为一种可选实施方式,如图3所示,所述调度方法还可以包括在步骤S110之后进行的如下步骤:
在步骤S112中,确定所述预定时间段内多个计算节点的平均计算量;
在步骤S114中,根据各个所述计算节点在所述预定时间段内的计算量、以及所述平均计算量按照公式(1)分别计算各个计算节点的均衡系数;
在步骤S116中,当存在均衡系数大于预设阈值的计算节点时,判定各个计算节点之间的计算量不均衡。
其中,i为计算节点的编号;
Pi为第i个计算节点在所述预定时间段内的计算量;
εi为第i个计算节点的均衡系数。
εi越大、则说明第i个计算节点的计算量与多个计算节点的平均计算量相差越大。
在本公开中,对预设阈值的具体取值不做特殊的限定,可以根据对神经网络的运算速度要求来确定所述预设阈值。要求神经网络的运算速度越快、则预设阈值的取值越小。作为一种可选实施方式,所述预设阈值可以取自5至10之间。也就是说,当存在运算量与平均运算量相差5至10倍的计算节点时,则认为出现了负载不均衡。
在本公开中,对如何确定负载不均衡情况中的“计算量过载的计算节点”不做特殊的限定。例如,可以将计算量超过预定量的计算节点确定为计算量过载的计算节点。也可以将计算量超过平均计算量过多的计算节点确定为计算量过载的计算节点(例如,可以将计算量超过平均计算量5-10倍的计算节点确定为计算量过载的计算节点)。相应地,在所述调度方法中,可以将将计算量未达到在所述预定时间段内所有计算节点的平均计算量的计算节点确定为计算量未过载的计算节点。
在本公开中,对如何确定需要被转移至目标计算节点的计算任务不做特殊的限定。为了提高转移速率,作为一种可选实施方式,在步骤S120中,可以随机地从所述计算量过载的计算节点中选择神经元,并将选中的神经元的计算任务转移至所述目标计算节点。
对于神经网络而言,神经元通常是分组的。例如,生物特性相同的神经元被划分在同一个组中。对应于计算节点而言,计算节点中执行的计算任务也是分组的。为了提高任务转移的效率,作为本公开的另一种可选实施方式,可以对计算任务进行整组转移,也就是说,在步骤S120中,可以将所述计算量过载的计算节点中至少一个任务组移至所述目标计算节点,其中,所述任务组包括多个神经元对应的计算任务。
为了能够顺畅地通过神经网络处理数据,可选地,如图3所示,在步骤S120之后,所述调度方法还可以包括:
在步骤S130中,向计算任务被转移至目标计算节点的神经元相关联的计算节点发送任务转移通知,所述任务转移通知携带有所述目标计算节点的地址信息。
在本公开中,所谓“计算任务被转移至目标计算节点的神经元相关联的计算节点”为“计算任务被转移至目标计算节点的神经元”的前继突触所在的计算节点、和/或“计算任务被转移至目标计算节点的神经元”的后继突触所在的计算节点。
进一步地,如图3所示,在步骤S120之后,所述调度方法还可以包括:
在步骤S140中,将被转移至目标计算节点的计算任务对应的神经元的胞体处理信息、以及后继突触信息发送至所述目标节点。
作为本公开的第二个方面,提供一种数据处理方法,如图4所示,所述数据处理方法包括:
在步骤S210中,确定与当前计算节点连接的突触信息,所述突触信息包括当前计算节点对应的神经元的后继神经元的位置信息、以及当前计算节点对应的神经元的突触权重;
在步骤S220中,将当前计算节点对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述计算节点进行突触积分计算。
其中,当存在任务转移通知时,所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行本公开第一个方面所提供的调度方法后生成的任务转移通知。
当然,在不存在任务转移通知时,后继神经元的位置信息即为初始设定的后继神经元的位置信息。
下面参照图5对本公开所提供的数据处理方法进行详细的介绍。
图5中示出了两个前继神经元(分别为前继神经元A1和前继神经元A2),以及四个后继神经元(分别为后继神经元B、后继神经元C、后继神经元D、后继神经元E)。
对于前继神经元A1所在的计算节点,执行的数据处理方法如下:
获取前继神经元A1连接的突触的突触信息,该突触信息包括后继神经元的地址信息(例如,编号)、以及前继神经元分别对于各个后继神经元的突触权重w1、w2、w3、w4;
将权重信息分发给负责各个后继神经元的计算节点,以供各个计算节点进行突触积分计算。
作为本公开的第三个方面,提供一种计算资源的调度装置,如图6所示,所述调度装置包括计算量确定模块310和任务转移模块320。
计算量确定模块310用于执行步骤S110,即,计算量确定模块310用于确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
任务转移模块320用于执行步骤S120,即,任务转移模块320用于在各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量过载的计算节点。
需要指出的是,在本公开中,对计算任务的具体类型不做特殊的限定。例如,所述计算任务可以是图像处理任务、语音处理任务、文本处理任务等中的一者或几者。此外,所述计算任务还可包括对当前计算节点对应的神经元所连接的后继突触的权重、延迟、后继神经元的编号信息进行收集。即,当前计算节点可以根据神经元编号获取上述信息。这部分计算任务是突触前神经元的主要运算负载。上述收集过程可以是从存储器(片上或片外)的读取和整理过程。
本公开所提供的调度装置用于执行本公开第一个方面所提供的调度方法,上文中已经对所述调度方法的原理以及有益效果进行了详细的描述,这里不再赘述。
可选地,调度装置还可以包括平均计算量确定模块330、均衡系数计算模块340、以及判断模块350。
平均计算量确定模块330用于确定所述预定时间段内多个计算节点的平均计算量。
均衡系数计算模块340用于根据各个所述计算节点在所述预定时间段内的计算量、以及所述平均计算量按照公式(1)分别计算各个计算节点的均衡系数。
判断模块350用于在存在均衡系数大于预设阈值的计算节点时,判定各个计算节点之间的计算量不均衡。
其中,i为计算节点的编号;
Pi为第i个计算节点在所述预定时间段内的计算量;
εi为第i个计算节点的均衡系数。
可选地,所述预设阈值取自5至10之间。
可选地,判断模块350还用于:
将计算量超过在所述预定时间段内所有计算节点的平均计算量预定倍数的计算节点确定为所述计算量过载的计算节点;
将计算量未达到在所述预定时间段内所有计算节点的平均计算量的计算节点确定为计算量未过载的计算节点。
可选地,所述预定倍数为5至10倍。
可选地,任务转移模块320用于随机地从所述计算量过载的计算节点中选择神经元,并将选中的神经元的计算任务转移至所述目标计算节点。
可选地,任务转移模块320用于将所述计算量过载的计算节点中至少一个任务组移至所述目标计算节点,其中,所述任务组包括多个神经元对应的计算任务。
可选地,所述调度装置还包括任务转移通知生成模块360,用于:
生成任务转移通知,所述任务转移通知携带有目标计算节点的地址信息;
向计算任务被转移至目标计算节点的神经元相关联的计算节点发送所述任务转移通知。
可选地,被转移至目标计算节点的神经元相关联的计算节点包括被转移至目标计算节点的神经元的前继突触所在的计算节点,和/或被转移至目标计算节点的神经元相关联的计算节点包括被转移至目标计算节点的神经元的后继突触所在的计算节点。
可选地,所述调度装置还可以包括转发模块370,该转发模块370用于将被转移至目标计算节点的计算任务对应的神经元的胞体处理信息、以及后继突触信息发送至所述目标节点。
作为本公开的第四个方面,提供一种数据处理装置,如图7所示,该数据处理装置包括关联突触信息确定模块410和发送模块420。
关联突触信息确定模块410用于执行步骤S210,即,用于确定与当前数据处理装置连接的突触的突触信息,所述突触信息包括当前数据处理装置对应的神经元的后继神经元的位置信息、以及当前数据处理装置对应的神经元的突触权重。
发送模块420用于执行步骤S220,即,用于将当前数据处理装置对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述后继神经元对应的计算节点进行突触积分计算,其中,当存在任务转移通知时,所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行本公开第一个方面所提供的调度方法后生成的任务转移通知。
作为本公开的第五个方面,提供一种处理核,该处理核包括上述的调度装置和/或数据处理装置。
作为基本功课的第六个方面,提供一种电子设备。参照图8,本公开实施例提供了一种电子设备,该电子设备包括多个处理核601以及片上网络602,其中,多个处理核601均与片上网络602连接,片上网络602用于交互多个处理核间的数据和外部数据。
其中,一个或多个处理核601中存储有一个或多个指令,一个或多个指令被一个或多个处理核601执行,以使一个或多个处理核601能够执行上述的调度方法和/或数据处理方法。
此外,本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理核执行时实现上述的调度方法和/或数据处理方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (19)
1.一种计算资源的调度方法,所述调度方法包括:
确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
当各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量未过载的计算节点。
3.根据权利要求2所述的调度方法,其中,所述预设阈值取自5至10之间。
4.根据权利要求2所述的调度方法,其中,在判定各个计算节点之间的计算量不均衡之后,所述调度方法还包括:
将计算量超过在所述预定时间段内所有计算节点的平均计算量预定倍数的计算节点确定为所述计算量过载的计算节点;
将计算量未达到在所述预定时间段内所有计算节点的平均计算量的计算节点确定为计算量未过载的计算节点。
5.根据权利要求4所述的调度方法,其中,所述预定倍数为5至10倍。
6.根据权利要求1至5中任意一项所述的调度方法,其中,在将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点的步骤中,随机地从所述计算量过载的计算节点中选择神经元,并将选中的神经元的计算任务转移至所述目标计算节点。
7.根据权利要求1至5中任意一项所述的调度方法,其中,在将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点的步骤中,将所述计算量过载的计算节点中至少一个任务组移至所述目标计算节点,其中,所述任务组包括多个神经元对应的计算任务。
8.根据权利要求1至5中任意一项所述的调度方法,其中,在将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点的步骤之后,所述调度方法还包括:
生成任务转移通知,所述任务转移通知携带有目标计算节点的地址信息;
向计算任务被转移至目标计算节点的神经元相关联的计算节点发送所述任务转移通知。
9.根据权利要求8所述的调度方法,其中,被转移至目标计算节点的神经元相关联的计算节点包括被转移至目标计算节点的神经元的前继突触所在的计算节点,和/或被转移至目标计算节点的神经元相关联的计算节点包括被转移至目标计算节点的神经元的后继突触所在的计算节点。
10.根据权利要1至5中任意一项所述的调度方法,其中,在将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点的步骤之后,所述调度方法还包括:
将被转移至目标计算节点的计算任务对应的神经元的胞体处理信息、以及后继突触信息发送至所述目标节点。
11.根据权利要求1至5中任意一项所述的调度方法,其中,所述预设条件包括:
与所述计算量过载的计算节点之间的距离不超过预定数量的计算节点。
12.根据权利要求1至5中任意一项所述的调度方法,其中,所述调度方法周期性地进行,且不同周期内的预定时间段为各自周期内的时间段。
13.根据权利要求1至5中任意一项所述的调度方法,其中,所述计算任务包括以下任务中的至少一者:
图像处理任务、语音处理任务、文本处理任务、当前计算节点对应的神经元所连接的后继突触的权重、延迟、以及后继神经元的编号信息进行收集。
14.一种数据处理方法,包括:
确定与当前计算节点连接的突触的突触信息,所述突触信息包括当前计算节点对应的神经元的后继神经元的位置信息、以及当前计算节点对应的神经元的突触权重;
将当前计算节点对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述后继神经元对应的计算节点进行突触积分计算,
其中,当存在任务转移通知时,至少部分所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行权利要求1至13中任意一项所述的调度方法后生成的任务转移通知。
15.一种计算资源的调度装置,包括:
计算量确定模块,用于确定多个计算节点中各个所述计算节点在预定时间段内的计算量;
任务转移模块,用于在各个计算节点之间的计算量不均衡时,将计算量过载的计算节点中至少一个神经元的计算任务转移至目标计算节点,其中,所述目标计算节点为满足预设条件、且计算量过载的计算节点。
16.一种数据处理装置,包括:
关联突触信息确定模块,用于确定与当前数据处理装置连接的突触的突触信息,所述突触信息包括当前数据处理装置对应的神经元的后继神经元的位置信息、以及当前数据处理装置对应的神经元的突触权重;
发送模块,用于将当前数据处理装置对应的神经元的突触权重发送至后继神经元对应的计算节点,以供所述后继神经元对应的计算节点进行突触积分计算,其中,当存在任务转移通知时,至少部分所述后继神经元的位置信息由所述任务转移通知所携带,且所述任务转移通知为执行权利要求1至13中任意一项所述的调度方法后生成的任务转移通知。
17.一种处理核,包括权利要求15所述的调度装置,和/或权利要求16所述的数据处理装置。
18.一种电子设备,包括:
多个处理核;以及
片上网络,被配置为交互所述多个处理核间的数据和外部数据;
一个或多个所述处理核中存储有一个或多个指令,一个或多个所述指令被一个或多个所述处理核执行,以使一个或多个所述处理核能够执行权利要求1-13中任一项所述的调度方法,和/或权利要求14所述的数据处理方法。
19.一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理核执行时实现如权利要求1-13中任一项所述的调度方法;和/或权利要求14所述的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210467443.6A CN114816755A (zh) | 2022-04-29 | 2022-04-29 | 调度方法及调度装置、处理核、电子设备、可读介质 |
PCT/CN2023/090799 WO2023208027A1 (zh) | 2022-04-29 | 2023-04-26 | 信息处理方法及处理单元、设备、介质、产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210467443.6A CN114816755A (zh) | 2022-04-29 | 2022-04-29 | 调度方法及调度装置、处理核、电子设备、可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114816755A true CN114816755A (zh) | 2022-07-29 |
Family
ID=82510000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210467443.6A Pending CN114816755A (zh) | 2022-04-29 | 2022-04-29 | 调度方法及调度装置、处理核、电子设备、可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114816755A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023208027A1 (zh) * | 2022-04-29 | 2023-11-02 | 北京灵汐科技有限公司 | 信息处理方法及处理单元、设备、介质、产品 |
-
2022
- 2022-04-29 CN CN202210467443.6A patent/CN114816755A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023208027A1 (zh) * | 2022-04-29 | 2023-11-02 | 北京灵汐科技有限公司 | 信息处理方法及处理单元、设备、介质、产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018076791A1 (zh) | 一种资源负载均衡控制方法及集群调度器 | |
CN112486690A (zh) | 一种适用于工业物联网的边缘计算资源分配方法 | |
CN108055292B (zh) | 一种虚拟机向物理机映射的优化方法 | |
CN108965014A (zh) | QoS感知的服务链备份方法及系统 | |
CN106326000A (zh) | 一种云计算系统中的资源调度方法及装置 | |
CN110874626B (zh) | 一种量化方法及装置 | |
CN108111335A (zh) | 一种调度和链接虚拟网络功能的方法及系统 | |
CN108717460A (zh) | 一种在区块链中达成共识的方法及装置 | |
CN117041330B (zh) | 一种基于强化学习的边缘微服务细粒度部署方法及系统 | |
CN109976901A (zh) | 一种资源调度方法、装置、服务器及可读存储介质 | |
CN113553160A (zh) | 用于人工智能物联网的边缘计算节点任务调度方法及系统 | |
CN114816755A (zh) | 调度方法及调度装置、处理核、电子设备、可读介质 | |
CN113722112B (zh) | 一种服务资源负载均衡处理方法及系统 | |
CN113627545A (zh) | 一种基于同构多教师指导知识蒸馏的图像分类方法及系统 | |
CN114511042A (zh) | 一种模型的训练方法、装置、存储介质及电子装置 | |
CN113553138A (zh) | 一种云资源调度的方法及装置 | |
CN110233866A (zh) | 一种负载均衡方法及负载均衡器 | |
CN114205317B (zh) | 基于sdn与nfv的服务功能链sfc资源分配方法及电子设备 | |
CN111813524B (zh) | 一种任务执行方法、装置、电子设备和存储介质 | |
CN113868808A (zh) | 一种道路网络临近检测时延优化方法、装置和系统 | |
CN116915869A (zh) | 基于云边协同的时延敏感型智能服务快速响应方法 | |
CN111488208A (zh) | 基于可变步长蝙蝠算法的边云协同计算节点调度优化方法 | |
CN114546609A (zh) | 一种面向异构集群的dnn推理任务批调度方法 | |
CN113965837B (zh) | 光网络动态频谱分区方法、装置、存储介质和计算机设备 | |
CN113641496B (zh) | 基于深度强化学习的dids任务调度优化方法 |
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 |