一种混合存储架构HPC系统中应用I/O请求的动态调度方法技术方案

技术编号:22054348 阅读:204 留言:0更新日期:2019-09-07 14:57
本发明专利技术公开了一种混合存储架构HPC系统中应用I/O请求的动态调度方法,属于高性能计算技术领域。本发明专利技术使用随机程度表示应用的访问模式特征,动态调度I/O请求,选择随机程度较大的应用写入对随机程度不敏感的SSD,随机程度较小的应用写入对随机程度敏感的HDD,HDD尽可能处理连续模式的请求,SSD尽可能处理随机模式的请求,从而减轻I/O干扰问题。根据发现的I/O资源竞争时带宽分布相对稳定的现象,提出对于带宽分配的计算方法,可用于预测存储设备的动态负载。结合应用的随机程度和在存储设备中可能获得的带宽两个参数,利用应用访问模式特性和不同存储设备负载特性,合理调度I/O请求,保障应用在运行时间前完成运行,同时提高系统性能,从而保障应用服务质量。

A Dynamic Scheduling Method for Application I/O Requests in HPC System with Hybrid Storage Architecture

【技术实现步骤摘要】
一种混合存储架构HPC系统中应用I/O请求的动态调度方法
本专利技术属于高性能计算
,更具体地,涉及一种混合存储架构HPC系统中应用I/O请求的动态调度方法。
技术介绍
多租户多负载场景在云HPC(HighPerformanceComputing,高性能计算)系统中越来越常见,这意味着系统中的存储资源在越来越多的不同用户之间进行共享。所以,在物理资源有限的情况下,为应用和租户提供服务质量保障至关重要。服务质量保障指的是保证应用的性能能够维持在一个协定的合理阈值范围内,无论其它应用的访问请求的到达速率、请求的随机程度与顺序性和请求的读写比例等如何变化,都不会影响到另外一个应用的服务性能。计算的也规模不断扩大,需要越来越多的存储资源,同时有限的存储资源需要服务于更多的应用。当多个应用同时访问存储服务时,它们将竞争I/O资源,这将导致I/O聚合带宽严重下降。这些有着不同访问模式的I/O请求混合在一起,而当前主要的存储介质——机械硬盘(HardDiskDrive,HDD)可以有效地处理连续模式的请求,却在处理随机模式的请求时,会因为频繁的定位导致严重的磁头寻道开销,导致I/O干扰。为了解决随机请求带来的严重性能下降问题,许多解决方案被提出,其中使用新型存储介质成为较好的选择。由于固态硬盘(SolidStateDrive,SSD)性能优异且对随机请求不敏感的特性,并且作为常驻存储,每GB造价远低于DRAM,因此SSD经常作为最常用的高速存储设备。而在HPC系统中,由于有着极大的存储需求,而SSD的价格相对较高,所以用SSD完全取代HDD依然是不现实的。因此SSD和HDD的混合存储架构就成了一个较好的选择。然而,在目前的混合存储架构中,对于应用I/O的调度依然很原始,多应用竞争I/O资源依然会发生I/O干扰,导致应用服务质量得不到保障、存储系统性能低。
技术实现思路
针对现有技术的缺陷,本专利技术的目的在于解决现有技术混合存储架构的I/O调度应用服务质量得不到保障、存储系统性能低的技术问题。为实现上述目的,第一方面,本专利技术实施例提供了一种混合存储架构HPC系统中应用I/O请求的动态调度方法,该方法包括以下步骤:S1.对到达HPC系统的文件系统层的所有I/O请求进行分组,来自同一应用的请求被分到同一组;S2.判断N=1是否成立,若是,将该应用对应的请求直接写入HDD;否则,判断1<N≤N0是否成立,若是,计算每个应用的随机程度并按照随机程度排序,将随机程度最小的应用对应的请求写入HDD,其他的应用对应的请求写入SSD;否则,计算每个应用的随机程度并按照随机程度排序,将随机程度较大的M个应用对应的请求写入SSD,剩余的N-M个应用对应的请求写入HDD;S3.如果有新到来的应用加入运行,计算并比较该应用的Bi-S和Bi-HD,若Bi-SSD≤Bi-HDD,将该应用对应的请求写入HDD,若Bi-SSD>Bi-HDD,进一步比较该应用和运行在HDD中的随机程度最大的应用,将两者中随机程度较大者对应的请求写入SSD,将两者中随机程度较小者对应的请求写入HDD;其中,Bi-SSD、Bi-HDD分别为应用运行在SSD可能分配获得的带宽、应用运行在HDD可能分配获得的带宽,M为Bi-SSD开始小于Bi-HDD的临界值,N为并行的应用数量,N0为并行的应用数量预设阈值。具体地,应用的随机程度的计算方法如下:对I/O请求的偏移进行排序;如果I/O请求偏移排序后两个请求之间的距离等于请求大小,认为这两个请求是连续的,随机因子则取值为0,否则,认为这两个请求是随机请求,随机因子则取值为1;用以下公式计算随机程度R:其中,R_Factor为随机因子,K为该应用对应的所有请求中的总距离数。具体地,并行的应用数量预设阈值N0取值范围为[3,10]。具体地,并发应用可能分配获得的带宽Bi计算公式如下:其中,Bi表示第i个应用运行在存储设备可能分配获得的带宽,B表示存储设备下的聚合带宽,Pi表示第i个应用请求大小的比例系数,Qi表示第i个应用请求大小,n表示并行应用数量。具体地,HDD下的聚合带宽BHDD计算公式如下:其中,Bpeak为无I/O干扰情况下HDD的峰值带宽,为运行在HDD中应用随机程度R的均值。具体地,SSD下的聚合带宽BSSD为固态硬盘的峰值带宽。第二方面,本专利技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面所述的混合存储架构HPC系统中应用I/O请求的动态调度方法。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效果:1.本专利技术使用随机程度表示应用的访问模式特征,便于结合存储设备特性,动态调度I/O请求。选择随机程度较大的应用写入对随机程度不敏感的SSD,随机程度较小的应用写入对随机程度敏感的HDD,HDD尽可能处理连续模式的请求,SSD尽可能处理随机模式的请求,从而减轻了I/O干扰问题。2.本专利技术根据发现的I/O资源竞争时带宽分布相对稳定的现象,提出对于带宽分配的计算方法,可用于预测存储设备的动态负载,以便于动态感知负载,有助于选择合适的存储设备调度I/O请求。3.本专利技术结合应用的随机程度和在存储设备中可能获得的带宽两个参数,利用应用访问模式特性和不同存储设备负载特性,合理调度I/O请求,保障应用在运行时间前完成运行,同时提高系统性能,从而保障应用服务质量。附图说明图1为本专利技术实施例提供的一种混合存储架构HPC系统中应用I/O请求的动态调度方法流程图;图2为本专利技术实施例一提供的动态调度示意图;图3为本专利技术实施例二提供的动态调度示意图;图4为本专利技术实施例三提供的动态调度示意图;图5(a)为本专利技术实施例提供的IOR1的实验结果示意图;图5(b)为本专利技术实施例提供的IOR2的实验结果示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,一种混合存储架构HPC系统中应用I/O请求的动态调度方法,该方法包括以下步骤:S1.对到达HPC系统的文件系统层的所有I/O请求进行分组,来自同一应用的请求被分到同一组;S2.判断N=1是否成立,若是,将该应用对应的请求直接写入HDD;否则,判断1<N≤N0是否成立,若是,计算每个应用的随机程度并按照随机程度排序,将随机程度最小的应用对应的请求写入HDD,其他的应用对应的请求写入SSD;否则,计算每个应用的随机程度并按照随机程度排序,将随机程度较大的M个应用对应的请求写入SSD,剩余的N-M个应用对应的请求写入HDD;S3.如果有新到来的应用加入运行,计算并比较该应用的Bi-SSD和Bi-HD,若Bi-SSD≤Bi-HD,将该应用对应的请求写入HDD,若Bi-SSD>Bi-HDD,进一步比较该应用和运行在HDD中的随机程度最大的应用,将两者中随机程度较大者对应的请求写入SSD,将两者中随机程度较小者对应的请求写入HDD;其中,Bi-SSD、Bi-HDD分别为应用运行在SSD可能分配获得的带宽、应用运行在HDD可能分配获得的带宽,M为Bi-SSD开始本文档来自技高网
...

【技术保护点】
1.一种混合存储架构HPC系统中应用I/O请求的动态调度方法,其特征在于,该方法包括以下步骤:S1.对到达HPC系统的文件系统层的所有I/O请求进行分组,来自同一应用的请求被分到同一组;S2.判断N=1是否成立,若是,将该应用对应的请求直接写入HDD;否则,判断1<N≤N0是否成立,若是,计算每个应用的随机程度并按照随机程度排序,将随机程度最小的应用对应的请求写入HDD,其他的应用对应的请求写入SSD;否则,计算每个应用的随机程度并按照随机程度排序,将随机程度较大的M个应用对应的请求写入SSD,剩余的N‑M个应用对应的请求写入HDD;S3.如果有新到来的应用加入运行,计算并比较该应用的Bi‑SSD和Bi‑HDD,若Bi‑SSD≤Bi‑HDD,将该应用对应的请求写入HDD,若Bi‑SSD>Bi‑HDD,进一步比较该应用和运行在HDD中的随机程度最大的应用,将两者中随机程度较大者对应的请求写入SSD,将两者中随机程度较小者对应的请求写入HDD;其中,Bi‑SSD、Bi‑HDD分别为应用运行在SSD可能分配获得的带宽、应用运行在HDD可能分配获得的带宽,M为Bi‑SSD开始小于Bi‑HDD的临界值,N为并行的应用数量,N0为并行的应用数量预设阈值。...

【技术特征摘要】
1.一种混合存储架构HPC系统中应用I/O请求的动态调度方法,其特征在于,该方法包括以下步骤:S1.对到达HPC系统的文件系统层的所有I/O请求进行分组,来自同一应用的请求被分到同一组;S2.判断N=1是否成立,若是,将该应用对应的请求直接写入HDD;否则,判断1<N≤N0是否成立,若是,计算每个应用的随机程度并按照随机程度排序,将随机程度最小的应用对应的请求写入HDD,其他的应用对应的请求写入SSD;否则,计算每个应用的随机程度并按照随机程度排序,将随机程度较大的M个应用对应的请求写入SSD,剩余的N-M个应用对应的请求写入HDD;S3.如果有新到来的应用加入运行,计算并比较该应用的Bi-SSD和Bi-HDD,若Bi-SSD≤Bi-HDD,将该应用对应的请求写入HDD,若Bi-SSD>Bi-HDD,进一步比较该应用和运行在HDD中的随机程度最大的应用,将两者中随机程度较大者对应的请求写入SSD,将两者中随机程度较小者对应的请求写入HDD;其中,Bi-SSD、Bi-HDD分别为应用运行在SSD可能分配获得的带宽、应用运行在HDD可能分配获得的带宽,M为Bi-SSD开始小于Bi-HDD的临界值,N为并行的应用数量,N0为并行的应用数量预设阈值。2.如权利要求1所述的动态调度方法,其特征在于,应用的随机程度的计算方...

【专利技术属性】
技术研发人员:石宣化金海杨莹姜焰花昱圣
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1