CN102779075B - 一种在多处理器核系统中进行调度的方法、装置及系统 - Google Patents
一种在多处理器核系统中进行调度的方法、装置及系统 Download PDFInfo
- Publication number
- CN102779075B CN102779075B CN201210217579.8A CN201210217579A CN102779075B CN 102779075 B CN102779075 B CN 102779075B CN 201210217579 A CN201210217579 A CN 201210217579A CN 102779075 B CN102779075 B CN 102779075B
- Authority
- CN
- China
- Prior art keywords
- data stream
- processor core
- packet
- controling parameters
- nuclear system
- 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
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/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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种在多处理器核系统中进行处理器核调度的方法、装置及系统,涉及多处理器核系统领域,可以满足实时的网络I/O处理需求,从而提升整个多处理器核系统的效率。一种在多处理器核系统中进行处理器核调度的方法,包括:在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;根据所述第一控制参数、第二控制参数和第三控制参数,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;和根据所述第四控制参数,将所述多处理器核系统中的处理器核在中断模式和轮询模式间切换。本发明主要用于处理器核调度。
Description
技术领域
本发明涉及多处理器核系统领域,尤其涉及一种在多处理器核系统中进行处理器核调度的方法、装置及系统。
背景技术
目前,多处理器核系统上集成的业务逐渐增多,网络I/O(input/output,输入/输出)请求也日趋增多。多处理器核系统对网络I/O请求的数据处理能力成为系统效能充分发挥的关键。现有技术中,一种对网络I/O请求的处理方法是:根据静态配置的处理模式,将任务绑定到指定的处理器核上执行,或将任务均衡分配到较空闲的处理器核上执行;另一种处理方法是:根据静态配置的切换规则,使处理器核在中断模式和轮询模式之间进行切换,从而提升系统对网络I/O请求的处理效率。
在实现上述技术方案时,发明人发现现有技术至少存在以下问题:静态配置是指在系统投入运行之前由人工进行配置,在系统实际运行期间,根据该静态配置方案进行处理器核调度,可能无法满足实时的网络I/O处理需要,不能提供合理的处理器核调度方案,不利于整个多处理器核系统效率的提升。
发明内容
本发明的实施例提供了一种在多处理器核系统中进行处理器核调度的方法、装置及系统,可以满足实时的网络I/O处理需求,从而提升整个多处理器核系统的效率。
本发明的实施例采用如下技术方案:
一种在多处理器核系统中进行处理器核调度的方法,包括:
在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流应用程序APP关键路径的说明信息;
根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;
当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;和
根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。。
一种在多处理器核系统中进行处理器核调度的的装置,包括:
控制参数获取单元,用于在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和设置第四控制参数;其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流应用程序APP关键路径的说明信息;
第一检测单元,用于根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;
核间切换调度单元,用于当所述第一检测单元检测到当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;
核内切换调度单元,用于根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
一种计算机系统,包括:
总线;
与所述总线相连的多处理器核;
与所述总线相连的存储器;
其中,所述多处理器核包括上述的装置。
一种计算机系统,包括:
总线;
与所述总线相连的多处理器核;
与所述总线相连的存储器;
其中,所述多处理器核通过所述总线调用所述存储器中的执行指令,以用于:根据从所述存储器中调用的数据获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流应用程序APP关键路径的说明信息;
所述多处理器核还用于根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;
所述多处理器核还用于当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;
所述多处理器核还用于根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。。
本发明实施例提供的一种在多处理器核系统中进行处理器核调度的方法、装置及系统,通过在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,并根据各控制参数对处理器核进行调度,满足了多处理器核系统中对网络I/O的实时处理需求,提升了整个多处理器核系统的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种在多处理器核系统中进行处理器核调度的方法的流程图;
图2为本发明实施例二提供的一种在多处理器核系统中进行处理器核调度的方法的流程图;
图3a为本发明实施例二提供的另一种在多处理器核系统中进行处理器核调度的方法的流程图;
图3b为本发明实施例二提供的另一种在多处理器核系统中进行处理器核调度的方法的流程图;
图4为本发明实施例二提供的获取所述APP关键路径的说明信息的流程图;
图5为本发明实施例三提供的一种在多处理器核系统中进行处理器核调度的装置的框图;
图6为本发明实施例三提供的核间切换调度单元的框图;
图7为本发明实施例三提供的另一种核间切换调度单元的框图;
图8为本发明实施例三提供的一种核内切换调度单元的框图;
图9为本发明实施例三提供的再一种核内切换调度单元的框图;
图10为本发明实施例三提供的控制参数获取单元的框图;
图11a为本发明实施例三提供的第一控制参数获取单元的框图;
图11b为本发明实施例三提供的第四控制参数获取单元的框图;
图12为本发明实施例四提供的一种计算机系统的示意图;
图13为本发明实施例五提供的一种计算机系统的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的方法,如图1所示,包括以下步骤:
101、在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数。
其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数。通过N个数据流的指示信息,可以获知指示信息所指示的是哪N个数据流。
所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流APP(Application,应用程序)关键路径的说明信息。
此处的第一采样周期可以为预先设置的采样周期,也可以是动态获取的采样周期,如通过人机交互接口来获取用户动态配置的采样周期,或者是通过通信接口读取数据库中存储的相应的采样周期。
102、根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;
103、当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理。
所述的空闲处理器核,包括处理器核占用率最低的处理器核,以及资源占用率低于一定阈值的处理器核,这里所述的一定阈值,可以是预设在系统中的阈值,也可以是根据实时情况由用户通过人机交互接口输入的动态配置的阈值。
具体的,首先根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理。
104、根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理器核在中断模式和轮询模式间切换。
其中,对于进入所述多处理器核系统的各数据流的数据包,执行步骤102和103,是以便为各个数据包分配处理器核;步骤104是对于单个处理器核的核内处理模式的切换。实际应用中,上述步骤102至103,和104是互相独立的动作步骤,可以同时进行或分开进行。
本发明实施例中,根据所述第二控制参数和第三控制参数,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理,具体是参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理。该核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理。
另外,本发明实施例所述的根据所述第四控制参数,将所述多处理器核系统中的处理器核在中断模式和轮询模式间切换,具体是参照核内切换策略,将所述多处理器核系统中的处理器核在中断模式和轮询模式间切换。该核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
本发明实施例中,不同网络I/O的数据流通过五元组(数据流的源地址、目的地址、源端口、目的端口以及传输协议)进行区分。
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的方法,通过在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,并根据各控制参数对处理器核进行调度,满足了多处理器核系统中对网络I/O的实时处理需求,提升了整个多处理器核系统的效率。
实施例二:
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的方法,如图2所示,该方法包括:
201、在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数。
其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数。通过N个数据流的指示信息,可以获知指示信息所指示的是哪N个数据流。举例来说,当N为3时,N个数据流的指示信息为:(flow1,flow5,flow6),用来表示指示信息指示了3个数据流,并且这3个数据流分别为flow1,flow5和flow6。
所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流APP关键路径的说明信息。
202、当数据流的当前数据包进入所述多处理器核系统后,根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个。
当数据流的当前数据包进入所述多处理器核系统后,根据所述第一控制参数,检测所述当前数据包所属数据流是否为N个数据流的指示信息所述指示的N个数据流中的一个,如果当前数据包所属数据流为所述N个数据流中的一个,则执行步骤205,否则执行步骤203。
此处的第一采样周期可以为预先设置的采样周期,也可以是动态获取的采样周期,如通过人机交互接口来获取用户动态配置的采样周期,或者是通过通信接口读取数据库中存储的相应的采样周期。
其中,获取第一控制参数的动作,可以是:首先在所述第一采样周期内获取所述多处理器核系统处理的数据包;然后确定所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系;对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系确定数量在所述排序中属于前N个的数据包所属的数据流。
这里对所述第一控制参数的获取方式举例进行说明。假设有数据流分别为flow1、flow2、flow3、flow4和flow5。N=3。当各个数据流的数据包进入所述多处理器核系统时,对被处理的数据包在所述第一采样周期内进行记录,然后确定所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系,并对所述多处理器核系统处理的数据包的数量从多到少进行排序。假设记录排序的结果为:flow1的数据包进入系统被处理的次数最多,flow2次之,flow3再次之,那么所述第一控制参数记录的是flow1、flow2和flow3。
203、根据所述第二控制参数,判断所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间是否超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间。
若所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间,则执行步骤204,否则执行步骤205。
204、根据所述第三控制参数,将所述当前数据包分发至处理器核占用率最低的处理器核。
205、将所述当前数据包发送给资源占用率低于第一阈值的处理器核,并将所述当前数据包所属数据流与所述资源占用率低于第一阈值的处理器核绑定。
通过将所述当前数据包所属数据流与所述资源占用率低于第一阈值的处理器核绑定,以使得所述当前数据包所属数据流的数据包进入所述多处理器核系统时,由所述资源占用率低于第一阈值的处理器核进行处理。
本发明实施例所述的第一阈值可以根据实际应用场景进行配置。
上述步骤201到205是对核间切换策略的具体化,从而实现对多个处理器核之间的负载调度,降低了处理器核资源浪费,有利于提升多处理器核的效能。
其中,所述第二控制参数的获取可以是:对于不同数据流的数据包,在一个数据包进入所述多处理器核系统和离开所述多处理器核系统时设置时间标签,从而得到数据包在所述多处理器核系统中的内部传输所用时间;另一方面,通过记录处理器核对数据包的处理开始时间和处理完成时间,从而得到数据包的被处理器核处理所用时间。实际应用中,可以对一个数据流的多个数据包分别测得所述内部传输所用时间和所述被处理器核处理所用时间,并分别计算这多个数据包的内部传输所用时间和被处理器核处理所用时间的算术平均值,作为每个数据流在所述多处理器核系统的内部传输所用时间及被处理器核处理所用时间。被处理器核处理所用时间较长的数据流使用与处理器核进行绑定的方式进行处理,可以避免过多的核间切换,利于充分利用处理器核的计算能力,提高处理效率。内部传输所用时间较长的数据流,分发到处理器核占用率低的处理器上进行处理,有利于缓解网络处理压力。
其中,所述第三控制参数的获取可以是:在所述多处理器核系统中设置一个优先级仅比空闲状态优先级高的任务,定期检查该任务位于哪个处理器核上,并将该处理器核作为处理器核占用率最低的处理器核。
需要指出的是,获取每个数据流在所述多处理器核系统的内部传输所用时间及被处理器核处理所用时间,以及获取处理器核占用率最低的处理器核信息的方式,除了本发明实施例上述提及的方式之外,还有现有技术已有的其他获取途径,本发明实施例不再赘述。
另一方面,根据获取到的所述第四控制参数,本发明实施例还提供了一种在多处理器核系统中进行处理器核调度的方法,如图3a所示,该方法包括:
301、检测在中断模式下对每个数据流进行处理的单次中断开销,并检测在轮询模式下对每个数据流进行处理的单次轮询开销。
在所述多处理器核系统初始化时,分别检测在中断模式下对每个数据流进行处理的单次中断开销,以及在轮询模式下对每个数据流进行处理的单次轮询开销。具体的,对于中断开销,在每次处理器核产生中断处理动作时由计数器进行检测,得出一次中断所需时间;对于轮询开销,通过计数器测量一次无效轮询动作所需的时间。再通过检测出每秒中断次数以及每秒无效轮询次数,便可以得出每秒钟内,中断开销以及轮询开销分别占用的时间长度。
302、根据所述每个数据流APP关键路径的说明信息,检测所述当前数据包所属数据流是否具有对应的APP关键路径。
所述第四控制参数为每个数据流APP关键路径的说明信息,每个APP关键路径的说明信息都指明了其所对应的数据流具有APP关键路径。举例来说,APP关键路径的说明信息可以用一个变量APP_flag来表示,若数据流flow1对应的APP_flag为非零值,说明数据流flow1具有APP关键路径。
如果所述当前数据包所属数据流不具有APP关键路径,则维持处理所述当前数据包的处理器核的处理状态。
在所述当前数据包所述数据流具有对应的APP关键路径的情况下,根据处理当前数据包的处理器核处于轮询模式或中断模式,本发明实施例有不同的执行流程。下面步骤303至308以处理器核处于轮询模式为例进行说明。
303、在第一测量周期内检测轮询次数。
其中第一测量周期根据实际情况预先设定,应保证在该第一测量周期内,处理器核对数据包的处理频率处于比较稳定的状态。
304、根据所述轮询次数和所述单次轮询开销,获得总轮询开销。
通过将轮询次数与单纯轮询开销相乘,可得到总轮询开销。
305、根据中断次数预估阈值和所述单次中断开销,获得总中断开销。
中断次数预估阈值为预先设定的数值,该中断次数预估阈值对在第一测量周期内的中断次数进行预估,用于与单次中断开销相乘从而获得总中断开销。
需要说明的是,上述304和305的执行顺序可以互换。
306、判断所述总轮询开销是否大于所述总中断开销。
如果所述总轮询开销大于所述总中断开销,执行步骤307,否则执行步骤308。
307、将处理当前数据包的处理器核从轮询模式切换至中断模式。
308、维持处理当前数据包的处理器核的轮询模式。
上述步骤303至308以处理器核处于轮询模式为例进行说明,对于处理器核处于中断模式的情况,与上述303至308类似。具体的,若处理当前数据包的处理器核处于中断模式,则如图3b所示,其过程如下:
303b、在第二测量周期内检测中断次数。
其中第二测量周期根据实际情况预先设定,应保证在该第二测量周期内,处理器核对数据包的处理频率处于比较稳定的状态。所述第二测量周期可以取与所述第一测量周期相同的时长。
304b、根据所述中断次数和所述单次中断开销,获得总中断开销。
305b、根据轮询次数预估阈值和所述单次轮询开销,获得总轮询开销。
轮询次数预估阈值为预先设定的数值,该轮询次数预估阈值对在第二测量周期内的轮询次数进行预估,用于与单次轮询开销相乘从而获得总轮询开销。
需要说明的是,上述304b和305b的执行顺序可以互换。
306b、判断所述总中断开销是否大于所述总轮询开销。
如果所述总中断开销大于所述总轮询开销,执行步骤307b,否则执行步骤308b。
307b、将处理当前数据包的切换至轮询模式。
308b、维持处理当前数据包的处理器核的中断模式。
上述步骤301到308,以及303b到308b,是对核内切换策略的具体化实现,使处理器核在中断模式和轮询模式间切换,降低了处理器核资源浪费,有利于提升多处理器核的效能。
关于如何确定一个数据流是否存在APP关键路径,以及获取所述APP关键路径的说明信息的过程如下图4所示,包括:
401、启动函数处理计数器和频率计数器。
在所述多处理器核系统启动前,需人工为所述函数处理计数器和所述频率计数器分别设置阈值:处理时间阈值,处理频率阈值。所述处理时间阈值和处理频率阈值为所述APP关键路径的设置确定了规则。
402、每当所述待测数据流的数据包被当前的函数模块处理完成时,将所述函数处理计数器的计数值增加一。
403、检测所述函数处理计数器的计数值是否大于处理时间阈值。
当所述函数处理计数器的计数值大于所述处理时间阈值时,执行步骤404。当所述函数处理计数器的计数值不大于所述处理时间阈值时,若所述待测数据流的处理未结束,则继续进行检测,并执行所述函数处理计数器的累加。
404、将所述频率计数器的计数值增加一;并将所述函数处理计数器清零。
405、检测所述频率计数器的计数值是否大于处理频率阈值。
当所述频率计数器的计数值大于所述处理频率阈值时,执行步骤406。当所述频率计数器的计数值不大于所述处理频率阈值时,若所述待测数据流的处理未结束,则继续进行检测。
406、为大于所述处理频率阈值的所述频率计数器的计数值所对应的数据包所属数据流获取所述APP关键路径的说明信息。
如果所述函数处理计数器的计数值不大于所述处理时间阈值或所述频率计数器的计数值不大于所述处理频率阈值的情况下所述待测数据流的处理结束,或者是在所述第一检测周期结束时所述函数处理计数器的计数值不大于所述处理时间阈值或所述频率计数器的计数值不大于所述处理频率阈值,则可以认为不存在APP关键路径,从而不执行获取所述APP关键路径的说明信息的动作。
下面举实例对上述步骤401至406说明。数据包进入所述多处理器核系统后在处理器核中可能被多个函数模块处理,比如,数据流flow1的数据包进入所述多处理器核系统后,一次被函数模块function1,function2,function3执行处理动作,则flow1对应的处理路径为:function1——function2——function3。同时可以假设:flow2对应的处理路径为:function1——function3;flow3对应的处理路径为:function1——function2——function3——function4。如果所述处理时间阈值预设为3,所述处理频率阈值预设为1,可以判断出flow1被函数模块处理完成时,对应的函数处理计数器的计数值为3,不大于所述处理时间阈值,因而没有所述APP关键路径;同理,flow2也没有所述APP关键路径。Flow3被其对应的处理路径的各函数模块处理完成后,对应的函数处理计数器的计数值为4,此时频率计数器进行一次加一操作,计数值为1,并将计数值为4的函数处理计数器清零。之后,如果flow3的数据包再次进入系统,并被各函数模块处理完成,则频率计数器的计数值变为2。这时对于flow3,所述频率计数器的计数值(计数值为2)大于所述处理频率阈值,此时flow3存在APP关键路径,因此,在所述多处理器核系统中为flow3获取对应的APP关键路径信息。如果flow3的数据包没有再次进入系统被各函数模块处理,其频率计数器的计数值不大于所述处理频率阈值,则flow3不存在APP关键路径,不为flow3执行获取对应的APP关键路径的说明信息的动作。
本发明实施例中,所述数据流通过五元组(数据流的源地址、目的地址、源端口、目的端口以及传输协议)进行区分。
本发明实施例中所述的多处理器核系统,其中的处理器核可以是CPU、MCU或DSP等。在所述多处理器核系统中,众多的处理器核同时对各自核内的任务以及核间的任务进行切换和调度。
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的方法,通过在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,根据第一控制参数、第二控制参数和第三控制参数,实现对多个处理器核之间的负载调度,并根据第四控制参数,实现对单个处理器核的中断模式和轮询模式的切换,满足了多处理器核系统中对网络I/O的实时处理需求,提升了整个多处理器核系统的效率。这种针对多处理器核环境下的负载调度,避免了因传统的配置调度模式难以做出合理的调度选择而导致不能发挥多处理器核效能的问题,此外,该方法也简化了工程师及用户对多处理器核的网络I/O的手动配置,从而提高软件在多核平台上的部署效率。
实施例三:
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的装置,如图5所示,包括:控制参数获取单元51,第一检测单元52,核间切换调度单元53,核内切换调度单元54。
控制参数获取单元51用于在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数。
其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数。通过N个数据流的指示信息,可以获知指示信息所指示的是哪N个数据流。
所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流APP关键路径的说明信息。
第一检测单元52用于根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个。
核间切换调度单元53用于当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理。
其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理。
核内切换调度单元54用于根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换。
其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
所述的空闲处理器核,包括处理器核占用率最低的处理器核,以及资源占用率低于一定阈值的处理器核,这里所述的一定阈值,可以是预设在系统中的阈值,也可以是根据实时情况由用户通过人机交互接口输入的动态配置的阈值。
进一步的,如图6所示,所述核间切换调度单元53具体还包括第一判断子单元531,第一调度子单元532。
其中第一判断子单元531用于根据所述第二控制参数,判断所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间是否超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间。
第一调度子单元532用于当所述第一检测单元52检测到当前数据包所属数据流不是所述N个数据流中的一个时,且在所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间时,根据所述第三控制参数,将所述当前数据包分发至所述多处理器核系统中处理器核占用率最低的处理器核。
进一步的,如图7所示,所述核间切换调度单元53还包括第二调度子单元533,用于当所述第一检测单元52检测到所述当前数据包所属数据流是所述N个数据流中的一个,或所述第一判断子单元531判断出所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间未超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间的时候,将所述当前数据包发送给资源占用率低于第一阈值的处理器核,并将所述当前数据包所属数据流与所述资源占用率低于第一阈值的处理器核绑定,以使得所述当前数据包所属数据流的数据包进入所述多处理器核系统时,由所述资源占用率低于第一阈值的处理器核进行处理。
本发明实施例中所述的第一阈值可以根据实际应用场景进行设置。
此外,如图8所示,所述核内切换调度单元54还包括:第二检测子单元545,第三检测子单元546,轮询检测子单元547、轮询开销获取子单元548、中断开销获取子单元549、第三调度子单元5410、第四调度子单元5411。
第二检测子单元545用于在所述多处理器核系统初始化时,检测在中断模式下对每个数据流进行处理的单次中断开销,并检测在轮询模式下对每个数据流进行处理的单次轮询开销。
第三检测子单元546用于根据所述每个数据流APP关键路径的说明信息,检测所述当前数据包所属数据流是否具有对应的APP关键路径。
轮询检测子单元547用于当所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于轮询模式时,在第一测量周期内检测轮询次数;
其中第一测量周期根据实际情况预先设定,应保证在该第一测量周期内,处理器核对数据包的处理频率处于比较稳定的状态。
轮询开销获取子单元548用于根据所述轮询次数和所述单次轮询开销,获得总轮询开销。
中断开销获取子单元549用于根据中断次数预估阈值和所述单次中断开销,获得总中断开销。
第三调度子单元5410用于当所述总轮询开销大于所述总中断开销时,将处理当前数据包的处理器核从轮询模式切换至中断模式。
第四调度子单元5411用于当所述总轮询开销不大于所述总中断开销时,维持处理当前数据包的处理器核的轮询模式。
进一步的,如图9所示,所述核内切换调度单元54还包括:中断检测子单元5412,用于当所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于中断模式时,在第二测量周期内检测中断次数。
其中第二测量周期根据实际情况预先设定,应保证在该第二测量周期内,处理器核对数据包的处理频率处于比较稳定的状态。所述第二测量周期可以取与所述第一测量周期相同的时长。
所述中断开销获取子单元549还用于根据所述中断次数和所述单次中断开销,获得总中断开销。
所述轮询开销获取子单元548还用于根据轮询次数预估阈值和所述单次轮询开销,获得总轮询开销。
所述第四调度子单元5411还用于当所述总中断开销大于所述总轮询开销时,将处理当前数据包的处理器核从中断模式切换至轮询模式。
所述第三调度子单元5410还用于当所述总中断开销不大于所述总轮询开销时,维持处理当前数据包的处理器核的中断模式。
设置所述APP关键路径的过程可参见本发明实施例二,此处不再赘述。
此外,如图10所示,所述控制参数获取单元51包括:第一控制参数获取单元55,第二控制参数获取单元56,第三控制参数获取单元57,第四控制参数获取单元58。
第一控制参数获取单元55用于在所述第一采样周期内获取所述多处理器核系统处理的数据包;对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系,确定数量在所述排序中属于前N个的数据包所属的数据流。
第二控制参数获取单元56用于在多处理器核系统运行期间,获取第二控制参数,其中,所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间。
其中,所述第二控制参数的获取可以是:对于不同数据流的数据包,在一个数据包进入所述多处理器核系统和离开所述多处理器核系统时设置时间标签,从而得到数据包在所述多处理器核系统中的内部传输所用时间;另一方面,通过记录处理器核对数据包的处理开始时间和处理完成时间,从而得到数据包的被处理器核处理所用时间。实际应用中,可以对一个数据流的多个数据包分别测得所述内部传输所用时间和所述被处理器核处理所用时间,并分别计算这多个数据包的内部传输所用时间和被处理器核处理所用时间的算术平均值,作为每个数据流在所述多处理器核系统的内部传输所用时间及被处理器核处理所用时间。被处理器核处理所用时间较长的数据流使用与处理器核进行绑定的方式进行处理,可以避免过多的核间切换,利于充分利用处理器核的计算能力,提高处理效率。内部传输所用时间较长的数据流,分发到处理器核占用率低的处理器上进行处理,有利于缓解网络处理压力。
第三控制参数获取单元57用于在多处理器核系统运行期间,获取第三控制参数,所述第三控制参数为处理器核占用率最低的处理器核信息。
其中,所述第三控制参数的获取可以是:在所述多处理器核系统中设置一个优先级仅比空闲状态优先级高的任务,定期检查该任务位于哪个处理器核上,并将该处理器核作为处理器核占用率最低的处理器核。
第四控制参数获取单元58用于在待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率超过处理时间阈值和处理频率阈值时,为所述待测数据流获取所述APP关键路径的说明信息
进一步的,如图11a所示,所述第一控制参数获取单元55包括:数据包信息获取子单元551,数据流确定子单元552,第一控制参数获取子单元553。
数据包信息获取子单元551用于在所述第一采样周期内获取所述多处理器核系统处理的数据包的信息。
数据流确定子单元552用于确定所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系。
第一控制参数获取子单元553用于对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系,确定数量在所述排序中属于前N个的数据包所属的数据流。
此外,如图11b所示,所述第四控制参数获取单元58包括:阈值检测子单元584,第四控制参数获取子单元585。
阈值检测子单元584用于在第一检测周期内,检测待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率是否超过处理时间阈值和处理频率阈值。
第四控制参数获取子单元585用于在所述待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率超过所述处理时间阈值和处理频率阈值时,为所述待测数据流获取所述APP关键路径的说明信息,所述APP关键路径的说明信息指明所述待测数据流具有APP关键路径。
本发明实施例中,所述数据流通过五元组(数据流的源地址、目的地址、源端口、目的端口以及传输协议)进行区分。
本发明实施例中所述的多处理器核系统,其中的处理器核可以是CPU、MCU或DSP等。在所述多处理器核系统中,众多的处理器核同时对各自核内的任务以及核间的任务进行切换和调度。
需要说明的是,本发明实施例的一种在多处理器核系统中进行处理器核调度的装置的实现细节可参考前述方法实施例的描述,在此不再赘述。
本发明实施例提供了一种在多处理器核系统中进行处理器核调度的装置,通过在处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,根据第一控制参数、第二控制参数和第三控制参数,实现对多个处理器核之间的负载调度,并根据第四控制参数,实现对单个处理器核的中断模式和轮询模式的切换,满足了多处理器核系统中对网络I/O的实时处理需求,提升了整个多处理器核系统的效率。这种针对多处理器核环境下的负载调度,避免了因传统的配置调度模式难以做出合理的调度选择而导致不能发挥多处理器核效能的问题,此外,该方法也简化了工程师及用户对多处理器核的网络I/O的手动配置,从而提高软件在多核平台上的部署效率。
实施例四:
本发明实施例还提供了一种计算机系统,如图12所示,包括:
总线1201;
与所述总线相连的多处理器核1202;
与所述总线相连的存储器1203;
其中,所述多处理器核1202包括上述实施例三中任一种装置。
在图12中,所述多处理器核1202中包括控制参数获取单元1204,第一检测单元1205,核间切换调度单元1206,核内切换调度单元1207。
本发明实施例提供了一种计算机系统,通过在多处理器核构成的计算机系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,根据第一控制参数、第二控制参数和第三控制参数,实现对多个处理器核之间的负载调度,并根据第四控制参数,实现对单个处理器核的中断模式和轮询模式的切换,满足了多处理器核系统中对网络I/O的实时处理需求,提升了整个计算机系统的效率。这种针对多处理器核环境下的负载调度,避免了因传统的配置调度模式难以做出合理的调度选择而导致不能发挥多处理器核效能的问题,此外,该方法也简化了工程师及用户对多处理器核的网络I/O的手动配置,从而提高软件在多核平台上的部署效率。
实施例五:
本发明实施例提供了一种计算机系统,如图13所示,包括:
总线;
与所述总线相连的多处理器核;
与所述总线相连的存储器;
其中,所述多处理器核1302通过所述总线1301调用所述存储1303中的执行指令,以用于:根据从所述存储器1303中调用的数据获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;所述存储器1303可以是内存、硬盘设备或闪存(flash memory)。其中,其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流APP关键路径的说明信息。
所述多处理器核1302还用于根据所述第一控制参数,检测所述当前数据包所属数据流是否为所述N个数据流中的一个;
所述多处理器核1302还用于当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;
所述多处理器核1302还用于根据所述第四控制参数,参照核内切换策略,将所述多处理器核1302组成的计算机系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
本发明实施例中所述的多处理器核,可以是单核处理器中的处理器核,也可以是多处理器核中的处理器核。比如,可以是多个处理器的内核被封装在一个封装结构中,如图13所示,在上述的计算机系统中,可以存在多个封装结构,每个封装结构中都封装有多个处理器的内核。
本发明实施例提供了一种计算机系统,通过在多处理器核构成的计算机系统运行期间,获取第一控制参数、第二控制参数、第三控制参数以及第四控制参数,根据第一控制参数、第二控制参数和第三控制参数,实现对多个处理器核之间的负载调度,并根据第四控制参数,实现对单个处理器核的中断模式和轮询模式的切换,满足了多处理器核构成的计算机系统中对网络I/O的实时处理需求,提升了整个计算机系统的效率。这种针对多处理器核环境下的负载调度,避免了因传统的配置调度模式难以做出合理的调度选择而导致不能发挥多处理器核效能的问题,此外,该方法也简化了工程师及用户对多处理器核的网络I/O的手动配置,从而提高软件在多核平台上的部署效率。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,前述实施例描述中所采用的第一、第二、第三、第四的说法,没有限定顺序的意思,仅为方便区分而已。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (17)
1.一种在多处理器核系统中进行处理器核调度的方法,其特征在于,包括:
在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流应用程序APP关键路径的说明信息;
根据所述第一控制参数,检测当前数据包所属数据流是否为所述N个数据流中的一个;
当所述当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;和
根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理,包括:
根据所述第二控制参数,判断所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间是否超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间;
若所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间,则根据所述第三控制参数,将所述当前数据包分发至所述多处理器核系统中处理器核占用率最低的处理器核。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述当前数据包所属数据流是所述N个数据流中的一个,或所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间未超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间,
将所述当前数据包发送给资源占用率低于第一阈值的处理器核,并将所述当前数据包所属数据流与所述资源占用率低于第一阈值的处理器核绑定,以使得所述当前数据包所属数据流的数据包进入所述多处理器核系统时,由所述资源占用率低于第一阈值的处理器核进行处理。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换,包括:
在所述多处理器核系统初始化时,检测在中断模式下对每个数据流进行处理的单次中断开销,并检测在轮询模式下对每个数据流进行处理的单次轮询开销;
根据所述每个数据流APP关键路径的说明信息,检测所述当前数据包所属数据流是否具有对应的APP关键路径;
若所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于轮询模式,则在第一测量周期内检测轮询次数;
根据所述轮询次数和所述单次轮询开销,获得总轮询开销;
根据中断次数预估阈值和所述单次中断开销,获得总中断开销;
当所述总轮询开销大于所述总中断开销时,将处理当前数据包的处理器核从轮询模式切换至中断模式;
当所述总轮询开销不大于所述总中断开销时,维持处理当前数据包的处理器核的轮询模式。
5.根据权利要求4所述的方法,其特征在于,还包括:
若所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于中断模式,则在第二测量周期内检测中断次数;
根据所述中断次数和所述单次中断开销,获得总中断开销;
根据轮询次数预估阈值和所述单次轮询开销,获得总轮询开销;
当所述总中断开销大于所述总轮询开销时,将处理当前数据包的处理器核从中断模式切换至轮询模式;
当所述总中断开销不大于所述总轮询开销时,维持处理当前数据包的处理器核的中断模式。
6.根据权利要求1所述的方法,其特征在于,所述获取第一控制参数,包括:
在所述第一采样周期内获取所述多处理器核系统处理的数据包;
确定所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系;
对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系确定数量在所述排序中属于前N个的数据包所属的数据流。
7.根据权利要求1所述的方法,其特征在于,所述获取第四控制参数,包括:
在第一检测周期内,检测待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率是否超过处理时间阈值和处理频率阈值;
若所述待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率超过所述处理时间阈值和处理频率阈值,为所述待测数据流获取所述APP关键路径的说明信息,所述APP关键路径的说明信息指明所述待测数据流具有APP关键路径。
8.根据权利要求7所述的方法,其特征在于,所述检测待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率是否超过处理时间阈值和处理频率阈值,包括:
启动函数处理计数器和频率计数器;
每当所述待测数据流的数据包被当前的函数模块处理完成时,将所述函数处理计数器的计数值增加一;
检测所述函数处理计数器的计数值是否大于处理时间阈值;
当所述函数处理计数器的计数值大于所述处理时间阈值时,将所述频率计数器的计数值增加一;并将所述函数处理计数器清零;
检测所述频率计数器的计数值是否大于处理频率阈值;
所述为所述待测数据流获取APP关键路径的说明信息,具体包括:
当所述频率计数器的计数值大于所述处理频率阈值时,为大于所述处理频率阈值的所述频率计数器的计数值所对应的数据包所属数据流获取APP关键路径的说明信息。
9.一种在多处理器核系统中进行处理器核调度的装置,其特征在于,包括:
控制参数获取单元,用于在多处理器核系统运行期间,获取第一控制参数、第二控制参数、第三控制参数和第四控制参数;其中,所述第一控制参数为N个数据流的指示信息,所述N个数据流为在第一采样周期内所述多处理器核系统处理的数据包的数量从多到少进行排序,数量在所述排序中属于前N个的数据包所属的数据流,N为正整数;所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;所述第三控制参数为处理器核占用率最低的处理器核信息;所述第四控制参数为每个数据流应用程序APP关键路径的说明信息;
第一检测单元,用于根据所述第一控制参数,检测当前数据包所属数据流是否为所述N个数据流中的一个;
核间切换调度单元,用于当所述第一检测单元检测到当前数据包所属数据流不是所述N个数据流中的一个时,根据所述第二控制参数和第三控制参数,参照核间切换策略,将进入所述多处理器核系统中的数据流的数据包转移至空闲处理器核进行处理;其中所述核间切换策略为:所述内部传输所用时间超过所述被处理器核处理所用时间的数据包由处理器核占用率最低的处理器核处理;所述被处理器核处理所用时间超过所述内部传输所用时间的数据包绑定指定的处理器核处理;
核内切换调度单元,用于根据所述第四控制参数,参照核内切换策略,将所述多处理器核系统中的处理所述数据包的处理器核在中断模式和轮询模式间切换;其中所述核内切换策略为:总轮询开销大于总中断开销时,处理器核进入中断模式进行数据包处理;总轮询开销小于总中断开销时,处理器核进入轮询模式进行数据包处理。
10.根据权利要求9所述的装置,其特征在于,所述核间切换调度单元,包括:
第一判断子单元,用于根据所述第二控制参数,判断所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间是否超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间;
第一调度子单元,用于当所述第一检测单元检测到当前数据包所属数据流不是所述N个数据流中的一个时,且在所述当前数据包所属数据流在所述多处理器核系统的内部传输所用时间超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间时,根据所述第三控制参数,将所述当前数据包分发至所述多处理器核系统中处理器核占用率最低的处理器核。
11.根据权利要求10所述的装置,其特征在于,所述核间切换调度单元还包括:
第二调度子单元,用于当所述第一检测单元检测到所述当前数据包所属数据流是所述N个数据流中的一个,或所述第一判断子单元判断出当前数据包所属数据流在所述多处理器核系统的内部传输所用时间未超过所述当前数据包所属数据流在所述多处理器核系统的被处理器核处理所用时间的时候,将所述当前数据包发送给资源占用率低于第一阈值的处理器核,并将所述当前数据包所属数据流与所述资源占用率低于第一阈值的处理器核绑定,以使得所述当前数据包所属数据流的数据包进入所述多处理器核系统时,由所述资源占用率低于第一阈值的处理器核进行处理。
12.根据权利要求9所述的装置,其特征在于,所述核内切换调度单元包括:
第二检测子单元,用于在所述多处理器核系统初始化时,检测在中断模式下对每个数据流进行处理的单次中断开销,并检测在轮询模式下对每个数据流进行处理的单次轮询开销;
第三检测子单元,用于根据所述每个数据流APP关键路径的说明信息,检测所述当前数据包所属数据流是否具有对应的APP关键路径;
轮询检测子单元,用于当所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于轮询模式时,在第一测量周期内检测轮询次数;
轮询开销获取子单元,用于根据所述轮询次数和所述单次轮询开销,获得总轮询开销;
中断开销获取子单元,用于根据中断次数预估阈值和所述单次中断开销,获得总中断开销;
第三调度子单元,用于当所述总轮询开销大于所述总中断开销时,将处理当前数据包的处理器核从轮询模式切换至中断模式;
第四调度子单元,用于当所述总轮询开销不大于所述总中断开销时,维持处理当前数据包的处理器核的轮询模式。
13.根据权利要求12所述的装置,其特征在于,所述核内切换调度单元,还包括:
中断检测子单元,用于当所述当前数据包所属数据流具有对应的APP关键路径,并且处理当前数据包的处理器核处于中断模式时,在第二测量周期内检测中断次数;
所述中断开销获取子单元还用于根据所述中断次数和所述单次中断开销,获得总中断开销;
所述轮询开销获取子单元还用于根据轮询次数预估阈值和所述单次轮询开销,获得总轮询开销;
所述第四调度子单元还用于当所述总中断开销大于所述总轮询开销时,将处理当前数据包的处理器核从中断模式切换至轮询模式;
所述第三调度子单元还用于当所述总中断开销不大于所述总轮询开销时,维持处理当前数据包的处理器核的中断模式。
14.根据权利要求9所述的装置,其特征在于,所述控制参数获取单元,包括:
第一控制参数获取单元,用于在所述第一采样周期内获取所述多处理器核系统处理的数据包;对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系,确定数量在所述排序中属于前N个的数据包所属的数据流;
第二控制参数获取单元,用于在多处理器核系统运行期间,获取第二控制参数,其中,所述第二控制参数为每个数据流在所述多处理器核系统的内部传输所用时间及每个数据流在所述多处理器核系统被处理器核处理所用时间;
第三控制参数获取单元,用于在多处理器核系统运行期间,获取第三控制参数,其中,所述第三控制参数为处理器核占用率最低的处理器核信息;
第四控制参数获取单元,用于在待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率超过处理时间阈值和处理频率阈值时,为所述待测数据流获取所述APP关键路径的说明信息。
15.根据权利要求14所述的装置,其特征在于,所述第一控制参数获取单元,包括:
数据包信息获取子单元,用于在所述第一采样周期内获取所述多处理器核系统处理的数据包;
数据流确定子单元,用于确定所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系;
第一控制参数获取子单元,用于对所述多处理器核系统处理的数据包的数量从多到少进行排序,基于所述多处理器核系统处理的数据包与所述数据包所属数据流之间的关系确定数量在所述排序中属于前N个的数据包所属的数据流。
16.根据权利要求14所述的装置,其特征在于,所述第四控制参数获取单元,包括:
阈值检测子单元,用于在第一检测周期内,检测待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率是否超过处理时间阈值和处理频率阈值;
第四控制参数获取子单元,用于在所述阈值检测子单元检测到所述待测数据流的数据包在所述多处理器核系统中的处理时间及处理频率超过所述处理时间阈值和处理频率阈值时,为所述待测数据流获取所述APP关键路径的说明信息,所述APP关键路径的说明信息指明所述待测数据流具有APP关键路径。
17.一种计算机系统,其特征在于,包括:
总线;
与所述总线相连的多处理器核;
与所述总线相连的存储器;
其中,所述多处理器核包括权利要求9至15中任意一项所述的装置。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210217579.8A CN102779075B (zh) | 2012-06-28 | 2012-06-28 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
KR1020147008482A KR101565865B1 (ko) | 2012-06-28 | 2013-02-01 | 멀티 프로세서 코어 시스템 내의 프로세서 코어를 스케줄링 하기 위한 방법, 장치, 및 시스템 |
PCT/CN2013/071272 WO2014000450A1 (zh) | 2012-06-28 | 2013-02-01 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
CA2849565A CA2849565C (en) | 2012-06-28 | 2013-02-01 | Method, apparatus, and system for scheduling processor core in multiprocessor core system |
EP13753404.6A EP2701074B1 (en) | 2012-06-28 | 2013-02-01 | Method, device, and system for performing scheduling in multi-processor core system |
JP2014536110A JP5888629B2 (ja) | 2012-06-28 | 2013-02-01 | マルチプロセッサコアシステム内のプロセッサコアをスケジューリングするための方法、装置、およびシステム |
RU2014118463/08A RU2577476C2 (ru) | 2012-06-28 | 2013-02-01 | Способ, устройство и система для диспетчеризации ядра процессора в системе ядра мультипроцессора |
US14/143,407 US9218203B2 (en) | 2012-06-28 | 2013-12-30 | Packet scheduling in a multiprocessor system using inter-core switchover policy |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210217579.8A CN102779075B (zh) | 2012-06-28 | 2012-06-28 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102779075A CN102779075A (zh) | 2012-11-14 |
CN102779075B true CN102779075B (zh) | 2014-12-24 |
Family
ID=47123994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210217579.8A Active CN102779075B (zh) | 2012-06-28 | 2012-06-28 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9218203B2 (zh) |
EP (1) | EP2701074B1 (zh) |
JP (1) | JP5888629B2 (zh) |
KR (1) | KR101565865B1 (zh) |
CN (1) | CN102779075B (zh) |
CA (1) | CA2849565C (zh) |
RU (1) | RU2577476C2 (zh) |
WO (1) | WO2014000450A1 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8681794B2 (en) * | 2011-11-30 | 2014-03-25 | Broadcom Corporation | System and method for efficient matching of regular expression patterns across multiple packets |
CN102779075B (zh) * | 2012-06-28 | 2014-12-24 | 华为技术有限公司 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
CN103034614B (zh) * | 2012-12-19 | 2016-12-28 | 哈尔滨理工大学 | 基于关键路径和任务复制的单任务多核调度方法 |
CN103246562B (zh) * | 2013-04-23 | 2016-12-28 | 上海交通大学 | 一种基于众核阵列架构的故障主动预防策略及装置 |
WO2015081490A1 (zh) * | 2013-12-03 | 2015-06-11 | 华为技术有限公司 | 一种核间进程通信的方法、装置及系统 |
CN105027081B (zh) * | 2013-12-20 | 2018-09-07 | 华为技术有限公司 | 一种轮询和中断的切换方法及装置 |
EP3076619A1 (en) * | 2015-04-02 | 2016-10-05 | Alcatel Lucent | Method, system and computer-readable medium to schedule the processing of a plurality of data packets |
JP6468066B2 (ja) | 2015-05-13 | 2019-02-13 | 富士通株式会社 | 並列演算装置、並列演算システム、集合通信方法及び集合通信プログラム |
CN106610915B (zh) * | 2015-10-22 | 2020-05-01 | 深圳市博巨兴微电子科技有限公司 | 一种多处理器系统的ip核优化方法及装置 |
CN105677551B (zh) * | 2015-12-31 | 2019-05-31 | 联想(北京)有限公司 | 一种确定负载信息的方法及电子设备 |
CN107315700B (zh) * | 2016-04-27 | 2020-12-08 | 华为技术有限公司 | 一种中断处理方法以及相关装置 |
CN106527653A (zh) * | 2016-10-12 | 2017-03-22 | 东软集团股份有限公司 | 调整cpu频率的方法及装置 |
CN106791152B (zh) * | 2016-12-30 | 2019-08-27 | Oppo广东移动通信有限公司 | 一种通信方法及移动终端 |
CN107861897A (zh) * | 2017-11-06 | 2018-03-30 | 郑州云海信息技术有限公司 | 一种中断和轮询触发方法、系统、设备及计算机存储介质 |
JP6955163B2 (ja) | 2017-12-26 | 2021-10-27 | 富士通株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN108415044B (zh) * | 2018-02-09 | 2020-09-15 | 广州吉欧电子科技有限公司 | 一种处理系统、处理方法和gnss接收设备 |
CN108874548B (zh) * | 2018-07-11 | 2021-04-02 | 深圳市东微智能科技股份有限公司 | 数据处理调度方法、装置、计算机设备和数据处理系统 |
CN109144691B (zh) * | 2018-07-13 | 2021-08-20 | 哈尔滨工程大学 | 一种面向多核处理器的任务调度分配方法 |
CN110941205A (zh) * | 2018-09-21 | 2020-03-31 | 欧姆龙(上海)有限公司 | 采样控制装置、采样控制方法和电子设备 |
CN109714269B (zh) * | 2018-12-19 | 2022-05-17 | 迈普通信技术股份有限公司 | 一种数据处理方法及网络设备 |
CN112114940B (zh) * | 2019-06-19 | 2022-09-06 | 中建材信息技术股份有限公司 | Docker环境下多容器多任务处理器调度方法 |
CN112783626B (zh) * | 2021-01-21 | 2023-12-01 | 珠海亿智电子科技有限公司 | 中断处理方法、装置、电子设备及存储介质 |
CN113055292B (zh) * | 2021-03-11 | 2022-11-04 | 青岛矽昌通信技术有限公司 | 一种提升多核路由器转发性能的方法及一种多核路由器 |
CN114006873B (zh) * | 2021-10-29 | 2023-12-15 | 深圳市风云实业有限公司 | 一种基于多核处理器的流量调度方法 |
CN114257549B (zh) * | 2021-12-21 | 2023-01-10 | 北京锐安科技有限公司 | 一种流量的转发方法、装置、设备及存储介质 |
CN115185176B (zh) * | 2022-09-08 | 2022-12-02 | 深圳市恒运昌真空技术有限公司 | 一种双处理模块设备及其控制方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021830A (zh) * | 2007-03-29 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 一种流处理器中多核扩展的方法 |
CN101021831A (zh) * | 2007-03-19 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 面向科学计算的64位流处理器芯片体系结构 |
CN101770401A (zh) * | 2008-12-30 | 2010-07-07 | 北京天融信网络安全技术有限公司 | 一种建立多核运行环境的方法 |
CN101968748A (zh) * | 2010-09-17 | 2011-02-09 | 北京星网锐捷网络技术有限公司 | 多线程数据调度方法、装置及网络设备 |
CN102411510A (zh) * | 2011-09-16 | 2012-04-11 | 华为技术有限公司 | 在多核处理器的虚拟机上映射业务数据流的方法和装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5414858A (en) * | 1992-12-11 | 1995-05-09 | International Business Machines Corporation | System and method for dynamically varying between interrupt and polling to service requests of computer peripherals |
JPH08110804A (ja) * | 1994-10-11 | 1996-04-30 | Omron Corp | データ処理装置 |
US6098105A (en) * | 1997-04-08 | 2000-08-01 | International Business Machines Corporation | Source and destination initiated interrupt method for message arrival notification |
NL1015579C1 (nl) * | 2000-06-30 | 2002-01-02 | Thales Nederland Bv | Werkwijze voor het automatisch verdelen van programmataken over een verzameling processors. |
US8032658B2 (en) * | 2004-07-06 | 2011-10-04 | Oracle America, Inc. | Computer architecture and process for implementing a virtual vertical perimeter framework for an overloaded CPU having multiple network interfaces |
US7564847B2 (en) * | 2004-12-13 | 2009-07-21 | Intel Corporation | Flow assignment |
US7761619B2 (en) * | 2005-05-13 | 2010-07-20 | Microsoft Corporation | Method and system for parallelizing completion event processing |
US20070153796A1 (en) * | 2005-12-30 | 2007-07-05 | Intel Corporation | Packet processing utilizing cached metadata to support forwarding and non-forwarding operations on parallel paths |
KR101286700B1 (ko) * | 2006-11-06 | 2013-07-16 | 삼성전자주식회사 | 멀티 코어 프로세서 시스템에서 로드 밸런싱을 위한 장치및 방법 |
KR100958303B1 (ko) | 2007-12-12 | 2010-05-19 | 한국전자통신연구원 | 멀티코어 시스템 환경에서 내부 코어 간 통신채널을 이용한 모듈 디바이스의 동적 적재 및 실행을 통한 부하 균등화 시스템 및 방법 |
CN101546276B (zh) * | 2008-03-26 | 2012-12-19 | 国际商业机器公司 | 多核环境下实现中断调度的方法及多核处理器 |
US8010822B2 (en) * | 2008-03-28 | 2011-08-30 | Microsoft Corporation | Power-aware thread scheduling and dynamic use of processors |
JP5245722B2 (ja) * | 2008-10-29 | 2013-07-24 | 富士通株式会社 | スケジューラ、プロセッサシステム、プログラム生成装置およびプログラム生成用プログラム |
CN101394362B (zh) * | 2008-11-12 | 2010-12-22 | 清华大学 | 基于流分片的对多核网络处理器进行负载均衡的方法 |
US8635387B2 (en) | 2009-10-09 | 2014-01-21 | Emulex Design & Manufacturing Corporation | Enhanced I/O performance in a multi-processor system via interrupt affinity schemes |
US8307198B2 (en) * | 2009-11-24 | 2012-11-06 | Advanced Micro Devices, Inc. | Distributed multi-core memory initialization |
CN101706743B (zh) * | 2009-12-07 | 2012-09-05 | 北京航空航天大学 | 一种多核环境下的虚拟机调度方法 |
CN102779075B (zh) * | 2012-06-28 | 2014-12-24 | 华为技术有限公司 | 一种在多处理器核系统中进行调度的方法、装置及系统 |
-
2012
- 2012-06-28 CN CN201210217579.8A patent/CN102779075B/zh active Active
-
2013
- 2013-02-01 WO PCT/CN2013/071272 patent/WO2014000450A1/zh active Application Filing
- 2013-02-01 RU RU2014118463/08A patent/RU2577476C2/ru active
- 2013-02-01 KR KR1020147008482A patent/KR101565865B1/ko active IP Right Grant
- 2013-02-01 JP JP2014536110A patent/JP5888629B2/ja active Active
- 2013-02-01 CA CA2849565A patent/CA2849565C/en active Active
- 2013-02-01 EP EP13753404.6A patent/EP2701074B1/en active Active
- 2013-12-30 US US14/143,407 patent/US9218203B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021831A (zh) * | 2007-03-19 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 面向科学计算的64位流处理器芯片体系结构 |
CN101021830A (zh) * | 2007-03-29 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 一种流处理器中多核扩展的方法 |
CN101770401A (zh) * | 2008-12-30 | 2010-07-07 | 北京天融信网络安全技术有限公司 | 一种建立多核运行环境的方法 |
CN101968748A (zh) * | 2010-09-17 | 2011-02-09 | 北京星网锐捷网络技术有限公司 | 多线程数据调度方法、装置及网络设备 |
CN102411510A (zh) * | 2011-09-16 | 2012-04-11 | 华为技术有限公司 | 在多核处理器的虚拟机上映射业务数据流的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2014531081A (ja) | 2014-11-20 |
CA2849565A1 (en) | 2014-01-03 |
US9218203B2 (en) | 2015-12-22 |
CN102779075A (zh) | 2012-11-14 |
KR101565865B1 (ko) | 2015-11-04 |
EP2701074B1 (en) | 2016-10-26 |
WO2014000450A1 (zh) | 2014-01-03 |
KR20140057371A (ko) | 2014-05-12 |
EP2701074A4 (en) | 2014-07-02 |
RU2014118463A (ru) | 2015-11-20 |
RU2577476C2 (ru) | 2016-03-20 |
US20140115603A1 (en) | 2014-04-24 |
CA2849565C (en) | 2016-11-08 |
EP2701074A1 (en) | 2014-02-26 |
JP5888629B2 (ja) | 2016-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102779075B (zh) | 一种在多处理器核系统中进行调度的方法、装置及系统 | |
CN101706742B (zh) | 一种基于多核动态划分的非对称虚拟机i/o调度方法 | |
CN107992362B (zh) | 自动化性能测试的方法、装置及系统 | |
CN101673221B (zh) | 一种嵌入式片上多处理器的中断处理方法 | |
CN103902364A (zh) | 一种物理资源管理方法、装置及智能终端设备 | |
CN109992366A (zh) | 任务调度方法及调度装置 | |
CN104793996A (zh) | 一种并行计算设备的任务调度方法及任务调度装置 | |
CN103856337A (zh) | 资源占用率获取方法、提供方法、系统及服务器 | |
CN112162835A (zh) | 一种异构云环境下实时任务的调度优化方法 | |
CN109558216B (zh) | 一种基于在线迁移的单根i/o虚拟化优化方法及其系统 | |
CN105378668A (zh) | 多处理器系统中的操作系统管理的中断引导 | |
CN106201693A (zh) | 一种虚拟化环境中的调度方法及系统 | |
CN105634502A (zh) | 基于状态机的按键扫描的实现方法 | |
CN100383743C (zh) | Java操作系统中实时任务调度方法 | |
CN111459648B (zh) | 面向应用程序的异构多核平台资源优化方法和装置 | |
CN107066318A (zh) | 一种适用于流计算的数据调度方法 | |
CN103019850B (zh) | 一种任务绑定的方法和装置 | |
CN105957131A (zh) | 图形处理系统及其方法 | |
CN105677487A (zh) | 一种控制资源占用的方法及装置 | |
CN108984121A (zh) | 保障请求优先级的方法、装置及计算机设备 | |
CN109240914A (zh) | 安全测试任务的监控管理方法及终端设备 | |
CN1940886A (zh) | 概况分析系统及方法 | |
CN107885589A (zh) | 一种作业调度方法及装置 | |
CN104506452B (zh) | 一种报文处理方法及装置 | |
CN111209102A (zh) | 一种分布式任务分发方法与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |