用于管理高速缓存的方法和设备技术

技术编号:17615269 阅读:62 留言:0更新日期:2018-04-04 06:34
本公开的各实施例总体上涉及用于管理高速缓存的方法和设备。具体地,该方法可以包括响应于接收到向高速缓存写入数据的请求,确定将要写入的数据量。该方法还可以包括响应于数据量超过阈值量,跳过向高速缓存写入数据,以及将数据写入高速缓存的下级存储中。还提供了对应的系统、装置和计算机程序产品。

Methods and devices for managing caching

The various embodiments of the present disclosure are generally concerned with methods and devices for managing the cache. In particular, the method may include the amount of data to be written to be written in response to the request to write data to the cache. The method can also include jumping to write data to the cache, and writing data to the lower level storage of the cache in response to the amount of data that exceeds the threshold value. The corresponding systems, devices and computer program products are also provided.

【技术实现步骤摘要】
用于管理高速缓存的方法和设备
本公开的各实施例总体上涉及计算机领域,具体地涉及一种用于管理高速缓存的方法和设备。
技术介绍
在计算机技术发展过程中,主存储器存取速度一直比中央处理单元CPU处理速度慢得多,使得CPU的高速处理能力不能被充分发挥,从而整个计算机系统的工作效率受到影响。为了缓和CPU和主存储器之间速度不匹配的矛盾,常用的方法之一是在存储层次上采用高速缓存存储器。高速缓存存储器是存在于主存储器与CPU之间的一级存储器,容量比较小但存取速度比主存储器高得多,接近于CPU的处理速度。然而,在目前的实际应用中,虽然在主存储器与CPU之间放置了高速缓存存储器,但是在对高速缓存存储器进行大量I/O操作时,仍然可能出现系统性能严重下降的问题。例如,在对高速缓存存储器进行大量I/O写操作时,通常是将所有数据都写入高速缓存存储器,而不考虑写入的数据量的大小。当向高速缓存存储器写入的数据量较大(例如,大于250K)时,由于高速缓存存储器容量比较小,因此很容易被写满,从而导致整个系统性能严重下降。
技术实现思路
本公开的各实施例提供了一种用于管理高速缓存的方法、系统和计算机程序产品。根据本公开的第一方面,提供了一种用于管理高速缓存的方法。该方法包括:响应于接收到向高速缓存写入数据的请求,确定将要写入的数据量。该方法还可以包括响应于该数据量超过阈值量,跳过向高速缓存写入数据;以及将该数据写入高速缓存的下级存储中。在一个示例性实施例中,其中跳过向高速缓存写入数据可以包括:确定高速缓存和下级存储中至少一个的使用状态,以及响应于该使用状态满足预定条件,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定该高速缓存的使用比率;并且其中跳过向高速缓存写入数据可以包括响应于使用比率超过阈值,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定高速缓存中存储的文件系统的快照的状态;并且其中跳过向高速缓存写入数据可以包括响应于在向高速缓存写入数据之前高速缓存中不存在文件系统未完成的快照,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定高速缓存的使用比率;并且其中跳过向高速缓存写入数据可以包括响应于使用比率超过阈值,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定高速缓存中存储的文件系统的快照的状态;并且其中跳过向高速缓存写入数据可以包括响应于在向高速缓存写入数据之前高速缓存中不存在文件系统未完成的快照,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定高速缓存中地址的使用状态;并且其中跳过向高速缓存写入数据可以包括响应于向高速缓存写入数据的目的地地址与高速缓存中已使用的地址没有重叠,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定高速缓存的使用状态可以包括确定通用块设备文件系统的使用比率;并且其中跳过向高速缓存写入数据可以包括响应于使用比率小于阈值,跳过向高速缓存写入数据。在一个示例性实施例中,其中确定下级存储的使用状态可以包括确定多核高速缓存的使用比率;并且其中跳过向高速缓存写入数据可以包括响应于使用比率小于阈值,跳过向高速缓存写入数据。根据本公开的第二方面,提供了一种用于管理高速缓存的系统。该系统包括:处理器和存储器。存储器被耦合到处理器并且存储有供处理器执行的指令。指令当由处理器执行时,可以使得系统:响应于接收到向高速缓存写入数据的请求,确定将要写入的数据量;响应于数据量超过阈值量,跳过向高速缓存写入数据;以及将数据写入高速缓存的下级存储中。根据本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令。机器可执行指令在被执行时使得机器执行根据本公开的第一方面所描述的方法的任意步骤。提供
技术实现思路
部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。
技术实现思路
部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。附图说明通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。图1示出了根据本公开的实施例的用于管理高速缓存的系统100的框图;图2示出了根据本公开的实施例的用于管理高速缓存的示例方法200的流程图;图3示出了根据本公开的实施例的用于管理高速缓存的示例300;图4示出了根据本公开的实施例的用于管理高速缓存的装置400的框图;以及图5示出了可以用来实施本公开内容的实施例的示例设备500的示意性框图。具体实施例下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。如以上所描述的,在对高速缓存存储器进行大量I/O操作时,可能出现诸如系统性能严重下降之类的一系列问题。为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开的示例实施例提出了一种用于管理高速缓存的方法和设备。根据本公开,通过在对高速缓存存储器进行大量I/O操作时,判断将要写入的数据量是否超过阈值量,或者附加地或备选地在确定将要写入的数据量超过阈值量的情况下,进一步判断其他预定的条件是否得到满足,并且基于判断的结果来确定是否跳过对高速缓存的写入,为高速缓存提供了一种管理方案,从而有效地提升了系统性能。图1示出了根据本公开的实施例的用于管理高速缓存的系统100的框图。应当理解,仅出于示例性的目的描述系统100的结构和功能而不是暗示对于本公开的范围的任何限制。本公开的实施例可以被体现在不同的结构和/或功能中。如图1所示,系统100可以包括映射逻辑单元(MLU)110、通用块设备文件系统的应用程序接口(CBFS-API)120、通用文件系统(CFS)130、统一文件系统(UFS64)140以及多核高速缓存(MCC)150。另外,通用文件系统130还可以包括文件数据高速缓存(FDC)135,统一文件系统140还可以包括数据记录(DATALOG)145,以及多核高速缓存150还可以包括页面1551、1552…155N-1、155N(统称为“页面”155),其中N为自然数。而且,映射逻辑单元110可以与通用块设备文件系统的应用程序接口120和多核高速缓存150通信,通用块设备文件系统的应用程序接口120可以与通用文件系统130通信,通用文件系统130可以与统一文件系统140通信,以及统一文件系统140中的数据记录145可以与多核高速缓存1本文档来自技高网
...
用于管理高速缓存的方法和设备

【技术保护点】
一种用于管理高速缓存的方法,包括:响应于接收到向高速缓存写入数据的请求,确定将要写入的数据量;响应于所述数据量超过阈值量,跳过向所述高速缓存写入所述数据;以及将所述数据写入所述高速缓存的下级存储中。

【技术特征摘要】
1.一种用于管理高速缓存的方法,包括:响应于接收到向高速缓存写入数据的请求,确定将要写入的数据量;响应于所述数据量超过阈值量,跳过向所述高速缓存写入所述数据;以及将所述数据写入所述高速缓存的下级存储中。2.根据权利要求1所述的方法,其中跳过向所述高速缓存写入所述数据包括:确定所述高速缓存和所述下级存储中至少一个的使用状态,以及响应于所述使用状态满足预定条件,跳过向所述高速缓存写入所述数据。3.根据权利要求2所述的方法,其中确定所述高速缓存的使用状态包括确定所述高速缓存的使用比率;并且其中跳过向所述高速缓存写入所述数据包括响应于所述使用比率超过阈值,跳过向所述高速缓存写入所述数据。4.根据权利要求2所述的方法,其中确定所述高速缓存的使用状态包括确定所述高速缓存中存储的文件系统的快照的状态;并且其中跳过向所述高速缓存写入所述数据包括响应于在向所述高速缓存写入所述数据之前所述高速缓存中不存在所述文件系统未完成的快照,跳过向所述高速缓存写入所述数据。5.根据权利要求2所述的方法,其中确定所述高速缓存的使用状态包括确定所述高速缓存中地址的使用状态;并且其中跳过向所述高速缓存写入所述数据包括响应于向所述高速缓存写入所述数据的目的地地址与所述高速缓存中已使用的地址没有重叠,跳过向所述高速缓存写入所述数据。6.根据权利要求2所述的方法,其中确定所述高速缓存的使用状态包括确定通用块设备文件系统的使用比率;并且其中跳过向所述高速缓存写入所述数据包括响应于所述使用比率小于阈值,跳过向所述高速缓存写入所述数据。7.根据权利要求2所述的方法,其中确定所述下级存储的使用状态包括确定多核高速缓存的使用比率;并且其中跳过向所述高速缓存写入所述数据包括响应于所述使用比率小于阈值,跳过向所述高速缓存写入所述数据。8.一种用于管理高速缓存的系统,包括:处理器;存储器,所述存储器被耦合到所述处理器并且存储有供所述处理器执行的指令,所述指令当由所述处理器执行时,使得所述系统...

【专利技术属性】
技术研发人员:张明王登宇宫晨韩耕刘剑张雷虎
申请(专利权)人:伊姆西IP控股有限责任公司
类型:发明
国别省市:美国,US

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

1