CN113127196A - 一种基于计算平台缓存状态感知的随机i/o调度方法 - Google Patents
一种基于计算平台缓存状态感知的随机i/o调度方法 Download PDFInfo
- Publication number
- CN113127196A CN113127196A CN202110345424.1A CN202110345424A CN113127196A CN 113127196 A CN113127196 A CN 113127196A CN 202110345424 A CN202110345424 A CN 202110345424A CN 113127196 A CN113127196 A CN 113127196A
- Authority
- CN
- China
- Prior art keywords
- application
- cache
- probability
- queue
- request
- 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
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000008447 perception Effects 0.000 title claims abstract description 9
- 238000003860 storage Methods 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 230000003139 buffering effect Effects 0.000 claims description 6
- 230000000737 periodic effect Effects 0.000 claims description 6
- 238000004220 aggregation Methods 0.000 claims description 4
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 240000003183 Manihot esculenta Species 0.000 description 1
- 235000016735 Manihot esculenta subsp esculenta Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供一种基于计算平台缓存状态感知的随机I/O调度方法,所述的方法包括步骤如下:S1:根据平台缓存的已用状态以及基于科学计算应用的概率模型得到的当前应用负载情况,计算得到缓存用完的概率;S2:根据最大化系统效率与最小化应用延迟设置启发式策略,得到应用请求的I/O队列;S3:将当前缓存状态下的缓存用完概率与应用请求的I/O队列相结合,从而得到基于概率的I/O请求队列;S4:根据基于概率的I/O请求队列访问存储系统。本发明综合考虑带有高速缓存的高性能计算平台新体系结构中缓存的状态与应用特征,缓解了系统读写拥塞,提高系统性能。
Description
技术领域
本发明涉及高性能计算机技术领域,更具体地,涉及一种基于计算平台缓存状态感知的随机I/O调度方法。
背景技术
高性能计算平台具有超大规模计算能力与巨大的存储能力,但是随着大数据应用与科学应用的数据需求规模急剧增加以及计算能力与存储性能的鸿沟加大,I/O瓶颈问题越发严重。目前缓解这一问题的技术手段包括I/O调度与突发缓存技术。传统的I/O调度技术通过对请求的重新排序,可以从不同的目标优化I/O请求的性能,如图1所示,是现有的高性能计算平台科学应用的运行示例。如考虑数据在底层文件系统的物理存储、考虑计算节点的拓扑结构、考虑应用的优化目标等。突发缓存技术是通过在计算节点与存储节点之间加入一层高速缓存,用于缓冲突发的I/O请求,可以一定程度缓解I/O拥塞的情况。
对于I/O调度技术的研究,高性能计算领域研究人员主要通过在并行文件系统上添加一个中间层。对于单个大规模应用的情况,Thakur等提出的CollectiveI/O技术被广泛应用,将多个不连续的请求,合并成连续请求,从而减少了磁盘的跳转。Tessier等提出了TAPIOCA方法将平台中计算节点的拓扑结构考虑在内,通过拓扑感知的数据聚合方法减少了通信冲突。对于多个大规模应用的情况,来自不同应用的请求在请求队列中相互交织在一起,形成I/O干扰。跨应用的I/O调度技术可以有效缓解这个问题。Dorier等研究了两个应用间的协作方法。Aupy等研究了更通用的I/O调度情况,提出了多种在线调度的策略可以最大化在拥塞下的应用性能。Aupy等根据应用的周期性特征提出了一种离线的I/O调度策略。
对于突发缓存(burst-buffering)技术,主要存在两种体系结构:分布式与集中式。其中,集中式将高速缓存部署于在计算节点与PFS之间I/O节点上,DDNIME和CrayDatawarp就是采用这样的结构,也是高性能平台的常用结构。而分布式则将缓存部署在计算节点上,为了使用高速缓存设备,可以将突发缓存作为缓存或缓冲,在本节缓存是指作为中间媒介,所有请求都必须经过;缓冲只有在读写负载大于PFS带宽时,才进行访问。Aupy等研究了通过应用的周期性特征对缓存大小进行了估计。
目前这两类缓解I/O瓶颈问题的技术从本质上都是单独使用,都未能有效应对I/O拥塞的情形。在已知方法中没有将两者的优势进行结合的方法。
发明内容
本发明为克服上述现有技术中的不足和缺点,提供了一种基于计算平台缓存状态感知的随机I/O调度方法,其综合考虑高速缓存的容量状态与应用的特征信息,缓解I/O拥塞时的系统访问性能。
为解决上述技术问题,本发明的技术方案如下:一种基于计算平台缓存状态感知的随机I/O调度方法,所述的方法包括步骤如下:
S1:根据平台缓存的已用状态以及基于应用的概率模型得到的当前应用负载情况,计算得到缓存用完的概率;
S2:根据最大化系统效率与最小化应用延迟设置启发式策略,得到应用请求的I/O队列;
S3:将当前缓存状态下的缓存用完概率与应用请求的I/O队列相结合,从而得到基于概率的I/O请求队列;根据基于概率的I/O请求队列访问存储系统。
优选地,在步骤S1之前,先定义系统平台模型,具体在高性能计算平台的计算子系统与存储子系统之间加入一层高速缓存系统,从而构成新型的平台体系结构。
进一步地,步骤S1,所述的应用的概率模型的定义如下:
对于应用Ai存在重复周期的运行模式,每一个周期Di包括计算阶段所占时长Ci与I/O阶段所占时长IOi,即Di=Ci+IOi;在I/O阶段应用得到的最大带宽为bi,因此所述的应用的周期模型可表示为Ai(Ci,IOi,bi);所述的应用在一个周期内I/O所占的比例为因此应用的概率模型表示为Ai(pi,bi)。
再进一步地,步骤S1,所述的当前应用负载情况等于t时刻进行I/O的所有应用负载之和,即IOinstant=∑i∈A(t)bi,其中,A(t)表示t时刻所有运行的应用;
由于应用的I/O具有概率性,通过启发式迭代方法得到系统的瞬时负载分布Dist(k)=Pr(∑ibiXi=k),其中,Xi为应用Ai(pi,bi)执行I/O的随行变量,具体步骤为:
1)初始化Dist(k)数组,数组长度为∑ibi,Dist(0)=1,Dist(k!=0)=0;
2)对应每一个科学计算应用,在每一个k值上,对Dist(k)更新,更新规则如下:
当k≥bi时,Dist(k)=(1-pi)Dist(k)+piDist(k-bi)
当k<bi时,Dist(k)=(1-pi)Dist(k)。
再进一步地,缓存在当前负载的情况下,所述的缓存用完的概率表达式如下:
Pj,S=Dist(k≥S-j+B)
其中,j表示当前缓存使用状态,j<S;B表示并行文件系统的聚合带宽;S表示高速缓存系统容量。
再进一步地,所述的最大化系统效率的表达式如下:
式中,ni(t)表示t时刻完成的周期数;ri表示应用Ai(Ci,IOi,bi)的启动时间。
再进一步地,所述的最小化应用延迟的表达式如下:
再进一步地,步骤S2,根据最大化系统效率与最小化应用延迟设置启发式策略,具体如下:
通过设置启发式策略,生成应用请求的I/O队列。
再进一步地,步骤S3,具体地,将生成的应用请求的I/O请求队列,从第1个请求开始,将当前状态j所得的缓存用完概率Pj,S,应用到每一个请求,即根据概率(Pj,S)i-m(1-Pj,S)选择访问存储系统的请求,形成最终的I/O访问队列,其中,m是队列中请求的数量。
再进一步地,步骤S3,根据基于概率的I/O请求队列访问存储系统,具体地,从基于概率的I/O请求队列逐个请求访问存储系统,当访问负载大于并行文件系统的聚合带宽时,将访问负载缓冲到高速缓存系统;当访问负载小于并行文件系统的聚合带宽时,清空高速缓存系统;当高速缓存系统装满时,暂停1个单位时间,清空高速缓存到并行文件系统。
与现有技术相比,本发明技术方案的有益效果是:
本发明通过应用的概率模型,对其它类型的访问模式提供通用的概率I/O调度,结合应用的访问特征进行I/O调度可以有效利用并行文件的聚合带宽。本发明在带有缓存的高性能计算平台上,在系统效率与应用延迟上的性能更优。
附图说明
图1是现有的高性能计算平台科学应用的运行示例。
图2是本实施例所述的随机I/O调度方法的流程图。
图3是本实施例所述的高性能计算平台的系统构架图。
图4是本实施例的所述的方法与算法BasicIO的系统性能在各种拥塞情况下的对比图。
图5是本实施例的所述的方法与算法BasicIO的应用延迟在各种拥塞情况下的对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,仅用于示例性说明,不能理解为对本专利的限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
如图2所示,一种基于计算平台缓存状态感知的随机I/O调度方法(英文表示:MarkovIO),所述的方法包括步骤如下:
S1:根据平台缓存的已用状态以及基于科学计算应用的概率模型得到的当前应用负载情况,计算得到缓存用完的概率;
S2:根据最大化系统效率与最小化应用延迟设置启发式策略,得到应用请求的I/O队列;
S3:将当前缓存状态下的缓存用完概率与应用请求的I/O队列相结合,从而得到基于概率的I/O请求队列;根据基于概率的I/O请求队列访问存储系统。
在一个具体的实施例中,在步骤S1之前,先定义系统平台模型,具体在高性能计算平台的计算子系统与存储子系统之间加入一层高速缓存系统,称为突发缓存,从而构成新型的平台体系结构,如图3所示。所述的高速缓存系统由存储设备SSD构成。
在一个具体的实施例中,步骤S1,所述的应用的概率模型的定义如下:
对于科应用Ai存在重复周期的运行模式,每一个周期Di包括计算阶段所占时长Ci与I/O阶段所占时长IOi,即Di=Ci+IOi;在I/O阶段应用得到的最大带宽为bi,因此所述的应用的周期模型可表示为Ai(Ci,IOi,bi);所述的应用在一个周期内I/O所占的比例为因此应用的概率模型表示为Ai(pi,bi)。
在一个具体的实施例中,步骤S1,所述的当前应用负载情况等于t时刻进行I/O的所有应用负载之和,即IOinstant=∑i∈A(t)bi,其中,A(t)表示t时刻所有运行的应用;
由于应用的I/O具有概率性,通过启发式迭代方法得到系统的瞬时负载分布Dist(k)=Pr(∑ibiXi=k),其中,Xi为应用Ai(pi,bi)执行I/O的随机变量,具体步骤为:
1)初始化Dist(k)数组,数组长度为∑ibi,Dist(0)=1,Dist(k!=0)=0;
2)对应每一个应用,在每一个k值上,对Dist(k)更新,更新规则如下:
当k≥bi时,Dist(k)=(1-pi)Dist(k)+piDist(k-bi)
当k<bi时,Dist(k)=(1-pi)Dist(k)。
设当前缓存使用状态为j(j<S),缓存在当前负载的情况下,所述的缓存用完的概率表达式如下:
Pj,S=Dist(k≥S-j+B)
其中,j表示当前缓存使用状态,j<S;B表示并行文件系统的聚合带宽;S表示高速缓存系统容量。
在一个具体的实施例中,系统效率定义为:
所述的最大化系统效率的表达式如下:
式中,ni(t)表示t时刻完成的周期数;ri表示应用Ai(Ci,IOi,bi)的启动时间。
所述的最小化应用延迟的表达式如下:
在一个具体的实施例中,步骤S2,根据最大化系统效率与最小化应用延迟设置启发式策略,具体如下:
通过设置启发式策略,生成应用请求的I/O队列。本实施例通过基于优化目标设置的优先级计算方式,得到不同应用请求的优先级,按照优先级对队列中的请求进行重新排序而形成的队列。
在一个具体的实施例中,步骤S3,具体地,将生成的应用请求的I/O请求队列,从第1个请求开始,将当前状态j所得的缓存用完概率Pj,S,应用到每一个请求,即根据概率(Pj,S)i-m(1-Pj,S)选择访问存储系统的请求,形成最终的I/O访问队列,其中,m是队列中请求的数量。
在一个具体的实施例中,步骤S3,根据基于概率的I/O请求队列访问存储系统,具体地,从基于概率的I/O请求队列逐个请求访问存储系统,当访问负载大于并行文件系统的聚合带宽时,将访问负载缓冲到高速缓存系统;当访问负载小于并行文件系统的聚合带宽时,清空高速缓存系统;当高速缓存系统装满时,暂停1个单位时间,清空高速缓存到并行文件系统。
如图4、图5所示,本实施例的所述的随机I/O调度方法(MarkovIO)与现有技术算法BasicIO对比,在带有缓存的高性能计算平台上,本实施例所述的方法在系统效率与应用延迟上的性能更优,如图4所示。由于BasicIO算法未考虑突发缓冲的状态和应用的周期特征,在有拥塞情况下,本实施例的算法MarkovIO更优。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:所述的方法包括步骤如下:
S1:根据平台缓存的已用状态以及基于应用的概率模型得到的当前应用负载情况,计算得到缓存用完的概率;
S2:根据最大化系统效率与最小化应用延迟设置启发式策略,得到应用请求的I/O队列;
S3:将当前缓存状态下的缓存用完概率与应用请求的I/O队列相结合,从而得到基于概率的I/O请求队列;
S4:根据基于概率的I/O请求队列访问存储系统。
2.根据权利要求1所述的基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:在步骤S1之前,先定义系统平台模型,具体在高性能计算平台的计算子系统与存储子系统之间加入一层高速缓存系统,从而构成新型的平台体系结构。
4.根据权利要求3所述的基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:步骤S1,所述的当前应用负载情况等于t时刻进行I/O的所有应用负载之和,即IOinstant=∑i∈A(t)bi,其中,A(t)表示t时刻所有运行的应用;
由于应用的I/O具有概率性,通过启发式迭代方法得到系统的瞬时负载分布Dist(k)=Pr(∑ibiXi=k),其中,Xi为应用Ai(pi,bi)执行I/O的随机变量,具体步骤为:
1)初始化Dist(k)数组,数组长度为∑ibi,Dist(0)=1,Dist(k!=0)=0;
2)对应每一个应用,在每一个k值上,对Dist(k)更新,更新规则如下:
当k≥bi时,Dist(k)=(1-pi)Dist(k)+piDist(k-bi)
当k<bi时,Dist(k)=(1-pi)Dist(k)。
5.根据权利要求4所述的基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:缓存在当前负载的情况下,所述的缓存用完的概率表达式如下:
Pj,S=Dist(k≥S-j+B)
其中,j表示当前缓存使用状态,j<S;B表示并行文件系统的聚合带宽;S表示高速缓存系统容量。
9.根据权利要求8所述的基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:步骤S3,具体地,将生成的应用请求的I/O请求队列,从第1个请求开始,将当前状态j所得的缓存用完概率Pj,S,应用到每一个请求,即根据概率(Pj,S)i-m(1-Pj,S)选择访问存储系统的请求,形成最终的I/O访问队列,其中,m是队列中请求的数量。
10.根据权利要求9所述的基于计算平台缓存状态感知的随机I/O调度方法,其特征在于:步骤S3,根据基于概率的I/O请求队列访问存储系统,具体地,从基于概率的I/O请求队列逐个请求访问存储系统,当访问负载大于并行文件系统的聚合带宽时,将访问负载缓冲到高速缓存系统;当访问负载小于并行文件系统的聚合带宽时,清空高速缓存系统;当高速缓存系统装满时,暂停1个单位时间,清空高速缓存到并行文件系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110345424.1A CN113127196A (zh) | 2021-03-31 | 2021-03-31 | 一种基于计算平台缓存状态感知的随机i/o调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110345424.1A CN113127196A (zh) | 2021-03-31 | 2021-03-31 | 一种基于计算平台缓存状态感知的随机i/o调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113127196A true CN113127196A (zh) | 2021-07-16 |
Family
ID=76774938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110345424.1A Pending CN113127196A (zh) | 2021-03-31 | 2021-03-31 | 一种基于计算平台缓存状态感知的随机i/o调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113127196A (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105338555A (zh) * | 2015-11-20 | 2016-02-17 | 西安交通大学 | 能量收集无线网络中兼顾缓存及电池可持续性的数据传输功率控制方法 |
-
2021
- 2021-03-31 CN CN202110345424.1A patent/CN113127196A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105338555A (zh) * | 2015-11-20 | 2016-02-17 | 西安交通大学 | 能量收集无线网络中兼顾缓存及电池可持续性的数据传输功率控制方法 |
Non-Patent Citations (2)
Title |
---|
ZHA BENBO 等: "I/O Scheduling for Limited-Size Burst-Buffers Deployed High Performance Computing", 《2019 20TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING, APPLICATIONS AND TECHNOLOGIES (PDCAT)》 * |
李勇等: "一种适用于异构存储系统的缓存管理算法", 《计算机研究与发展》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8863140B2 (en) | Method for resource management allocating and freeing credits from and to a resource credit tree | |
US20170177221A1 (en) | Dynamic core allocation for consistent performance in a non-preemptive scheduling environment | |
CN108416465B (zh) | 一种移动云环境下的工作流优化方法 | |
CN103294548B (zh) | 一种基于分布式文件系统的io请求调度方法和系统 | |
CN107770259A (zh) | 基于文件热度和节点负载的副本数量动态调整方法 | |
WO2020019743A1 (zh) | 流量控制方法及装置 | |
CN106775949B (zh) | 感知复合应用特征与网络带宽的虚拟机在线迁移优化方法 | |
WO2022142478A1 (zh) | 一种模型计算方法及系统 | |
CN113382074A (zh) | 一种基于动态反馈的微服务负载均衡优化方法 | |
CN115718644A (zh) | 一种面向云数据中心的计算任务跨区迁移方法及系统 | |
CN114064294B (zh) | 移动边缘计算环境下的动态资源分配方法和系统 | |
CN113923216B (zh) | 一种分布式集群限流系统及方法和分布式集群节点 | |
CN112954012B (zh) | 基于负载的改进模拟退火算法的云任务调度方法 | |
CN110308965B (zh) | 云数据中心的基于规则的启发式虚拟机分配方法及系统 | |
CN113127196A (zh) | 一种基于计算平台缓存状态感知的随机i/o调度方法 | |
CN110308991B (zh) | 一种基于随机任务的数据中心节能优化方法及系统 | |
WO2023000696A1 (zh) | 一种资源分配方法及装置 | |
Li et al. | Real-time data prefetching algorithm based on sequential patternmining in cloud environment | |
CN116932156A (zh) | 一种任务处理方法、装置及系统 | |
CN111158903B (zh) | 一种动态数据的规划方法 | |
Lu et al. | Adaptive consistency guarantees for large-scale replicated services | |
Thu et al. | Replication based on data locality for hadoop distributed file system | |
Lin et al. | A dynamic object allocation and replication algorithm for distributed systems with centralized control | |
CN113377523A (zh) | 一种异构感知的流式图划分方法 | |
Sathya et al. | Replication strategies for data grids |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210716 |