CN113971085A - 主从核心区分处理任务的方法、装置、系统和存储介质 - Google Patents
主从核心区分处理任务的方法、装置、系统和存储介质 Download PDFInfo
- Publication number
- CN113971085A CN113971085A CN202111546931.8A CN202111546931A CN113971085A CN 113971085 A CN113971085 A CN 113971085A CN 202111546931 A CN202111546931 A CN 202111546931A CN 113971085 A CN113971085 A CN 113971085A
- Authority
- CN
- China
- Prior art keywords
- interval
- core
- task
- cache
- buffer
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 79
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 239000000872 buffer Substances 0.000 claims abstract description 153
- 238000012544 monitoring process Methods 0.000 claims abstract description 13
- 238000013508 migration Methods 0.000 claims description 12
- 230000005012 migration Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000026676 system process Effects 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/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
- 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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种主从核心区分处理任务的方法、装置、物联网系统和存储介质。该方法,包括:通过主执行核心监测多核物联网系统中的任务状态,多核物联网系统的从执行核心分别对应分配有缓存区间,缓存区间为多核物联网系统中的先入先出缓存队列的一段,多核物联网系统包括一个主执行核心和多个从执行核心;当主执行核心监测到有最新任务输入,则将最新任务缓存到第一缓存区间,以对应分配到第一缓存区间对应的从执行核心,第一缓存区间为当前剩余缓存队列最长的缓存区间;当主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。本方案提高了物联网系统中多核处理任务调度的数据处理效率,减少了任务拥塞。
Description
技术领域
本发明实施例涉及网络技术领域,尤其涉及主从核心区分处理任务的方法、装置、设备和存储介质。
背景技术
物联网被看作信息领域一次重大的发展和变革机遇,并有望带来革命性变革,在较为普遍的观点里,这种革命性变革将在工业、农业、物业、城市管理、安全消防等各个领域产生全方位的影响。但是从技术上而言,物联网不仅仅是改变数据传输的主体,物联网也与传统通信有着明显的区别。例如,大规模物联网的特点是大量用户零星地发送很小的包,这与传统蜂窝通信不同。
为适应物联网中的任务调度需求,通常会针对大规模物联网设计高性能的嵌入式节点对物联网内收集到的数据进行并行处理,甚至采用多核处理的方式实现任务调度。
发明人在大规模物联网中通过多核处理的方式进行任务调度的过程中发现,一个任务可能在多个执行核心之间发生多次调度,做了大量的无用调度,调度效率较低。
发明内容
本发明提供了一种主从核心区分处理任务的方法、装置、系统和存储介质,以解决现有技术物联网多核处理任务调度的调度效率较低的技术问题。
第一方面,本发明实施例提供了一种主从核心区分处理任务的方法,用于多核物联网系统,包括:
通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;
当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;
当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。
进一步的,所述方法,还包括:
当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
进一步的,所述当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,包括:
当所述主执行核心监测到有空闲缓存区间出现,则逐次确认第二缓存区间,并从所述第二缓存区间中逐个迁移任务缓存到所述空闲缓存区间,直至所述空闲缓存区间中的任务数量达到预设门限值,或所有缓存区间中的任务数量不高于预设门限值。
进一步的,当有多个第二缓存区间,则随机从一个所述第二缓存区间中迁移一个任务缓存到所述空闲缓存区间。
进一步的,当有多个第一缓存区间,则将所述最新任务随机缓存到其中一个第一缓存区间。
进一步的,每个所述从执行核心对应的缓存队列的长度相同。
第二方面,本发明实施例还提供了一种主从核心区分处理任务的装置,用于多核物联网系统,包括:
状态监听单元,用于通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;
任务缓存单元,用于当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;
拥塞处理单元,用于当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。
进一步的,所述装置,还包括:
任务迁移单元,用于当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
进一步的,所述当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,包括:
当所述主执行核心监测到有空闲缓存区间出现,则逐次确认第二缓存区间,并从所述第二缓存区间中逐个迁移任务缓存到所述空闲缓存区间,直至所述空闲缓存区间中的任务数量达到预设门限值,或所有缓存区间中的任务数量不高于预设门限值。
进一步的,当有多个第二缓存区间,则随机从一个所述第二缓存区间中迁移一个任务缓存到所述空闲缓存区间。
进一步的,当有多个第一缓存区间,则将所述最新任务随机缓存到其中一个第一缓存区间。
进一步的,每个所述从执行核心对应的缓存队列的长度相同。
第三方面,本发明实施例还提供了一种物联网系统,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述物联网系统实现如第一方面任一所述的主从核心区分处理任务的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的主从核心区分处理任务的方法。
上述主从核心区分处理任务的方法、装置、物联网系统和存储介质,通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。本方案通过主执行核心对任务状态进行监测,在收到最新任务时根据缓存区间中的任务数量将其分配到对应的缓存区间,主执行核心在监测到任务拥塞时对应进行处理,减少了任务分配的切换过程,提高了物联网系统中多核处理任务调度的数据处理效率。
附图说明
图1为本发明实施例一提供的一种主从核心区分处理任务的方法的流程图;
图2为本发明实施例二提供的一种主从核心区分处理任务的装置的结构示意图;
图3为本发明实施例三提供的一种物联网系统的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
需要注意的是,由于篇幅所限,本申请说明书没有穷举所有可选的实施方式,本领域技术人员在阅读本申请说明书后,应该能够想到,只要技术特征不互相矛盾,那么技术特征的任意组合均可以构成可选的实施方式。
下面对各实施例进行详细说明。
实施例一
图1为本发明实施例一提供的一种主从核心区分处理任务的方法的流程图。实施例中提供的主从核心区分处理任务的方法可以由用于主从核心区分处理任务的的各种操作设备执行,该操作设备可以通过软件和/或硬件的方式实现,该操作设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。
具体的,参考图1,该主从核心区分处理任务的方法,具体包括:
步骤S101:通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心。
在物联网系统的架构中,汇聚节点是架构的关键部件,在具体实现过程中,多核物联网系统基于嵌入式多核处理器进行设计,嵌入式多核处理器中的多个执行核心可以同时进行运算,从而在有限的资源配置下,为多核物联网系统中的数据收集带来更高的处理效率。
对于嵌入式多核处理器而言,其中每个处理核同一时间不能处理所有分配给它的任务,即分配给一个物联网节点的任务可能需要排队,处于排队状态的任务暂时缓存在先入先出缓存队列。按现有技术,这些任务在排队过程中,可能会根据执行核心的实际处理进度不断调度切换分配到不同的执行核心等待执行,相当于在任务调度安排过程中进行了无效的调度处理过程。
在本方案中,为提高调度处理效率,将先入先出缓存队列进行分段,同时将执行核心根据计算对象不同分级为一个主执行核心和多个从执行核心,主执行核心的核心计算功能是任务调度分配,从执行核心的核心计算功能是任务处理。每段缓存队列分别对应一个从执行核心,具体分配到某一个从执行核心的任务先缓存到对应的缓存区间,通过这种从执行核心与缓存区间的对应分配的方式,将任务与对应处理该任务的从执行核心的关联关系以一种相对静态的方式进行固定,以尽可能减少无效的任务分配调度处理。在具体对先入先出缓存队列进行分段时,可以将分配到每个从执行核心的缓存区间设置为相同,即每个所述从执行核心对应的缓存队列的长度相同,从而保证每个从执行核心分配的任务上限相同,分配调度到每个从执行核心的任务量相对均衡。
步骤S102:当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间。
对于物联网节点,在收到最新任务输入时,需要将该最新任务分配到该物联网节点的嵌入式多核处理器中的某个从执行核心,以现有的处理方式,在当前的从执行核心均有任务待执行时,先入先出缓存队列作为一个整体进行缓存管理,一个任务对具体从执行核心的分配过程可能因为任务处理进度的变化不断发生调整,导致任务在先入先出缓存队列中缓存时要不断监控所有从执行核心的任务处理状态,进而不断对任务分配进行适应性调整。在本方案中,最新任务直接分配到当前处理任务最少的从执行核心,并且分配到每个从执行核心的任务都相对固定,以最初分配的从执行核心进行任务处理为基本处理原则,减少任务等待处理过程中的分配变动。
在具体分配时,为尽可能减少每个任务的排队等待时间,对于检测到的最新任务,首先会判断每个从执行核心当前的任务状态。当前的任务状态从从执行核心对应的缓存区间确认,整体而言,缓存区间中当前缓存的任务最少,则占用的缓存队列越短,剩余缓存队列越长,将剩余缓存队列最长的缓存区间认定为第一缓存区间,并将最新任务分配到第一缓存区间,最新任务缓存到第一缓存区间之后,根据缓存区间与从执行核心的对应关系,即确定该最新任务分配的从执行核心,在缓存区间等待对应的从执行核心的处理即可。
在实际处理过程中,有可能存在多个缓存区间中的剩余任务相同,即存在有可能多个缓存区间均为第一缓存区间,当有多个第一缓存区间,则将所述最新任务随机缓存到其中一个第一缓存区间。
步骤S103:当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。
当缓存区间中的任务处于拥塞状态,则需要加快任务处理速度,此时可以将主执行核心加入到任务处理序列,在实现任务调度的同时,利用富余的算力对任务进行处理,尽可能解除任务的拥塞。
为进一步平衡各个从执行核心对应的任务状态,通过步骤S104对缓存区间中的任务进行迁移。
步骤S104:当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
在各个从执行核心对任务进行处理过程,因任务复杂程度、数据传输速度、带宽分配等原因,可能导致任务处理的速度并不完全相同,最终导致缓存区间中的任务排队状况不同。例如某些从执行核心可能已经将所有的任务处理完毕,即已经清空对应的缓存区间中的任务;而其它从执行核心对应的缓存区间还有多个任务在排队。此时,可以从排队的缓存区间中迁移一个或多个任务到空闲缓存区间,从整体上提高任务的处理速度,同时避免出现从执行核心处于空闲状态的情况。
在具体进行任务迁移时,不是一次从其它缓存区间将多个任务迁移到空闲缓存区间,而是逐次迁移,判断所有缓存区间中的任务数量状态。整体而言,当所述主执行核心监测到有空闲缓存区间出现,则逐次确认第二缓存区间,并从所述第二缓存区间中逐个迁移任务缓存到所述空闲缓存区间,直至所述空闲缓存区间中的任务数量达到预设门限值,或所有缓存区间中的任务数量不高于预设门限值。在逐个迁移任务的过程中,会判断之前确认的空闲缓存区间是否达到预设门限值,如果达到预设门限值,则意味着空闲缓存区间已经有了一定数量的待处理任务,不再向空闲缓存区间迁移任务,等着最新任务分配到该缓存区间即可。同时,为了避免其它缓存区间中的任务过少,当向外迁移到一定程度使得其它缓存区间中的任务数量不多时,即其它缓存区间中的剩余任务数量不高于预设门限值时,停止迁移。
在具体处理过程中,有可能出现多个缓存区间中的剩余任务并列最多,即有多个第二缓存区间,此时并不是直接从每个第二缓存区间迁移一个任务到空闲缓存区间,而是随机从一个所述第二缓存区间中迁移一个任务缓存到所述空闲缓存区间,并且仍然采用逐次迁移确认的方式,每迁移一个任务之后对空闲缓存区间中的剩余任务以及其它缓存区间中的任务进行判断,直到达到设定的任务数量停止迁移。向空闲缓存区间迁移的任务可以是最新缓存的任务,也可以是最早缓存的任务。
其它缓存区间停止迁移的判断依据除了以上基于预设门限值,还可以基于与空闲缓存区间中的任务比对,如果其它缓存区间中的剩余任务多于空闲缓存区间中的任务不超过一个,则也不进行任务迁移。
需要说明的是,本实施例中所说的第一缓存区间和第二缓存区间并不是固定的一个或多个缓存区间,其仅仅是根据缓存区间在某个时刻的状态进行的区别定义,是用于实施例描述方便的特别标识,其作用与其它缓存区间并没有区别,在当前的最新任务缓存到某个第一缓存区间之后,该第一缓存区间可能不再是下一个最新任务缓存时的第一缓存区间。而且空闲缓存区间是在整个迁移过程中都定义为空闲缓存区间,而不是一定要其中没有任务才定义为空闲缓存区间,从任务排队状态而言,对某个缓存区间的任务迁移结束之后,才结束其空闲缓存区间的状态定义。
同时,在本方案中,应当理解步骤S101-步骤S104作为一个方案整体存在,其并不是严格按照前文的描述顺序依次执行,在多核物联网系统对任务进行处理时,最新任务的分配和任务的迁移可以根据实际监测结果执行,当所述主执行核心监测到最新任务,则缓存最新任务;当所述主执行核心监测到空闲缓存区间,则向空闲缓存区间迁移任务,如果连续监测到最新任务,则连续执行步骤S102,如果持续处于拥塞状态,则连续执行步骤S103,如果连续监测到空闲缓存区间,则连续执行步骤S104。
上述,通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理。本方案通过主执行核心对任务状态进行监测,,在收到最新任务时根据缓存区间中的任务数量将其分配到对应的缓存区间,主执行核心在监测到任务拥塞时对应进行处理,减少了任务分配的切换过程,提高了物联网系统中多核处理任务调度的数据处理效率。
实施例二
图2为本发明实施例二提供的一种主从核心区分处理任务的装置的结构示意图。参考图2,该主从核心区分处理任务的装置包括:状态监听单元210、任务缓存单元220和拥塞处理单元230。
其中,状态监听单元210,用于通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;任务缓存单元220,用于当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;拥塞处理单元230,用于当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则从该缓存区间获取任务进行处理
在上述实施例的技术长,所述装置,还包括:
任务迁移单元,用于当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
在上述实施例的基础上,所述当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,包括:
当所述主执行核心监测到有空闲缓存区间出现,则逐次确认第二缓存区间,并从所述第二缓存区间中逐个迁移任务缓存到所述空闲缓存区间,直至所述空闲缓存区间中的任务数量达到预设门限值,或所有缓存区间中的任务数量不高于预设门限值。
在上述实施例的基础上,当有多个第二缓存区间,则随机从一个所述第二缓存区间中迁移一个任务缓存到所述空闲缓存区间。
在上述实施例的基础上,当有多个第一缓存区间,则将所述最新任务随机缓存到其中一个第一缓存区间。
在上述实施例的基础上,每个所述从执行核心对应的缓存队列的长度相同。
本发明实施例提供的主从核心区分处理任务的装置包含在主从核心区分处理任务的设备中,且可用于执行上述实施例一中提供的任一主从核心区分处理任务的方法,具备相应的功能和有益效果。
实施例三
图3为本发明实施例三提供的一种物联网节点设备的结构示意图,该物联网节点设备用于组成物联网系统,进而综合实现本方案中的任务调度。如图3所示,该物联网节点设备包括处理器310、存储器320、输入装置330、输出装置340以及通信装置350;物联网节点设备中处理器310的数量可以是一个或多个,图3中以一个处理器310为例;物联网节点设备中的处理器310、存储器320、输入装置330、输出装置340以及通信装置350可以通过总线或其他方式连接,图3中以通过总线连接为例。
存储器320作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的主从核心区分处理任务的方法对应的程序指令/模块(例如,主从核心区分处理任务的装置中的状态监听单元210、任务缓存单元220和拥塞处理单元230)。处理器310通过运行存储在存储器320中的软件程序、指令以及模块,从而执行物联网节点设备的各种功能应用以及数据处理,即实现上述的主从核心区分处理任务的方法。
存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据物联网节点设备的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器320可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至物联网节点设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置330可用于接收输入的数字或字符信息,以及产生与物联网节点设备的用户设置以及功能控制有关的键信号输入。输出装置340可包括显示屏等显示设备。
上述物联网节点设备包含主从核心区分处理任务的装置,可以用于执行任意主从核心区分处理任务的方法,具备相应的功能和有益效果。
实施例四
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本申请任意实施例中提供的主从核心区分处理任务的方法中的相关操作,且具备相应的功能和有益效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。
因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种主从核心区分处理任务的方法,用于多核物联网系统,其特征在于,包括:
通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;
当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;
当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则加入任务处理序列,在实现任务调度的同时,从该缓存区间获取任务进行处理。
2.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
3.根据权利要求1所述的方法,其特征在于,所述当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,包括:
当所述主执行核心监测到有空闲缓存区间出现,则逐次确认第二缓存区间,并从所述第二缓存区间中逐个迁移任务缓存到所述空闲缓存区间,直至所述空闲缓存区间中的任务数量达到预设门限值,或所有缓存区间中的任务数量不高于预设门限值。
4.根据权利要求3所述的方法,其特征在于,当有多个第二缓存区间,则随机从一个所述第二缓存区间中迁移一个任务缓存到所述空闲缓存区间。
5.根据权利要求1所述的方法,其特征在于,当有多个第一缓存区间,则将所述最新任务随机缓存到其中一个第一缓存区间。
6.根据权利要求1所述的方法,其特征在于,每个所述从执行核心对应的缓存队列的长度相同。
7.一种主从核心区分处理任务的装置,其特征在于,包括:
状态监听单元,用于通过主执行核心监测所述多核物联网系统中的任务状态,所述多核物联网系统的从执行核心分别对应分配有缓存区间,所述缓存区间为所述多核物联网系统中的先入先出缓存队列的一段,所述多核物联网系统包括一个主执行核心和多个从执行核心;
任务缓存单元,用于当所述主执行核心监测到有最新任务输入,则将所述最新任务缓存到第一缓存区间,以对应分配到所述第一缓存区间对应的从执行核心,所述第一缓存区间为当前剩余缓存队列最长的缓存区间;
拥塞处理单元,用于当所述主执行核心监测到有缓存区间中的任务处于拥塞状态,则加入任务处理序列,在实现任务调度的同时,从该缓存区间获取任务进行处理。
8.根据权利要求7所述的装置,其特征在于,所述装置,还包括:
任务迁移单元,用于当所述主执行核心监测到有空闲缓存区间出现,则从第二缓存区间中迁移至少一个任务缓存到所述空闲缓存区间,以对应分配到所述空闲缓存区间对应的从执行核心,所述空闲缓存区间为任务清空的缓存区间,所述第二缓存区间为当前剩余任务最多的缓存区间。
9.一种物联网系统,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述物联网系统实现如权利要求1-6任一所述的主从核心区分处理任务的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一所述的主从核心区分处理任务的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020116409682 | 2020-12-31 | ||
CN202011640968 | 2020-12-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113971085A true CN113971085A (zh) | 2022-01-25 |
Family
ID=79590621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111546931.8A Withdrawn CN113971085A (zh) | 2020-12-31 | 2021-12-16 | 主从核心区分处理任务的方法、装置、系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113971085A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024001137A1 (zh) * | 2022-06-29 | 2024-01-04 | Oppo广东移动通信有限公司 | 一种多核处理系统及其任务调度方法、芯片、存储介质 |
-
2021
- 2021-12-16 CN CN202111546931.8A patent/CN113971085A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024001137A1 (zh) * | 2022-06-29 | 2024-01-04 | Oppo广东移动通信有限公司 | 一种多核处理系统及其任务调度方法、芯片、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113934530A (zh) | 多核多队列任务交叉处理方法、装置、系统和存储介质 | |
CN113934529A (zh) | 多级别核心的任务调度方法、装置、系统和存储介质 | |
WO2023082560A1 (zh) | 一种任务处理方法、装置、设备及介质 | |
US20130212594A1 (en) | Method of optimizing performance of hierarchical multi-core processor and multi-core processor system for performing the method | |
US20150295970A1 (en) | Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system | |
CN109697122A (zh) | 任务处理方法、设备及计算机存储介质 | |
Shen et al. | Probabilistic network-aware task placement for mapreduce scheduling | |
JP2017037492A (ja) | 分散処理プログラム、分散処理方法および分散処理装置 | |
CN113971085A (zh) | 主从核心区分处理任务的方法、装置、系统和存储介质 | |
CN114020440A (zh) | 多级任务分类处理方法、装置、系统和存储介质 | |
US20170344266A1 (en) | Methods for dynamic resource reservation based on classified i/o requests and devices thereof | |
CN110928649A (zh) | 资源调度的方法和装置 | |
EP3816801A1 (en) | Method and apparatus for orchestrating resources in multi-access edge computing (mec) network | |
CN108228323B (zh) | 基于数据本地性的Hadoop任务调度方法及装置 | |
JP2004046372A (ja) | 分散処理システム、リソース割当方法およびプログラムならびにリソース割当プログラムが記録された記録媒体 | |
WO2017070869A1 (zh) | 一种内存配置方法、装置及系统 | |
CN112764895A (zh) | 多核物联网芯片的任务调度方法、装置、系统和存储介质 | |
CN112764896A (zh) | 基于备用队列的任务调度方法、装置、系统和存储介质 | |
CN113971086A (zh) | 基于任务关联性的任务调度方法、装置、系统和存储介质 | |
CN112650574A (zh) | 基于优先级的任务调度方法、装置、系统和存储介质 | |
CN114048016A (zh) | 记录时长进行任务调度的方法、装置、系统和存储介质 | |
CN114138480A (zh) | 队列任务分类混合处理方法、装置、系统和存储介质 | |
CN113934528A (zh) | 物联网的任务差异化调度方法、装置、系统和存储介质 | |
CN116089248A (zh) | 一种写i/o突发分布预测方法、装置、设备及存储介质 | |
CN114035929A (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: 20220125 |