CN103744808B - 一种用于控制i/o请求的方法与设备 - Google Patents

一种用于控制i/o请求的方法与设备 Download PDF

Info

Publication number
CN103744808B
CN103744808B CN201310751661.3A CN201310751661A CN103744808B CN 103744808 B CN103744808 B CN 103744808B CN 201310751661 A CN201310751661 A CN 201310751661A CN 103744808 B CN103744808 B CN 103744808B
Authority
CN
China
Prior art keywords
requests
resource
informations
done
resource quota
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
Application number
CN201310751661.3A
Other languages
English (en)
Other versions
CN103744808A (zh
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201310751661.3A priority Critical patent/CN103744808B/zh
Publication of CN103744808A publication Critical patent/CN103744808A/zh
Application granted granted Critical
Publication of CN103744808B publication Critical patent/CN103744808B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明的目的是提供一种用于控制I/O请求的方法与设备。具体地,根据I/O资源配额信息处理I/O请求;更新I/O资源配额信息;调度I/O请求中待完成I/O请求,以根据更新后的I/O资源配额信息处理待完成I/O请求。与现有技术相比,本发明通过根据I/O资源配额信息处理I/O请求,以更新所述I/O资源配额信息,进而调度I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求,实现了对单位时间内执行I/O的数据量的精确控制,使其得到有效限制,并降低了I/O流量的波动幅度与波动方差,相应地,也降低了系统异常发生率,提高了系统应用的稳定性,提升了用户的系统使用体验。

Description

一种用于控制I/O请求的方法与设备
技术领域
本发明涉及网络技术领域,尤其涉及一种用于控制I/O请求的技术。
背景技术
在现代系统环境下,I/O(Input/Output)类服务往往是以共享方式使用网络带宽、磁盘读写等资源。在系统中,若该等资源分配不合理,则会引起不同I/O请求的资源竞争,以致引发系统异常,如:1)若一个应用占用较多的I/O带宽,将会影响到系统中其他应用使用带宽;2)若某一进程独占时间过长,将会引起别的进程饥饿;3)预留不必要的资源配额,将会导致高优先级进程无法及时得到响应,例如,在分布式存储中,出口网络过长时间被数据流占据,导致控制流无法发送而引起中控节点的错误判断和调度。现有技术中对I/O请求通过先验结果来推测资源配额并进行控制的方法,在实际使用中不仅具有较高的波动和偏差,不仅影响了用户的应用访问体验,甚至还会导致其他应用的不稳定。
发明内容
本发明的目的是提供一种用于控制I/O请求的方法与设备。
根据本发明的一个方面,提供了一种用于控制I/O请求的方法,其中,该方法包括:
根据I/O资源配额信息处理一个或多个I/O请求;
更新所述I/O资源配额信息;
调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。
根据本发明的另一方面,还提供了一种用于控制I/O请求的控制设备,其中,该控制设备包括:
用于根据I/O资源配额信息处理一个或多个I/O请求的装置;
用于更新所述I/O资源配额信息的装置;
用于调度所述一个或多个I/O请求中待完成I/O请求的装置,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。
与现有技术相比,本发明通过根据I/O资源配额信息处理I/O请求,以更新所述I/O资源配额信息,进而调度I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求,实现了对单位时间内执行I/O的数据量(即I/O流量)的精确控制,使其得到有效限制,并降低了I/O流量的波动幅度与波动方差,相应地,也降低了系统异常发生率,提高了系统应用的稳定性,提升了用户的系统使用体验;而且,本发明更新所述I/O资源配额信息时,更新后的所述I/O资源配额信息与所述待完成I/O请求所对应的第一请求相关信息相适应,进一步提高了对I/O流量控制的精确度,降低了I/O流量的波动幅度与波动方差,提升了用户的系统使用体验;此外,本发明根据I/O资源配额信息处理I/O请求时,若所述I/O资源配额信息所对应的当前可用资源满足所述I/O请求所对应的资源需求信息,执行所述I/O请求并更新所述当前可用资源;否则,拒绝所述I/O请求,从而更进一步地提高了对I/O流量控制的精确度,降低了I/O流量的波动幅度与波动方差,提升了用户的系统使用体验。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本发明一个方面的一种用于控制I/O请求的设备示意图;
图2示出本发明在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图;
图3示出现有技术中(采用先验结果统计资源配额以进行调度I/O请求的方法)在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图;
图4示出根据本发明另一个方面的一种用于控制I/O请求的方法流程图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
图1示出根据本发明一个方面的一种用于控制I/O请求的控制设备1,其中,该控制设备1包括用于根据I/O资源配额信息处理一个或多个I/O请求的装置(下面简称“请求处理装置11”);用于更新所述I/O资源配额信息的装置(下面简称“配额更新装置12”);用于调度所述一个或多个I/O请求中待完成I/O请求的装置(下面简称“调度装置13”),以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。具体地,请求处理装置11根据I/O资源配额信息处理一个或多个I/O请求;配额更新装置12更新所述I/O资源配额信息;调度装置13调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,控制设备1用于控制处理I/O请求所需的资源配额信息(如对通信带宽、通信流量、磁盘读写开销等的控制),可在应用层实现,使其不依赖于设备系统的内核,其可由网络设备、用户设备或网络设备与用户设备通过网络相集成所构成的设备实现。在此,所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现;或者由用户设备实现。在此,云由基于云计算(CloudComputing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。在此,所述用户设备可以是任何一种可与用户通过键盘、鼠标、触摸板、触摸屏、或手写设备等方式进行人机交互的电子产品,例如计算机、手机、PDA、掌上电脑PPC或平板电脑等。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。本领域技术人员应能理解上述控制设备1仅为举例,其他现有的或今后可能出现的网络设备或用户设备如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。在此,网络设备及用户设备均包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。
具体地,请求处理装置11首先通过诸如I/O流量(即单位时间内执行I/O的数据量)控制的期望目标确定I/O资源配额信息,在此,所述I/O流量控制的期望目标可以是根据系统中实际的不同I/O请求所需的带宽、I/O读写速度(如每秒从系统磁盘读取的数据量、每秒向系统磁盘写入的数据量、读取的总数据量、写入的总数量数据量)等资源进行统计得到的统计值。在此,所述I/O资源配额信息表明了在一定时间段内对用于处理I/O请求的资源的限制。例如,对于系统systerm1,假设通过iostat命令获取到在预定时间段内(如100ms)的系统systerm1的I/O状态数据IO state data1:如磁盘的每秒I/O请求次数、每秒从磁盘读取的数据量、每秒向磁盘写入的数据量、读取的总数据量、写入的总数量数据量、I/O响应时间等信息,则请求处理装置11可首先根据该I/O状态数据IO state data1,计算得到系统systerm1在该预定时间段内执行的总I/O数据量,并根据当前的资源带宽使用量来确定系统systerm1的I/O资源配额信息,如根据多个相同预定时间段内的总I/O数据量及对应的资源带宽使用量,将资源带宽使用量不影响系统systerm1的性能且对应的总I/O数据量尽可能大时的资源带宽使用量作为所述I/O资源配额信息。
本领域技术人员应能理解上述确定I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的确定I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
然后,请求处理装置11再根据该I/O资源配额信息处理一个或多个I/O请求。在此,请求处理装置11处理所述I/O请求的方式包括但不限于以下至少任一项:
1)根据所述I/O资源配额信息确定处理哪些I/O请求,如根据I/O请求所需的资源信息,将该等I/O请求中所需资源总和不超过所述I/O资源配额信息的I/O请求作为待处理I/O请求,并执行该待处理I/O请求,例如,对于系统system1,假设请求处理装置11确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/O request1至I/O request10,假设该10个I/O请求中I/O request1、I/O request3、I/O request4、I/O request8、I/O request9与I/O request10所需的资源累加和小于等于resource-config-info1,则请求处理装置11可分别对请求I/O request1、I/O request3、I/O request4、I/O request8、I/O request9与I/O request10进行处理,而对于请求I/Orequest2、I/O request5、I/O request6、I/O request7则拒绝。
2)若所述I/O资源配额信息所对应的当前可用资源满足所述I/O请求所对应的资源需求信息,请求处理装置11则执行所述I/O请求并更新所述当前可用资源;否则,拒绝所述I/O请求。例如,对于系统system1,假设请求处理装置11确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/O request1至I/Orequest10,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源满足I/O请求如I/O request1至I/O request10所对应的资源需求信息,则请求处理装置11则执行所述I/O请求并更新所述当前可用资源,如当请求I/O request1至I/O request10执行完毕后,将所述当前可用资源清零,或者,重置所述当前可用资源,如将所述当前可用资源恢复至执行所述I/O请求之前的数值;否则,拒绝I/O request1至I/O request10。
优选地,若所述I/O资源配额信息所对应的当前可用资源满足多个所述I/O请求所对应的累加资源需求信息,请求处理装置11则执行所述多个I/O请求并更新所述当前可用资源。例如,接上例,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源满足多个所述I/O请求如I/O request1至I/O request10所对应的累加资源需求信息,请求处理装置11则执行I/O request1至I/O request10并更新所述当前可用资源,如当请求I/O request1至I/O request10执行完毕后,将所述当前可用资源清零,或者,重置所述当前可用资源,如将所述当前可用资源恢复至执行所述I/O请求之前的数值。
更优选地,若所述I/O资源配额信息所对应的当前可用资源不满足所述累加资源需求信息,请求处理装置11则处理所述多个I/O请求中的部分或分别处理所述多个I/O请求中的每一个。例如,还接上例,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源不满足多个所述I/O请求如I/O request1至I/O request10所对应的累加资源需求信息,请求处理装置11则处理请求I/O request1至I/O request10中的部分或分别处理请求I/O request1至I/O request10中的每一个。
本领域技术人员应能理解上述确定I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的确定I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
本领域技术人员应能理解上述根据I/O资源配额信息处理一个或多个I/O请求的方式仅为举例,其他现有的或今后可能出现的根据I/O资源配额信息处理一个或多个I/O请求的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
配额更新装置12更新所述I/O资源配额信息。在此,配额更新装置12更新所述I/O资源配额信息的方式包括但不限于以下至少任一项:
1)在对所述I/O请求处理完毕后,将所述I/O资源配额信息清零,或者,重置所述I/O资源配额信息,以更新所述I/O资源配额信息。例如,还接上例,因请求处理装置11对请求I/O request1、I/O request3、I/O request4、I/O request8、I/O request9与I/Orequest10的处理,消耗了部分或全部所述I/O资源配额信息,则配额更新装置12可在对所述I/O请求处理完毕后,将所述I/O资源配额信息清零,或者,重置所述I/O资源配额信息,如将所述I/O资源配额信息恢复至处理所述I/O请求之前的配额。
2)根据预定的更新触发条件,更新所述I/O资源配额信息。在此,所述更新触发条件包括但不限于如:i)用户手动重置所述I/O资源配额信息;ii)当前时间片超时;iii)未完成的I/O请求超过预定数量;ⅳ)连续未完成的I/O请求超过预定数量。优选地,所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。具体地,配额更新装置12首先检测是否满足预定的更新触发条件,当满足所述更新出发条件时,再更新所述I/O资源配额信息。本领域技术人员应能理解上述更新触发条件仅为举例,其他现有的或今后可能出现的更新触发条件如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,当所述更新触发条件包括所述用手动重置所述I/O资源配置信息时,假设用户user通过系统system1运行产品代码时,又启动了其他操作,若再启动其他操作的过程中,用户对相应的I/O资源配额信息进行了重置,则配额更新装置12通过系统system1自身所提供的应用程序接口(API),便可获取到用户user的对所述I/O资源配额信息的重置操作,即判断满足所述更新触发条件;然后,配额更新装置12更新所述I/O资源配额信息,如将所述I/O资源配额信息更新为用户user重置的配额。
再如,当所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。在此,所述时间片的定时时长与所述I/O资源配额信息相适应的含义是指时间片的大小与I/O资源配额的大小是相适应的,例如,较多的I/O资源配额可预期对应较大的时间片超时。在此,可通过根据系统实际运行的负载测试统计在两个维度变化情况下(一个维度是I/O资源配额,另外一个时间片大小),系统实际运行的方差分布图来确定,或者根据I/O流量速率的统计值来估算确定两者之间的对应关系。例如,对于系统system1,假设请求处理装置11确定的所述I/O资源配额信息为resource-config-info1,当前时间片如current timer的定时时长与esource-config-info1相适应,而当前系统system1需要处理的I/O请求包括I/O request1至I/O request10,若请求处理装置11在对请求I/O request1至I/O request10处理过程中,未处理完毕时,当前时间片currenttimer超时,则配额更新装置12可判断满足所述更新触发条件,然后,配额更新装置12更新所述I/O资源配额信息,如将所述I/O资源配额信息更新为用户user重置的配额。
本领域技术人员应能理解上述更新所述I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的更新所述I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
调度装置13调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,所述待完成I/O请求包括所述一个或多个I/O请求中未处理完毕的请求、处理中断的请求,以及未进行处理的请求等。例如,接上例,请求处理装置11在对请求I/O request1至I/O request10处理过程中,未处理完毕时,如请求I/O request2、I/O request5、I/O request6、I/O request7未处理完毕,当前时间片current timer超时,而配额更新装置12判断满足所述更新触发条件,并将所述I/O资源配额信息更新为用户user重置的配额如reset-resource-config-info1,则调度装置13调度该等未处理完毕的请求,以根据更新后的所述I/O资源配额信息reset-resource-config-info1处理I/O request2、I/O request5、I/O request6、I/O request7。
在此,本发明实现了对单位时间内执行I/O的数据量(即I/O流量)的精确控制,使其得到有效限制,并降低了I/O流量的波动幅度与波动方差。图2示出本发明在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图,从图2可以看出,本发明中网络出口I/O流随时间的波动比较平稳。图3示出现有技术中(采用传统的先验统计来指导后续调度)在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图,从图3可以看出,网络出口I/O流随时间变化的波峰波谷偏差较大,其在现实的工程应用中会冲击上限值,引起瞬时高负载压力。本发明现对于现有技术,网络出口I/O流的波动方差降低了75.7%,正负波动平均为1.2%,也降低了系统异常发生率。
优选地,调度装置13根据所述一个或多个I/O请求中待完成I/O请求所对应的第二请求相关信息,调度所述待完成I/O请求。在此,所述第二请求相关信息包括但不限于如:1)所述待完成I/O请求被暂停/中断的顺序;2)所述待完成I/O所对应的调度优先级,在此,可根据所述待完成I/O请求的请求返回值来确定该待完成I/O请求的调度优先级,如请求返回失败越早的I/O请求的调度优先级越高。本领域技术人员应能理解上述第二请求相关信息仅为举例,其他现有的或今后可能出现的第二请求相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,当所述第二请求相关信息包括所述待完成I/O请求被暂停的顺序时,还接上例,请求处理装置11在对请求I/O request1至I/O request10处理过程中,因所述I/O配额资源信息所对应的当前可用资源不满足请求I/O request1至I/O request10的累加资源需求,请求I/O request2、I/O request5、I/O request6、I/O request7被暂停处理,且被暂停的顺序为I/O request7、I/O request5、I/O request6、I/O request2,则调度装置13可根据请求I/O request2、I/O request5、I/O request6、I/O request7被暂停的顺序,来调度该等待完成I/O请求,即按照先停先触发的原则,调度所述待完成I/O请求。
再如,当所述第二请求相关信息包括所述待完成I/O所对应的调度优先级时,还接上例,因所述I/O配额资源信息所对应的当前可用资源不满足请求I/O request1至I/Orequest10的累加资源需求,请求I/O request2、I/O request5、I/O request6、I/Orequest7均失败,则调度装置13可根据请求I/O request2、I/O request5、I/O request6、I/O request7失败的返回值进行排序,如最早请求返回失败的排在最前面,相应的调度优先级越高,假设请求I/O request2、I/O request5、I/O request6、I/O request7返回失败的顺序为I/O request7、I/O request5、I/O request6、I/O request2,则调度装置13可根据请求I/O request2、I/O request5、I/O request6、I/O request7返回失败的顺序,来调度该等待完成I/O请求,即按照先停先触发的原则,调度所述待完成I/O请求。
本领域技术人员应能理解上述根据所述第二请求相关信息调度所述待完成I/O请求的方式仅为举例,其他现有的或今后可能出现的根据所述第二请求相关信息调度所述待完成I/O请求的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
优选地,配额更新装置12还可更新所述I/O资源配额信息,其中,更新后的所述I/O资源配额信息与所述待完成I/O请求所对应的第一请求相关信息相适应。在此,所述第一请求相关信息包括但不限于如:1)所述待完成I/O请求的队列长度;2)所述待完成I/O请求所对应应用的优先级等信息。在此,所述待完成I/O请求所对应应用包括但不限于如:1)所述待完成I/O请求所属的请求类别,如读请求、写请求等;2)所述待完成I/O请求所对应的I/O方式,如对于Linux系统,I/O操作可以有多种方式,比如DIO(Direct I/O,直接I/O)、AIO(Asynchronous I/O,异步I/O)、Memory-Mapped I/O(内存映设I/O)等。本领域技术人员应能理解上述第一请求相关信息仅为举例,其他现有的或今后可能出现的第一请求相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,对于系统system1,假设请求处理装置11确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/O request1至I/Orequest10,请求处理装置11在对请求I/O request1至I/O request10处理过程中,请求I/Orequest2、I/O request5、I/O request6、I/O request7被暂停处理,则配额更新装置12可根据该等被暂停处理的I/O请求,更新I/O资源配额信息resource-config-info1,得到更新后的I/O资源配额信息new-resource-config-info1,如更新后的所述I/O资源配额信息与请求I/O request2、I/O request5、I/O request6、I/O request7的队列长度相适应,即所述待完成I/O请求的队列越长,更新后的所述I/O资源配额信息越多。
控制设备1的各个装置之间是持续不断工作的。具体地,请求处理装置11持续根据I/O资源配额信息处理一个或多个I/O请求;配额更新装置12持续更新所述I/O资源配额信息;调度装置13持续调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,本领域技术人员应能理解所述“持续”是指控制设备1的各装置之间分别不断地进行I/O请求的处理、I/O资源配额信息的更新与待完成I/O请求的调度,直至控制设备1在较长时间内停止处理I/O请求。
图4示出根据本发明另一个方面的一种用于控制I/O请求的方法流程图。
具体地,在步骤S1中,控制设备1根据I/O资源配额信息处理一个或多个I/O请求;在步骤S2中,控制设备1更新所述I/O资源配额信息;在步骤S3中,控制设备1调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,控制设备1用于控制处理I/O请求所需的资源配额信息(如对通信带宽、通信流量、磁盘读写开销等的控制),可在应用层实现,使其不依赖于设备系统的内核,其可由网络设备、用户设备或网络设备与用户设备通过网络相集成所构成的设备实现。在此,所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现;或者由用户设备实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。在此,所述用户设备可以是任何一种可与用户通过键盘、鼠标、触摸板、触摸屏、或手写设备等方式进行人机交互的电子产品,例如计算机、手机、PDA、掌上电脑PPC或平板电脑等。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。本领域技术人员应能理解上述控制设备1仅为举例,其他现有的或今后可能出现的网络设备或用户设备如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。在此,网络设备及用户设备均包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。
具体地,在步骤S1中,控制设备1首先通过诸如I/O流量(即单位时间内执行I/O的数据量)控制的期望目标确定I/O资源配额信息,在此,所述I/O流量控制的期望目标可以是根据系统中实际的不同I/O请求所需的带宽、I/O读写速度(如每秒从系统磁盘读取的数据量、每秒向系统磁盘写入的数据量、读取的总数据量、写入的总数量数据量)等资源进行统计得到的统计值。在此,所述I/O资源配额信息表明了在一定时间段内对用于处理I/O请求的资源的限制。例如,对于系统systerm1,假设通过iostat命令获取到在预定时间段内(如100ms)的系统systerm1的I/O状态数据IO state data1:如磁盘的每秒I/O请求次数、每秒从磁盘读取的数据量、每秒向磁盘写入的数据量、读取的总数据量、写入的总数量数据量、I/O响应时间等信息,则在步骤S1中,控制设备1可首先根据该I/O状态数据IO statedata1,计算得到系统systerm1在该预定时间段内执行的总I/O数据量,并根据当前的资源带宽使用量来确定系统systerm1的I/O资源配额信息,如根据多个相同预定时间段内的总I/O数据量及对应的资源带宽使用量,将资源带宽使用量不影响系统systerm1的性能且对应的总I/O数据量尽可能大时的资源带宽使用量作为所述I/O资源配额信息。
本领域技术人员应能理解上述确定I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的确定I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
然后,在步骤S1中,控制设备1再根据该I/O资源配额信息处理一个或多个I/O请求。在此,在步骤S1中,控制设备1处理所述I/O请求的方式包括但不限于以下至少任一项:
1)根据所述I/O资源配额信息确定处理哪些I/O请求,如根据I/O请求所需的资源信息,将该等I/O请求中所需资源总和不超过所述I/O资源配额信息的I/O请求作为待处理I/O请求,并执行该待处理I/O请求,例如,对于系统system1,假设在步骤S1中,控制设备1确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/O request1至I/O request10,假设该10个I/O请求中I/O request1、I/Orequest3、I/O request4、I/O request8、I/O request9与I/O request10所需的资源累加和小于等于resource-config-info1,则在步骤S1中,控制设备1可分别对请求I/Orequest1、I/O request3、I/O request4、I/O request8、I/O request9与I/O request10进行处理,而对于请求I/O request2、I/O request5、I/O request6、I/O request7则拒绝。
2)若所述I/O资源配额信息所对应的当前可用资源满足所述I/O请求所对应的资源需求信息,在步骤S1中,控制设备1则执行所述I/O请求并更新所述当前可用资源;否则,拒绝所述I/O请求。例如,对于系统system1,假设在步骤S1中,控制设备1确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/Orequest1至I/O request10,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源满足I/O请求如I/O request1至I/O request10所对应的资源需求信息,则在步骤S1中,控制设备1则执行所述I/O请求并更新所述当前可用资源,如当请求I/Orequest1至I/O request10执行完毕后,将所述当前可用资源清零,或者,重置所述当前可用资源,如将所述当前可用资源恢复至执行所述I/O请求之前的数值;否则,拒绝I/Orequest1至I/O request10。
优选地,若所述I/O资源配额信息所对应的当前可用资源满足多个所述I/O请求所对应的累加资源需求信息,在步骤S1中,控制设备1则执行所述多个I/O请求并更新所述当前可用资源。例如,接上例,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源满足多个所述I/O请求如I/O request1至I/O request10所对应的累加资源需求信息,在步骤S1中,控制设备1则执行I/O request1至I/O request10并更新所述当前可用资源,如当请求I/O request1至I/O request10执行完毕后,将所述当前可用资源清零,或者,重置所述当前可用资源,如将所述当前可用资源恢复至执行所述I/O请求之前的数值。
更优选地,若所述I/O资源配额信息所对应的当前可用资源不满足所述累加资源需求信息,在步骤S1中,控制设备1则处理所述多个I/O请求中的部分或分别处理所述多个I/O请求中的每一个。例如,还接上例,若所述I/O资源配额信息如resource-config-info1所对应的当前可用资源不满足多个所述I/O请求如I/O request1至I/O request10所对应的累加资源需求信息,在步骤S1中,控制设备1则处理请求I/O request1至I/O request10中的部分或分别处理请求I/O request1至I/O request10中的每一个。
本领域技术人员应能理解上述确定I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的确定I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
本领域技术人员应能理解上述根据I/O资源配额信息处理一个或多个I/O请求的方式仅为举例,其他现有的或今后可能出现的根据I/O资源配额信息处理一个或多个I/O请求的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
在步骤S2中,控制设备1更新所述I/O资源配额信息。在此,在步骤S2中,控制设备1更新所述I/O资源配额信息的方式包括但不限于以下至少任一项:
1)在对所述I/O请求处理完毕后,将所述I/O资源配额信息清零,或者,重置所述I/O资源配额信息,以更新所述I/O资源配额信息。例如,还接上例,因在步骤S1中,控制设备1对请求I/O request1、I/O request3、I/O request4、I/O request8、I/O request9与I/Orequest10的处理,消耗了部分或全部所述I/O资源配额信息,则在步骤S2中,控制设备1可在对所述I/O请求处理完毕后,将所述I/O资源配额信息清零,或者,重置所述I/O资源配额信息,如将所述I/O资源配额信息恢复至处理所述I/O请求之前的配额。
2)根据预定的更新触发条件,更新所述I/O资源配额信息。在此,所述更新触发条件包括但不限于如:i)用户手动重置所述I/O资源配额信息;ii)当前时间片超时;iii)未完成的I/O请求超过预定数量;ⅳ)连续未完成的I/O请求超过预定数量。优选地,所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。具体地,在步骤S2中,控制设备1首先检测是否满足预定的更新触发条件,当满足所述更新出发条件时,再更新所述I/O资源配额信息。本领域技术人员应能理解上述更新触发条件仅为举例,其他现有的或今后可能出现的更新触发条件如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,当所述更新触发条件包括所述用手动重置所述I/O资源配置信息时,假设用户user通过系统system1运行产品代码时,又启动了其他操作,若再启动其他操作的过程中,用户对相应的I/O资源配额信息进行了重置,则在步骤S2中,控制设备1通过系统system1自身所提供的应用程序接口(API),便可获取到用户user的对所述I/O资源配额信息的重置操作,即判断满足所述更新触发条件;然后,在步骤S2中,控制设备1更新所述I/O资源配额信息,如将所述I/O资源配额信息更新为用户user重置的配额。
再如,当所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。在此,所述时间片的定时时长与所述I/O资源配额信息相适应的含义是指时间片的大小与I/O资源配额的大小是相适应的,例如,较多的I/O资源配额可预期对应较大的时间片超时。在此,可通过根据系统实际运行的负载测试统计在两个维度变化情况下(一个维度是I/O资源配额,另外一个时间片大小),系统实际运行的方差分布图来确定,或者根据I/O流量速率的统计值来估算确定两者之间的对应关系。例如,对于系统system1,假设在步骤S1中,控制设备1确定的所述I/O资源配额信息为resource-config-info1,当前时间片如current timer的定时时长与esource-config-info1相适应,而当前系统system1需要处理的I/O请求包括I/O request1至I/O request10,若在步骤S1中,控制设备1在对请求I/O request1至I/O request10处理过程中,未处理完毕时,当前时间片current timer超时,则在步骤S2中,控制设备1可判断满足所述更新触发条件,然后,在步骤S2中,控制设备1更新所述I/O资源配额信息,如将所述I/O资源配额信息更新为用户user重置的配额。
本领域技术人员应能理解上述更新所述I/O资源配额信息的方式仅为举例,其他现有的或今后可能出现的更新所述I/O资源配额信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
在步骤S3中,控制设备1调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,所述待完成I/O请求包括所述一个或多个I/O请求中未处理完毕的请求、处理中断的请求,以及未进行处理的请求等。例如,接上例,在步骤S1中,控制设备1在对请求I/O request1至I/O request10处理过程中,未处理完毕时,如请求I/O request2、I/O request5、I/O request6、I/O request7未处理完毕,当前时间片current timer超时,而在步骤S2中,控制设备1判断满足所述更新触发条件,并将所述I/O资源配额信息更新为用户user重置的配额如reset-resource-config-info1,则在步骤S3中,控制设备1调度该等未处理完毕的请求,以根据更新后的所述I/O资源配额信息reset-resource-config-info1处理I/O request2、I/O request5、I/Orequest6、I/O request7。
在此,本发明实现了对单位时间内执行I/O的数据量(即I/O流量)的精确控制,使其得到有效限制,并降低了I/O流量的波动幅度与波动方差。图2示出本发明在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图,从图2可以看出,本发明中网络出口I/O流随时间的波动比较平稳。图3示出现有技术中(采用传统的先验统计来指导后续调度)在限制网络20M/sec带宽情况下,网络出口I/O流随时间变化的示意图,从图3可以看出,网络出口I/O流随时间变化的波峰波谷偏差较大,其在现实的工程应用中会冲击上限值,引起瞬时高负载压力。本发明现对于现有技术,网络出口I/O流的波动方差降低了75.7%,正负波动平均为1.2%,也降低了系统异常发生率。
优选地,在步骤S3中,控制设备1根据所述一个或多个I/O请求中待完成I/O请求所对应的第二请求相关信息,调度所述待完成I/O请求。在此,所述第二请求相关信息包括但不限于如:1)所述待完成I/O请求被暂停/中断的顺序;2)所述待完成I/O所对应的调度优先级,在此,可根据所述待完成I/O请求的请求返回值来确定该待完成I/O请求的调度优先级,如请求返回失败越早的I/O请求的调度优先级越高。本领域技术人员应能理解上述第二请求相关信息仅为举例,其他现有的或今后可能出现的第二请求相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,当所述第二请求相关信息包括所述待完成I/O请求被暂停的顺序时,还接上例,在步骤S1中,控制设备1在对请求I/O request1至I/O request10处理过程中,因所述I/O配额资源信息所对应的当前可用资源不满足请求I/O request1至I/O request10的累加资源需求,请求I/O request2、I/O request5、I/O request6、I/O request7被暂停处理,且被暂停的顺序为I/O request7、I/O request5、I/O request6、I/O request2,则在步骤S3中,控制设备1可根据请求I/O request2、I/O request5、I/O request6、I/O request7被暂停的顺序,来调度该等待完成I/O请求,即按照先停先触发的原则,调度所述待完成I/O请求。
再如,当所述第二请求相关信息包括所述待完成I/O所对应的调度优先级时,还接上例,因所述I/O配额资源信息所对应的当前可用资源不满足请求I/O request1至I/Orequest10的累加资源需求,请求I/O request2、I/O request5、I/O request6、I/Orequest7均失败,则在步骤S3中,控制设备1可根据请求I/O request2、I/O request5、I/Orequest6、I/O request7失败的返回值进行排序,如最早请求返回失败的排在最前面,相应的调度优先级越高,假设请求I/O request2、I/O request5、I/O request6、I/O request7返回失败的顺序为I/O request7、I/O request5、I/O request6、I/O request2,则在步骤S3中,控制设备1可根据请求I/O request2、I/O request5、I/O request6、I/O request7返回失败的顺序,来调度该等待完成I/O请求,即按照先停先触发的原则,调度所述待完成I/O请求。
本领域技术人员应能理解上述根据所述第二请求相关信息调度所述待完成I/O请求的方式仅为举例,其他现有的或今后可能出现的根据所述第二请求相关信息调度所述待完成I/O请求的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
优选地,在步骤S2中,控制设备1还可更新所述I/O资源配额信息,其中,更新后的所述I/O资源配额信息与所述待完成I/O请求所对应的第一请求相关信息相适应。在此,所述第一请求相关信息包括但不限于如:1)所述待完成I/O请求的队列长度;2)所述待完成I/O请求所对应应用的优先级等信息。在此,所述待完成I/O请求所对应应用包括但不限于如:1)所述待完成I/O请求所属的请求类别,如读请求、写请求等;2)所述待完成I/O请求所对应的I/O方式,如对于Linux系统,I/O操作可以有多种方式,比如DIO(Direct I/O,直接I/O)、AIO(Asynchronous I/O,异步I/O)、Memory-Mapped I/O(内存映设I/O)等。本领域技术人员应能理解上述第一请求相关信息仅为举例,其他现有的或今后可能出现的第一请求相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
例如,对于系统system1,假设在步骤S1中,控制设备1确定的所述I/O资源配额信息为resource-config-info1,而当前系统system1需要处理的I/O请求包括I/O request1至I/O request10,在步骤S1中,控制设备1在对请求I/O request1至I/O request10处理过程中,请求I/O request2、I/O request5、I/O request6、I/O request7被暂停处理,则在步骤S2中,控制设备1可根据该等被暂停处理的I/O请求,更新I/O资源配额信息resource-config-info1,得到更新后的I/O资源配额信息new-resource-config-info1,如更新后的所述I/O资源配额信息与请求I/O request2、I/O request5、I/O request6、I/O request7的队列长度相适应,即所述待完成I/O请求的队列越长,更新后的所述I/O资源配额信息越多。
控制设备1的各个步骤之间是持续不断工作的。具体地,在步骤S1中,控制设备1持续根据I/O资源配额信息处理一个或多个I/O请求;在步骤S2中,控制设备1持续更新所述I/O资源配额信息;在步骤S3中,控制设备1持续调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求。在此,本领域技术人员应能理解所述“持续”是指控制设备1的各步骤之间分别不断地进行I/O请求的处理、I/O资源配额信息的更新与待完成I/O请求的调度,直至控制设备1在较长时间内停止处理I/O请求。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (12)

1.一种用于控制I/O请求的方法,其中,该方法包括:
根据I/O资源配额信息处理一个或多个I/O请求;
更新所述I/O资源配额信息,其中,更新后的所述I/O资源配额信息与所述一个或多个I/O请求中的待完成I/O请求所对应的第一请求相关信息相适应,其中,所述第一请求相关信息包括所述待完成I/O请求的队列长度和/或所述待完成I/O请求所对应应用的优先级;
调度所述一个或多个I/O请求中待完成I/O请求,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求;
其中,调度所述一个或多个I/O请求中待完成I/O请求的操作包括:
根据所述一个或多个I/O请求中待完成I/O请求所对应的第二请求相关信息,调度所述待完成I/O请求,其中,所述第二请求相关信息包括所述待完成I/O请求被暂停/中断的顺序,和/或,所述待完成I/O所对应的调度优先级。
2.根据权利要求1所述的方法,其中,更新所述I/O资源配额信息包括:
根据预定的更新触发条件,更新所述I/O资源配额信息。
3.根据权利要求2所述的方法,其中,所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。
4.根据权利要求1至3中任一项所述的方法,其中,根据I/O资源配额信息处理一个或多个I/O请求包括:
若所述I/O资源配额信息所对应的当前可用资源满足所述I/O请求所对应的资源需求信息,则执行所述I/O请求并更新所述当前可用资源;否则,拒绝所述I/O请求。
5.根据权利要求4所述的方法,其中,根据I/O资源配额信息处理一个或多个I/O请求还包括:
若所述I/O资源配额信息所对应的当前可用资源满足多个所述I/O请求所对应的累加资源需求信息,则执行所述多个I/O请求并更新所述当前可用资源。
6.根据权利要求5所述的方法,其中,根据I/O资源配额信息处理一个或多个I/O请求还包括:
若所述I/O资源配额信息所对应的当前可用资源不满足所述累加资源需求信息,则处理所述多个I/O请求中的部分或分别处理所述多个I/O请求中的每一个。
7.一种用于控制I/O请求的控制设备,其中,该控制设备包括:
用于根据I/O资源配额信息处理一个或多个I/O请求的装置;
用于更新所述I/O资源配额信息的装置,其中,更新后的所述I/O资源配额信息与所述一个或多个I/O请求中的待完成I/O请求所对应的第一请求相关信息相适应,其中,所述第一请求相关信息包括所述待完成I/O请求的队列长度和/或所述待完成I/O请求所对应应用的优先级;
用于调度所述一个或多个I/O请求中待完成I/O请求的装置,以根据更新后的所述I/O资源配额信息处理所述待完成I/O请求;
其中,调度所述一个或多个I/O请求中待完成I/O请求的装置用于:
根据所述一个或多个I/O请求中待完成I/O请求所对应的第二请求相关信息,调度所述待完成I/O请求,其中,所述第二请求相关信息包括所述待完成I/O请求被暂停/中断的顺序,和/或,所述待完成I/O所对应的调度优先级。
8.根据权利要求7所述的控制设备,其中,更新所述I/O资源配额信息的装置用于:
根据预定的更新触发条件,更新所述I/O资源配额信息。
9.根据权利要求8所述的控制设备,其中,所述更新触发条件包括当前时间片超时,其中,所述时间片的定时时长与所述I/O资源配额信息相适应。
10.根据权利要求7至9中任一项所述的控制设备,其中,根据I/O资源配额信息处理一个或多个I/O请求的装置用于:
若所述I/O资源配额信息所对应的当前可用资源满足所述I/O请求所对应的资源需求信息,则执行所述I/O请求并更新所述当前可用资源;否则,拒绝所述I/O请求。
11.根据权利要求10所述的控制设备,其中,根据I/O资源配额信息处理一个或多个I/O请求的装置还用于:
若所述I/O资源配额信息所对应的当前可用资源满足多个所述I/O请求所对应的累加资源需求信息,则执行所述多个I/O请求并更新所述当前可用资源。
12.根据权利要求11所述的控制设备,其中,根据I/O资源配额信息处理一个或多个I/O请求的装置还用于:
若所述I/O资源配额信息所对应的当前可用资源不满足所述累加资源需求信息,则处理所述多个I/O请求中的部分或分别处理所述多个I/O请求中的每一个。
CN201310751661.3A 2013-12-31 2013-12-31 一种用于控制i/o请求的方法与设备 Active CN103744808B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310751661.3A CN103744808B (zh) 2013-12-31 2013-12-31 一种用于控制i/o请求的方法与设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310751661.3A CN103744808B (zh) 2013-12-31 2013-12-31 一种用于控制i/o请求的方法与设备

Publications (2)

Publication Number Publication Date
CN103744808A CN103744808A (zh) 2014-04-23
CN103744808B true CN103744808B (zh) 2017-12-26

Family

ID=50501826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310751661.3A Active CN103744808B (zh) 2013-12-31 2013-12-31 一种用于控制i/o请求的方法与设备

Country Status (1)

Country Link
CN (1) CN103744808B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159620B (zh) * 2015-09-29 2018-07-20 华为数字技术(成都)有限公司 存储QoS控制策略的实现方法及装置
CN105610734B (zh) * 2015-12-28 2018-12-25 杭州宏杉科技股份有限公司 一种流量控制方法及装置
CN107819876A (zh) * 2017-11-27 2018-03-20 北京旷视科技有限公司 一种基于云平台的数据处理方法及系统
CN110120963B (zh) * 2018-02-06 2022-08-12 斑马智行网络(香港)有限公司 一种数据处理方法、装置、设备和机器可读介质
CN108762665B (zh) * 2018-04-08 2023-06-09 中兴通讯股份有限公司 一种控制存储设备读写的方法及装置
CN110493362B (zh) * 2019-08-22 2022-04-29 腾讯科技(深圳)有限公司 请求量控制方法、装置、存储介质和计算机设备
CN113301076B (zh) * 2020-05-18 2022-05-06 阿里巴巴集团控股有限公司 流量控制方法、分布式系统、设备及存储介质
CN111949099B (zh) * 2020-09-01 2022-08-09 深圳大普微电子科技有限公司 一种存储器的温控方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408853A (zh) * 2008-10-27 2009-04-15 中国科学院计算技术研究所 一种虚拟机调度的装置及方法
CN101458635A (zh) * 2007-12-14 2009-06-17 韩国电子通信研究院 服务器虚拟环境的磁盘输入/输出调度器及其调度方法
WO2010068377A2 (en) * 2008-11-17 2010-06-17 Unisys Corporation Simultaneous state-based cryptographic splitting in a secure storage appliance
CN101751288A (zh) * 2008-12-12 2010-06-23 中国移动通信集团山东有限公司 应用进程调度的方法、设备及系统
CN103049406A (zh) * 2011-09-07 2013-04-17 苹果公司 用于i/o流量的一致性开关

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458635A (zh) * 2007-12-14 2009-06-17 韩国电子通信研究院 服务器虚拟环境的磁盘输入/输出调度器及其调度方法
CN101408853A (zh) * 2008-10-27 2009-04-15 中国科学院计算技术研究所 一种虚拟机调度的装置及方法
WO2010068377A2 (en) * 2008-11-17 2010-06-17 Unisys Corporation Simultaneous state-based cryptographic splitting in a secure storage appliance
CN101751288A (zh) * 2008-12-12 2010-06-23 中国移动通信集团山东有限公司 应用进程调度的方法、设备及系统
CN103049406A (zh) * 2011-09-07 2013-04-17 苹果公司 用于i/o流量的一致性开关

Also Published As

Publication number Publication date
CN103744808A (zh) 2014-04-23

Similar Documents

Publication Publication Date Title
CN103744808B (zh) 一种用于控制i/o请求的方法与设备
US11094031B2 (en) GPU resource usage display and dynamic GPU resource allocation in a networked virtualization system
CN104113585B (zh) 用于产生指示负载平衡状态的硬件级中断的方法和设备
CN102317917B (zh) 热点域虚拟机cpu调度方法及虚拟机系统
CN108090225B (zh) 数据库实例的运行方法、装置、系统及计算机可读存储介质
US10606649B2 (en) Workload identification and display of workload-specific metrics
CN106020927B (zh) 一种云计算系统中任务调度与资源配置的通用方法
CN103458052B (zh) 一种基于IaaS云平台的资源调度方法和装置
EP3537281B1 (en) Storage controller and io request processing method
CN103179048B (zh) 云数据中心的主机QoS策略变换方法及系统
US10157155B2 (en) Operating system-managed interrupt steering in multiprocessor systems
CN102662750A (zh) 基于弹性虚拟机池的虚拟机资源优化控制方法及其系统
CN104462432A (zh) 自适应的分布式计算方法
CN103365726A (zh) 一种面向gpu集群的资源管理方法和系统
US10198370B2 (en) Memory distribution across multiple non-uniform memory access nodes
US20170046089A1 (en) Online flash resource allocation manager based on a tco model
CN109313478A (zh) 出于能效在移动装置上进行的唤醒锁感知系统宽作业调度
KR20200090957A (ko) 서비스 하한 품질에 기초한 메모리 대역폭 스케줄링
JP5961402B2 (ja) 計算機システム
CN105242955B (zh) 一种虚拟机磁盘输入输出调度方法及系统
CN109117280A (zh) 电子装置及其限制进程间通信的方法、存储介质
Alrajeh et al. Using Virtual Machine live migration in trace-driven energy-aware simulation of high-throughput computing systems
Hirashima et al. Proactive-reactive auto-scaling mechanism for unpredictable load change
US10002173B1 (en) System and methods for dynamically adjusting between asynchronous and synchronous data replication policies in a networked virtualization environment
CN105164658A (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
GR01 Patent grant