基于IO延迟时间分布优化中断处理任务的方法技术

技术编号:8366751 阅读:484 留言:0更新日期:2013-02-28 05:08
提供了基于IO延迟时间分布优化中断处理任务的方法。计算机系统包括第一处理单元和第二处理单元,所述计算机系统同存储设备相耦合;所述方法包括:接收用于访问所述存储设备的第一IO请求;记录所述第一IO请求的开始时间;响应于接收到来自所述存储设备的指示所述第一IO请求处理完成的中断请求,记录所述第一IO请求的结束时间;计算所述第一IO请求的结束时间与所述第一IO请求的开始时间的第一时间差;计算一预定时间期间内所述第一时间差的分布;以及基于所述第一时间差的分布,优化与所述存储设备的IO请求相关联的中断处理任务的执行。

【技术实现步骤摘要】

本专利技术涉及固态存储设备(Solid Storage Device, SSD),更具体地,本专利技术涉及存储设备向主机发出的中断。
技术介绍
同机械式硬盘相类似,固态存储设备(SSD)也是用于计算机系统的大容量、非易失性存储设备。固态存储设备一般以闪存(Flash)作为存储介质。高性能的固态存储设备被用于高性能计算机。高性能计算机通常具有多个中央处理器(CPU, Centrol Process Unit),而每个CPU可包括多个CPU核。在现代操作系统中,几乎每一个中断处理操作都被分成了两部分,即中断服务程序(ISR)和下半部分处理程序(Bottom Half Handler);或者说中断处理的上半部分(Top Half)和下半部分(Bottom Half);在一些场合中,也被称为第一级中断处理程序(FLIH, First-Level Interrupt Handler)和第二级中断处理程序(SLIH, Second-LevelInterrupt Handlers)。两者之间的区别是在中断处理的上半部分,中断是被禁止的,精确地说是至少有一个中断(当前中断)在一个CPU上(当前CPU)是被禁止的,在某些情况下,可能当前CPU的全部中断都被禁止;而在中断处理的下半部分,系统中的中断都是允许的,新的中断可以随时抢占下半部分处理程序。通过将中断处理划分为两部分,并且让上半部分处理函数只做最少最快的工作一例如将数据从设备缓冲区拷贝到内存,而将后续的更耗时间的工作留给下半部分处理程序去执行,有效地减少了中断阻塞的时间,从而提高了系统的中断处理效率。在美国专利申请US2011/0087814A1中,提供了通过中断亲和性机制来增强多处理器系统中的10 (Input Output)性能的方案。参看图I,主机100包括CPU 101、102、103和104,应用程序111、112、113和114分别运行在各自的CPU上。高速缓存121、122、123和124分别同CPU 101、102、103和104相耦合,用于存储分别用于应用程序111、112、113和114的指令和数据。而具有较大容量的存储器131、132、133和134分别耦合到高速缓存121、122、123 和 124。主机总线适配器(HBA, Host Bus Adapter)150 通过 10 APICCAdvancedProgrammable Interr upt Controller,高级可编程中断控制器)集线器140稱合到主机100,并配置为同存储域网络(SAN, Storage Area, Network) 160通信。SAN 160连接到多个诸如硬盘的计算机存储设备170。中断亲和性机制意味着,当1/0 APIC集线器140接收到来自HBA 150的中断时,确定由主机100的多个CPU中的哪一个来处理中断。例如,记录发出10请求的CPU标识符,当接收到对应于该10请求的中断时,基于记录的CPU标识符来选择处理中断的CPU。一些计算机具有 NUMA (Non-Uniform Memory Access)或 NUIO (Non-UniformInput Output)结构。在美国专利申请US2005/0060460A1中提供了在NUMA系统中为多个节点中的10设备指派中断的方案。参看图2,NUMA系统200包括通过互连网络彼此耦合的节点201、211、221和231。每个节点201、211、221和231可包括处理器和存储器。给定节点的存储器相对于该节点的处理器是本地的,而其他节点的存储器相对于该处理器是远程的。系统200包括IO设备202、212和242,以及用于IO设备202、212和242的中断服务例程(ISR, Interrupt Service Routine) 203、213 和 223。系统 200 还包括中断分配软件222,用于将中断服务例程203、213和223分配给IO设备202、212和242。中断服务例程的分配可基于下列因素设备所连接的节点,用于设备的ISR所位于的节点,以及节点的处理器。在 www. acpi. info/D0ffNL0ADS/ACPIspec50. pdf 可获得的 “Advanced Configurationand Power Interface Specification”(2011 年 12 月 6 日)提供了获取 NUMA 系统的各个NUMA域信息。然而,高性能固态存储设备的10处理能力显著提高,10请求的数量和数据量的增力口,给CPU的处理造成了负担。因而,需要进一步优化对中断请求的处理。
技术实现思路
根据本专利技术的第一方面,提供了一种用于处理计算机系统中的存储设备的中断请 求的方法,所述计算机系统包括多个处理单元,所述存储设备通过PCIE总线耦合到所述多个处理单元中的一个,所述方法包括获取所述存储设备的标识符;依据所述存储设备的标识符,确定所述存储设备所耦合的第一处理单元;将与所述存储设备相关联的中断处理任务的上半部分设置为在所述第一处理单元上执行;将所述中断处理任务的下半部分设置为在第二处理单元上执行;其中所述第一处理单元与所述第二处理单元共享高速缓冲存储器。根据本专利技术的第二方面,提供了一种用于处理计算机系统中的存储设备的中断请求的方法,所述计算机系统包括多个处理器插槽,每个处理器插槽上布置有多核处理器,所述多核处理器具有多个处理器核,所述存储设备通过PCIE总线耦合到所述多个处理器插槽中的一个,所述方法包括获取所述存储设备的标识符;依据所述存储设备的标识符,确定所述存储设备所耦合的第一处理器插槽;将与所述存储设备相关联的中断处理任务的上半部分设置为在布置于所述第一处理器插槽上的多核处理器的第一处理器核上执行;将所述中断处理任务的下半部分设置为在布置于所述第一处理器插槽上的多核处理器的第二处理器核上执行;其中所述第一处理器核与所述第二处理器核共享高速缓冲存储器。根据本专利技术的第二方面提供的方法,进一步包括,显示所述存储设备与所述第一处理器插槽和/或所述第一处理器核的耦合关系。根据本专利技术的第一方面或第二方面提供的方法,进一步包括,显示所述存储设备与所述第一处理单元的耦合关系。根据本专利技术的第二方面所提供的方法,还包括将访问所述存储设备的应用程序设置为在布置于所述第一处理器插槽上的多核处理器的第三处理器核上执行,所述第一处理器核、所述第二处理器核以及所述第三处理器核共享高速缓冲存储器。根据本专利技术的第一方面或第二方面提供的方法,还包括获取并显示所述PCIE总线的通道(Lane)数量。根据本专利技术的第一方面或第二方面提供的方法,还包括获取并显示所述存储设备的具有第一延迟时间的IO访问的数量,以及所述存储设备的具有第二延迟时间的IO访问的数量,所述第一延迟时间不同于所述第二延迟时间。根据本专利技术的第一方面或第二方面提供的方法,还包括获取并显示所述存储设备的具有第一延迟时间范围的IO访问的数量,以及所述存储设备的具有第二延迟时间范围的IO访问的数量,所述第一延迟时间范围不同于所述第二延迟时间范围。根据本专利技术的第一方面提供的方法,将访问所述存储设备的应用程序设置为在第二处理器上执行。根据本专利技术的第一方面提供的本文档来自技高网
...

【技术保护点】
一种用于处理计算机系统中的存储设备的中断请求的方法,所述计算机系统包括第一处理单元和第二处理单元,所述计算机系统同存储设备相耦合;所述方法包括:接收用于访问所述存储设备的第一IO请求;记录所述第一IO请求的开始时间;响应于接收到来自所述存储设备的指示所述第一IO请求处理完成的中断请求,记录所述第一IO请求的结束时间;计算所述第一IO请求的结束时间与所述第一IO请求的开始时间的第一时间差;计算一预定时间期间内所述第一时间差的分布;以及基于所述第一时间差的分布,优化与所述存储设备的IO请求相关联的中断处理任务的执行。

【技术特征摘要】

【专利技术属性】
技术研发人员:唐志波路向峰
申请(专利权)人:北京忆恒创源科技有限公司
类型:发明
国别省市:

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

1