【技术实现步骤摘要】
本专利技术涉及计算机存储器
,具体是一种提升IO并行性和减少小IO延迟的方法。
技术介绍
目前随着高性能计算与应用服务的发展,更多的高性能存储区域网络开始利用高速网络与专有协议来构建,这主要包括基于以太网与iSCSI协议的IP-SAN、基于光纤通道和FCP协议的FC-SAN,以及基于以太网和光纤通道的新型FCoE存储区域网络。在FC-SAN和FCoE存储区域网络中,将目标端系统的存储设备通过存储网络协议挂载到发起端系统中,作为一个块设备进行访问,随着存储网络技术的发展,尤其是万兆网络的推出,发起端系统访问目标端设备的带宽也不断提升,而发起端的IO请求的并行处理能力却未得到提 升。现在的服务器通常都搭载了多核处理器,发起端系统挂载的目标端块设备只有一个请求队列,所有的IO请求都需要互斥的进入请求队列,完成IO合并、IO调度、请求处理等工作,对于IO次数繁重的存储环境,单个请求队列会成为请求处理的瓶颈,不能高效的利用多核系统的并行处理能力。在存储区域网络中,小IO请求(一般指小于4KB的请求)通常是实时性要求较高的事务处理请求,而大IO请求通常是数据传输请求。 ...
【技术保护点】
一种利用多请队列提高IO并行性和减少小IO延迟的方法,包括建立多个请求队列的步骤和利用选择策略使IO请求选择相应的请求队列进行处理步骤,从而实现IO请求并行运行,其特征在于,所述选择策略包括:A.将每个进程与一个请求队列绑定,以使多个进程上的IO请求平均分配到多个请求队列上处理;B.将每个CPU与一个请求队列绑定,以使多个CPU上的IO请求平均的分配到多个请求队列上处理。
【技术特征摘要】
1.一种利用多请队列提高IO并行性和减少小IO延迟的方法,包括建立多个请求队列的步骤和利用选择策略使IO请求选择相应的请求队列进行处理步骤,从而实现IO请求并行运行,其特征在于, 所述选择策略包括 A.将每个进程与一个请求队列绑定,以使多个进程上的IO请求平均分配到多个请求队列上处理; B.将每个CPU与一个请求队列绑定,以使多个CPU上的IO请求平均的分配到多个请求队列上处理。2.根据权利要求I所述的利用多请队列提高IO并行性和减少小IO延迟的方法,其特征在于,先将所述IO请求中分为小IO请求和大IO请求,再分别利用选择策略对所述小IO请求和大IO请求进行处理,使各CPU或各进程同时选择各自相应的请求队列并行处理。3.根据权利要求2所述的利用多请队列提高IO并行性和减少小IO延迟的方法,其特征在于,所述请求队列中,用于处理小IO请求的请求队列数大于处理大IO请求的请求队列数。4.根据权利要求2或3所述的利用多请队列提高IO并行性和减少小IO延迟的方法,其特征在于,所述小IO请求指小于4KB的请求。5.根据权利要求1-4之一所述的利用多请队列提高IO并行性和减少小IO延迟的方法,其特征在于,所述进程与请求队列的绑定关系通过下式确定Q=pid%nr_q 式中,Pid为进程描述符ID,nr_q为请求队列的个数...
【专利技术属性】
技术研发人员:刘景宁,童薇,冯丹,吴龙飞,林超,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。