CN113326214B - 一种页缓存管理方法、计算设备及可读存储介质 - Google Patents

一种页缓存管理方法、计算设备及可读存储介质 Download PDF

Info

Publication number
CN113326214B
CN113326214B CN202110666166.7A CN202110666166A CN113326214B CN 113326214 B CN113326214 B CN 113326214B CN 202110666166 A CN202110666166 A CN 202110666166A CN 113326214 B CN113326214 B CN 113326214B
Authority
CN
China
Prior art keywords
file
page
read
information
hit rate
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.)
Active
Application number
CN202110666166.7A
Other languages
English (en)
Other versions
CN113326214A (zh
Inventor
王晓华
孟杰
卢彦
薛皓琳
吴昆鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Uniontech Software Technology Co Ltd
Original Assignee
Uniontech Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Uniontech Software Technology Co Ltd filed Critical Uniontech Software Technology Co Ltd
Priority to CN202110666166.7A priority Critical patent/CN113326214B/zh
Publication of CN113326214A publication Critical patent/CN113326214A/zh
Application granted granted Critical
Publication of CN113326214B publication Critical patent/CN113326214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种页缓存管理方法,在计算设备中执行,该方法包括:获取任一业务场景下的页缓存信息和进程信息;定时统计页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前页缓存管理策略进行优化;当需要优化时,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及出现问题的阶段;根据统计时间段内的进程信息、页缓存信息、存在问题的文件及出现问题的阶段,确定新的页缓存管理策略;将页缓存的配置文件中存储的页缓存管理策略替换为新的页缓存管理策略。本发明一并公开了相应的计算设备及可读存储介质。本发明的页缓存管理方法提高了页缓存的利用率。

Description

一种页缓存管理方法、计算设备及可读存储介质
技术领域
本发明涉及计算机领域,尤其涉及一种页缓存管理方法、计算设备及可读存储介质。
背景技术
相比于CPU和内存,磁盘属于低速设备。因此,对于IO消耗型进程来讲,大部分的CPU时间都是消耗在等待完成磁盘读写的请求上。基于此,操作系统提供了页缓存机制,以更高速的内存作为磁盘缓存来加速磁盘的访问。由于局部性原理的存在,页缓存在大部分场景下都能有一个较高的命中率,大幅提升了磁盘的吞吐量,有效减少了等待完成磁盘读写请求的时间。
然而,目前的页缓存管理机制存在两方面问题:1)制定页缓存预读和回收策略时,现有技术基于的信息较为单一。2)对于任一业务场景,现有技术都是预先设定好其使用的页缓存预读和回收策略,不能实时调整。因此,目前的页缓存管理机制有待完善。
发明内容
为此,本发明提供了一种页缓存管理方法、计算设备及可读存储介质,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种页缓存管理方法,在计算设备中执行,该方法包括:获取任一业务场景下的页缓存信息和进程信息,页缓存信息包括各文件的各文件块在各个时刻所包含的缓存页数量、在读操作下的命中次数和未命中次数、在写操作下的命中次数和未命中次数以及各文件的各文件块在某回收时刻回收失败的原因;定时统计页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化;当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段;根据统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数,确定新的页缓存管理策略;将页缓存的配置文件中存储的页缓存管理策略删除,并将新的页缓存管理策略存储在页缓存的配置文件中。
可选地,在根据本发明的页缓存管理方法中,进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置。
可选地,在根据本发明的页缓存管理方法中,页缓存信息还包括各文件的各缓存页在各个生命周期内在读操作下的总命中次数和未命中次数、在写操作下的总命中次数和未命中次数,以及各文件的各缓存页在各个生命周期内的读时序信息和写时序信息,缓存页的读时序信息由缓存页在读操作下命中的各个时刻顺序组成,缓存页的写时序信息由缓存页在写操作下命中的各个时刻顺序组成。
可选地,在根据本发明的页缓存管理方法中,在确定新的页缓存管理策略时,还根据存在问题的文件的各个缓存页在统计时间段的各个生命周期内的总的读命中率、总的写命中率、读时序信息和写时序信息来确定。
可选地,在根据本发明的页缓存管理方法中,在获取任一业务场景下的页缓存信息的步骤中,利用计算设备中的页缓存信息获取模块来获取任一业务场景下的页缓存信息。
可选地,在根据本发明的页缓存管理方法中,获取任一业务场景下的页缓存信息的步骤,包括:当监听到添加缓存页信息时,更新添加的缓存页所属文件块包含的缓存页数量;当监听到回收缓存页信息时,更新回收的缓存页所属文件块包含的缓存页数量。
可选地,在根据本发明的页缓存管理方法中,获取任一业务场景下的页缓存信息的步骤,包括:当监听到读文件信息时,更新所读文件的各文件块在读操作下的命中次数和未命中次数;当监听到写文件信息时,更新所写文件的各文件块在写操作下的命中次数和未命中次数。
可选地,在根据本发明的页缓存管理方法中,确定是否需要对当前的页缓存管理策略进行优化的步骤,包括:将各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率分别与第一预设值和第二预设值进行比较;当存在任一文件块在统计时间段内最后时刻的读命中率小于第一预设值或写命中率小于第二预设值时,确定需要对当前的页缓存管理策略进行优化。
可选地,在根据本发明的页缓存管理方法中,确定存在问题的文件及出现问题的阶段的步骤,包括:将各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率分别与第三预设值和第四预设值进行比较;当某一文件块在统计时间段内的某个时刻的读命中率小于第三预设值时,确定该文件块所属的文件在读阶段存在问题;当某一文件块在统计时间段内的某个时刻的写命中率小于第四预设值时,确定该文件块所属的文件在写阶段存在问题。
可选地,在根据本发明的页缓存管理方法中,确定新的页缓存管理策略的步骤,包括:基于预设的页缓存规则文件,对统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数进行分析,确定新的页缓存管理策略,预设的页缓存规则文件包含各个页缓存管理策略所对应的条件信息。
可选地,在根据本发明的页缓存管理方法中,新的页缓存管理策略包括,在满足第一预设条件时回收文件的指定区域、在满足第二预设条件时预读文件的指定区域、在满足第三预设条件时调整预读文件的大小。
可选地,在根据本发明的页缓存管理方法中,业务场景为存储服务器或数据库。
根据本发明的又一个方面,提供一种页缓存管理方法,在计算设备中执行,该方法包括:获取任一业务场景下的页缓存信息和进程信息,页缓存信息包括各文件的各文件块在各个时刻所包含的缓存页数量、在读操作下的命中次数和未命中次数、在写操作下的命中次数和未命中次数以及各文件的各文件块在某回收时刻回收失败的原因,进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置;将获取的页缓存信息和进程信息定时输出到日志文件,以便制定策略端根据页缓存信息和进程信息制定新的页缓存管理策略;获取新的页缓存管理策略,并将页缓存的配置文件中存储的页缓存管理策略删除,将新的页缓存管理策略存储在页缓存的配置文件中。
根据本发明的又一个方面,提供一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行根据本发明的页缓存管理方法的指令。
根据本发明的又一个方面,提供一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得计算设备执行根据本发明的页缓存管理方法。
根据本发明的页缓存管理方法,首先获取任一业务场景下的页缓存信息和进程信息。然后,定时统计页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化。当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段。接着,根据统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数,确定新的页缓存管理策略。最后,将页缓存的配置文件中存储的页缓存管理策略删除,并将新的页缓存管理策略存储在页缓存的配置文件中。可见,本发明的页缓存管理方法能够在系统的运行过程中实时获取页缓存信息,并且还能够基于页缓存信息中的各个数据来实时调整页缓存管理策略,从而可以保证系统使用的始终都是与当前业务场景最为匹配的页缓存管理策略,提高了页缓存的利用率。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的结构框图;
图2示出了根据本发明一个实施例的页缓存管理方法200的流程图;
图3示出了根据本发明一个实施例的页缓存管理方法300的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
基于页缓存的预读和回收会受各种内核资源状态的影响,本发明提出了一种页缓存管理方法。首先,对于任一业务场景,利用页缓存信息获取模块实时抓取与页缓存相关的各种数据。然后,定时统计分析抓取的页缓存数据,并判断当前业务场景下的页缓存管理策略是否需要调整。若需要调整,则基于抓取的各种页缓存数据,制定一个新的页缓存管理策略(即与当前业务场景最为匹配的页缓存管理策略),并将其替换掉页缓存配置文件中原存储的页缓存管理策略。这样,页缓存管理线程便会根据新的页缓存管理策略来控制缓存页的回收和预读。可见,本发明的页缓存管理方法能够在系统的运行过程中利用页缓存信息获取模块实时获取与页缓存相关的各种数据,并且还能够根据获得的各种页缓存数据来实时调整页缓存管理策略,从而可以保证系统使用的始终都是与当前业务场景最为匹配的页缓存管理策略,提高了页缓存的利用率、磁盘的访问效率。
图1示出了根据本发明一个实施例的计算设备100的结构框图。需要说明的是,图1所示的计算设备100仅为一个示例,在实践中,用于实施本发明的页缓存管理方法的计算设备可以是任意型号的设备,其硬件配置情况可以与图1所示的计算设备100相同,也可以与图1所示的计算设备100不同。实践中用于实施本发明的页缓存管理方法的计算设备可以对图1所示的计算设备100的硬件组件进行增加或删减,本发明对计算设备的具体硬件配置情况不做限制。
如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。
取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。计算设备中的物理内存通常指的是易失性存储器RAM,磁盘中的数据需要加载至物理内存中才能够被处理器104读取。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。在一些实施方式中,应用122可以布置为在操作系统上由一个或多个处理器104利用程序数据124执行指令。操作系统120例如可以是Linux、Windows等,其包括用于处理基本系统服务以及执行依赖于硬件的任务的程序指令。应用122包括用于实现各种用户期望的功能的程序指令,应用122例如可以是浏览器、即时通讯软件、软件开发工具(例如集成开发环境IDE、编译器等)等,但不限于此。当应用122被安装到计算设备100中时,可以向操作系统120添加驱动模块。
在计算设备100启动运行时,处理器104会从存储器106中读取操作系统120的程序指令并执行。应用122运行在操作系统120之上,利用操作系统120以及底层硬件提供的接口来实现各种用户期望的功能。当用户启动应用122时,应用122会加载至存储器106中,处理器104从存储器106中读取并执行应用122的程序指令。
计算设备100还包括储存设备132,储存设备132包括可移除储存器136和不可移除储存器138,可移除储存器136和不可移除储存器138均与储存接口总线134连接。
计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以是这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中以编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备100中,应用122包括用于执行本发明的页缓存管理方法200的指令,该指令可以指示处理器104执行本发明的页缓存管理方法。本领域技术人员可以理解,除了用于执行页缓存管理方法200的指令之外,应用122还可以包括用于实现其他功能的其他应用126。
图2示出了根据本发明一个实施例的页缓存管理方法200的流程图,方法200适于在第一计算设备(例如图1所示的计算设备100)中执行。如图2所示,该方法200始于步骤S210。在步骤S210中,获取任一业务场景下的页缓存信息和进程信息。其中,业务场景可以为存储服务器、数据库等。
页缓存信息包括页缓存中所缓存的各文件的各文件块在各个时刻所包含的缓存页数量、页缓存中所缓存的各文件的各文件块在各个时刻在读操作下的命中次数和未命中次数、页缓存中所缓存的各文件的各文件块在写操作下的命中次数和未命中次数以及页缓存中所缓存的各文件的各文件块在某回收时刻回收失败的原因。在此说明一点,对于任一文件,可以将其划分为等大的若干个文件块。具体地,可以通过sysctl接口来控制每个文件块的大小。
根据本发明的一个实施例,可以通过计算设备中的页缓存信息获取模块来实时获取任一业务场景下的页缓存信息。具体地,当监听到添加缓存页的信息时,更新添加的缓存页所属文件块包含的缓存页数量,当监听到回收缓存页的信息时,更新回收的缓存页所属文件块包含的缓存页数量。进一步地讲,在监听到缓存页添加信息时,确定添加的缓存页所属的文件块,并更新该文件块下的缓存页数量。在监听到缓存页回收信息时,确定回收的缓存页所属的文件块,并更新该文件块下的缓存页数量。
当监听到读文件信息时,更新所读文件的各文件块在读操作下的命中次数和未命中次数,当监听到写文件信息时,更新所写文件的各文件块在写操作下的命中次数和未命中次数。进一步地讲,在监听到读取文件信息时,根据所读文件的各个文件块下的各个缓存页的读标志位,来更新所读文件下的各个文件块的命中次数和未命中次数。在监听到写文件信息时,根据所写文件的各个文件块下的各个缓存页的写标志位,来更新所写文件下的各个文件块的命中次数和未命中次数。
其中,任一文件块在任一时刻在读操作下的命中次数是指,从该文件块添加至页缓存中的那一刻到该时刻,此文件块在读操作下被命中的次数。任一文件块在任一时刻在读操作下的未命中次数是指,从该文件块添加至页缓存中的那一刻到该时刻,此文件块在其所属文件的读取次数中未被命中的次数。
同样,任一文件块在任一时刻在写操作下的命中次数是指,从该文件块添加至页缓存中的那一刻到该时刻,此文件块在写操作下被命中的次数。任一文件块在任一时刻在写操作下的未命中次数是指,从该文件块添加至页缓存中的那一刻到该时刻,此文件块在其所属文件的累加写次数中未被命中的次数。
对于页缓存中所缓存的各文件的各文件块在某回收时刻回收失败的原因,可以通过在vmscan中统计各个文件块下的缓存页扫描或回收失败的原因来获取。其中,回收缓存页失败的原因主要有,回收缓存页时缓存页处于lock状态、回收缓存页时缓存页处于dirty状态、回收缓存页时缓存页处于writeback状态或者是IO正在发生拥塞。因此,可以基于缓存页的dirty、write back、lock以及reclaim等标志位来获取缓存页在某刻回收失败的原因,进而来获取各文件块在某回收时刻回收失败的原因。其中,缓存页的dirty、writeback、lock以及reclaim等标志位数据可以记录到其所属文件块的统计变量里。
另外,对于进程信息的获取,可以通过sysctl接口来指定具体获取哪些进程的信息。获取的进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置。其中,各进程每次读写的文件内容在其文件中的位置是指,各进程每次读写的文件内容在其所属文件中的偏移量。
随后进入步骤S220,定时统计页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化。其中,可以通过systemtap定时统计页缓存信息。
根据本发明的一个实施例,可以通过如下方法来确定是否需要对当前的页缓存管理策略进行优化。首先,根据各文件的各文件块在统计时间段内最后时刻在读操作下的命中次数和未命中次数,获取各文件的各文件块在统计时间段内最后时刻的读命中率(读操作下的命中次数/(读操作下的命中次数+读操作下的未命中次数))。根据各文件的各文件块在统计时间段内最后时刻在写操作下的命中次数和未命中次数,获取各文件的各文件块在统计时间段内最后时刻的写命中率(写操作下的命中次数/(写操作下的命中次数+写操作下的未命中次数))。
然后,将各文件的各文件块在统计时间段内最后时刻的读命中率与第一预设值进行比较、将各文件的各文件块在统计时间段内最后时刻的写命中率与第二预设值进行比较。当存在任一文件块在统计时间段内最后时刻的读命中率小于第一预设值或写命中率小于第二预设值时,确定需要对当前的页缓存管理策略进行优化。其中,第一预设值和第二预设值的大小可以相等,也可以不等。对于第一预设值和第二预设值的取值,本发明不作具体限定。在具体的实施例中,本领域的技术人员可以根据实际需要进行设定。
当确定需要对当前页缓存管理策略进行优化时,进入步骤S230,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段。
具体地,首先根据各文件的各文件块在统计时间段内各时刻在读操作下的命中次数和未命中次数,获取各文件的各文件块在统计时间段内各个时刻的读命中率。根据各文件的各文件块在统计时间段内各时刻在写操作下的命中次数和未命中次数,获取各文件的各文件块在统计时间段内各个时刻的写命中率。然后,将各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率分别与第三预设值和第四预设值进行比较。
当某一文件块在统计时间段内的某个时刻的读命中率小于第三预设值时,确定该文件块所属的文件存在问题,其存在问题的阶段为读阶段,即该文件块所属的文件在读阶段存在问题。同理,当某一文件块在统计时间段内的某个时刻的写命中率小于第四预设值时,确定该文件块所属的文件在写阶段存在问题。需要说明的是,第三预设值和第四预设值的大小可以相等,也可以不等,对此对本发明不作限制。在具体的实施例中,本领域的技术人员可以根据实际需要对第三预设值和第四预设值的取值进行设定。
随后进入步骤S240,根据统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数,确定新的页缓存管理策略。
其中,新的页缓存管理策略包括:在满足第一预设条件时,回收文件的指定区域;在满足第二预设条件时,预读文件的指定区域;在满足第三预设条件时,调整预读文件的大小。当然,还可以包括一些其他的管理策略,在此不再一一列举。根据本发明的一个实施例,可以通过如下方法来确定新的页缓存管理策略。
首先,根据统计时间段内各进程在各个时刻读写的文件,获取各进程在统计时间段内读取同一文件的次数。然后,基于预设的页缓存规则文件,对存在问题的文件出现问题的阶段、存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、存在问题的文件的各文件块在统计时间段内各个时刻的读命中率和写命中率、存在问题的文件的各文件块在统计时间段内回收失败的各个原因及对应的次数、各进程在统计时间段内读取同一文件的次数、各进程在统计时间段内每次读写的文件内容的大小、各进程在统计时间段内每次读写的文件内容在其文件中的位置这些条件进行筛选分析,确定新的页缓存管理策略。
其中,预设的页缓存规则文件中记录着各个页缓存管理策略所对应的条件信息。根据一种实施例,可以将页缓存信息中各个数据的阈值和指定进程的文件活动的阈值作为条件,来控制在满足某条件时对文件的指定区域进行预读、回收以及调整预读的大小。
根据本发明的另一个实施例,在利用页缓存信息获取模块获取任一业务场景下的页缓存信息的步骤中,还可以获取各文件的各缓存页在各个生命周期内在读操作下的总命中次数和总未命中次数、在写操作下的总命中次数和总未命中次数,以及各文件的各缓存页在各个生命周期内的读时序信息和写时序信息。
其中,缓存页的一个生命周期是指,缓存页被添加至页缓存到其被回收的这个时间段。任一文件的任一缓存页在任一生命周期内在读操作下的总命中次数是指,该缓存页在其任一生命周期内在读操作下被命中的总次数。任一文件的任一缓存页在任一生命周期内在读操作下的总未命中次数是指,该缓存页在其任一生命周期内在其所属文件的读取次数中未被命中的总次数。
同样,任一文件的任一缓存页在任一生命周期内在写操作下的总命中次数是指,该缓存页在其任一生命周期内在写操作下被命中的总次数。任一文件的任一缓存页在任一生命周期内在写操作下的总未命中次数是指,该缓存页在其任一生命周期内在其所属文件的读取次数中未被命中的总次数。
另外,各缓存页在各生命周期内的读时序信息是指,各缓存页在各生命周期内在读操作下的命中时间序列。即,任一缓存页在任一生命周期内的读时序信息由该缓存页在其任一生命周期内在读操作下被命中的各个时刻顺序组成。
同样,各缓存页在各生命周期内的写时序信息是指,各缓存页在各生命周期内在写操作下的命中时间序列。即,任一缓存页在任一生命周期内的写时序信息由该缓存页在其任一生命周期内在写操作下被命中的各个时刻顺序组成。
为了能够获取更准确的页缓存管理策略,还可以基于上述获取到以页为单位的页缓存信息来确定页缓存管理策略。即,在确定新的页缓存管理策略时,还可以根据存在问题的文件的各个缓存页在统计时间段的各个生命周期内的总的读命中率(在读操作下的总命中次数/(在读操作下的总命中次数+在读操作下的总未命中次数))、总的写命中率(在写操作下的总命中次数/(在写写作下的总命中次数+在写操作下的总未命中次数))、读时序信息和写时序信息来确定。
具体地,基于预设的页缓存规则文件,对存在问题的文件出现问题的阶段、存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、存在问题的文件的各文件块在统计时间段内各个时刻的读命中率和写命中率、存在问题的文件的各文件块在统计时间段内回收失败的各个原因及对应的次数、存在问题的文件的各缓存页在统计时间段的各个生命周期内的总的读命中率和总的写命中率、存在问题的文件的各缓存页在统计时间段的各个生命周期内的读时序信息和写时序信息、各进程在统计时间段内读取同一文件的次数、各进程在统计时间段内每次读写的文件内容的大小、各进程在统计时间段内每次读写的文件内容在其文件中的位置这些条件进行筛选分析,确定新的页缓存管理策略。
在确定出新的页缓存管理策略后,进入步骤S250,将页缓存的配置文件中存储的页缓存管理策略删除,并将新的页缓存管理策略存储在页缓存的配置文件中。其中,可以通过预设接口来将页缓存配置文件中原存储的页缓存管理策略替换为新的页缓存管理策略。这样,页缓存管理线程便会根据新的页缓存管理策略来控制页缓存的具体活动。例如,在满足第一预设条件时回收文件的指定区域、在满足第二预设条件时预读文件的指定区域、在满足第三预设条件时调整预读文件的大小等等。
图3示出了根据本发明另一个实施例的页缓存管理方法300的流程图,方法300适于在计算设备(例如图1所示的计算设备100)中执行。如图3所示,该方法300始于步骤S310。
在步骤S310中,获取任一业务场景下的页缓存信息和进程信息。其中,页缓存信息包括各文件的各文件块在各个时刻所包含的缓存页数量、在读操作下的命中次数和未命中次数、在写操作下的命中次数和未命中次数以及各文件的各文件块在某回收时刻回收失败的原因。进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置。
随后进入步骤S320,将获取的页缓存信息和进程信息定时输出到日志文件,以便制定策略端根据页缓存信息和进程信息制定新的页缓存管理策略。其中,对于输出时间间隔,本发明不作限制。
对制定策略端而言,在接收到页缓存信息和进程信息后,制定策略人员可以先根据各文件的各文件块在间隔时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化。
当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在间隔时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段。
然后,根据统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在间隔时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数,确定新的页缓存管理策略。
随后进入步骤S330,获取新的页缓存管理策略,并将页缓存的配置文件中所存储的原页缓存管理策略删除,将新的页缓存管理策略存储在页缓存的配置文件中。即,将页缓存的配置文件中所存储的原页缓存管理策略替换为新的页缓存管理策略。
另外,本实施例的页缓存管理方法300的具体细节可以参考基于图1和图2的描述,在此不再赘述。
根据本发明的页缓存管理方法,首先获取任一业务场景下的页缓存信息和进程信息。然后,定时统计页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化。当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段。接着,根据统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数,确定新的页缓存管理策略。最后,将页缓存的配置文件中存储的页缓存管理策略删除,并将新的页缓存管理策略存储在页缓存的配置文件中。可见,本发明的页缓存管理方法能够在系统的运行过程中实时获取页缓存信息,并且还能够根据页缓存信息中的各个数据来实时调整页缓存管理策略,从而可以保证系统使用的始终都是与当前业务场景最为匹配的页缓存管理策略,提高了页缓存的利用率。
A3、如A1或A2所述的方法,其中,所述页缓存信息还包括各文件的各缓存页在各个生命周期内在读操作下的总命中次数和未命中次数、在写操作下的总命中次数和未命中次数,以及各文件的各缓存页在各个生命周期内的读时序信息和写时序信息,所述缓存页的读时序信息由所述缓存页在读操作下命中的各个时刻顺序组成,所述缓存页的写时序信息由所述缓存页在写操作下命中的各个时刻顺序组成。
A4、如A3所述的方法,其中,在确定新的页缓存管理策略时,还根据存在问题的文件的各个缓存页在统计时间段的各个生命周期内的总的读命中率、总的写命中率、读时序信息和写时序信息来确定。
A5、如A1-A4中任一项所述的方法,其中,在获取任一业务场景下的页缓存信息的步骤中,利用计算设备中的页缓存信息获取模块来获取任一业务场景下的页缓存信息。
A11、如A1-A10中任一项所述的方法,其中,所述新的页缓存管理策略包括,在满足第一预设条件时回收文件的指定区域、在满足第二预设条件时预读文件的指定区域、在满足第三预设条件时调整预读文件的大小。
A12、如A1-A11中任一项所述的方法,其中,所述业务场景为存储服务器或数据库。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的文档加载方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (13)

1.一种页缓存管理方法,适于在计算设备中执行,所述方法包括:
获取任一业务场景下的页缓存信息和进程信息,所述页缓存信息包括各文件的各文件块在各个时刻所包含的缓存页数量、在读操作下的命中次数和未命中次数、在写操作下的命中次数和未命中次数以及各文件的各文件块在某回收时刻回收失败的原因;
定时统计所述页缓存信息,并根据各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化;
当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段;
基于预设的页缓存规则文件,对统计时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在统计时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数进行分析,确定新的页缓存管理策略,所述预设的页缓存规则文件包含各个页缓存管理策略所对应的条件信息,所述新的页缓存管理策略包括,在满足第一预设条件时回收文件的指定区域、在满足第二预设条件时预读文件的指定区域、在满足第三预设条件时调整预读文件的大小;
将页缓存的配置文件中存储的页缓存管理策略删除,并将新的页缓存管理策略存储在页缓存的配置文件中。
2.如权利要求1所述的方法,其中,所述进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置。
3.如权利要求1或2所述的方法,其中,所述页缓存信息还包括各文件的各缓存页在各个生命周期内在读操作下的总命中次数和未命中次数、在写操作下的总命中次数和未命中次数,以及各文件的各缓存页在各个生命周期内的读时序信息和写时序信息,所述缓存页的读时序信息由所述缓存页在读操作下命中的各个时刻顺序组成,所述缓存页的写时序信息由所述缓存页在写操作下命中的各个时刻顺序组成。
4.如权利要求3所述的方法,其中,在确定新的页缓存管理策略时,还根据存在问题的文件的各个缓存页在统计时间段的各个生命周期内的总的读命中率、总的写命中率、读时序信息和写时序信息来确定。
5.如权利要求1或2所述的方法,其中,在获取任一业务场景下的页缓存信息的步骤中,利用计算设备中的页缓存信息获取模块来获取任一业务场景下的页缓存信息。
6.如权利要求1或2所述的方法,其中,所述获取任一业务场景下的页缓存信息的步骤,包括:
当监听到添加缓存页信息时,更新添加的缓存页所属文件块包含的缓存页数量;
当监听到回收缓存页信息时,更新回收的缓存页所属文件块包含的缓存页数量。
7.如权利要求1或2所述的方法,其中,所述获取任一业务场景下的页缓存信息的步骤,包括:
当监听到读文件信息时,更新所读文件的各文件块在读操作下的命中次数和未命中次数;
当监听到写文件信息时,更新所写文件的各文件块在写操作下的命中次数和未命中次数。
8.如权利要求1或2所述的方法,其中,确定是否需要对当前的页缓存管理策略进行优化的步骤,包括:
将各文件的各文件块在统计时间段内最后时刻的读命中率和写命中率分别与第一预设值和第二预设值进行比较;
当存在任一文件块在统计时间段内最后时刻的读命中率小于第一预设值或写命中率小于第二预设值时,确定需要对当前的页缓存管理策略进行优化。
9.如权利要求1或2所述的方法,其中,确定存在问题的文件及出现问题的阶段的步骤,包括:
将各文件的各文件块在统计时间段内各个时刻的读命中率和写命中率分别与第三预设值和第四预设值进行比较;
当某一文件块在统计时间段内的某个时刻的读命中率小于第三预设值时,确定该文件块所属的文件在读阶段存在问题;
当某一文件块在统计时间段内的某个时刻的写命中率小于第四预设值时,确定该文件块所属的文件在写阶段存在问题。
10.如权利要求1或2所述的方法,其中,所述业务场景为存储服务器或数据库。
11.一种页缓存管理方法,适于在计算设备中执行,所述方法包括:
获取任一业务场景下的页缓存信息和进程信息,所述页缓存信息包括各文件的各文件块在各个时刻所包含的缓存页数量、在读操作下的命中次数和未命中次数、在写操作下的命中次数和未命中次数以及各文件的各文件块在某回收时刻回收失败的原因,所述进程信息包括各进程在各个时刻读写的文件、各进程每次读写的文件内容的大小、各进程每次读写的文件内容在其文件中位置;
将获取的页缓存信息和进程信息定时输出到日志文件,以便制定策略端根据所述页缓存信息和进程信息制定新的页缓存管理策略,包括:根据各文件的各文件块在间隔时间段内最后时刻的读命中率和写命中率,确定是否需要对当前的页缓存管理策略进行优化,当确定需要对当前页缓存管理策略进行优化时,根据各文件的各文件块在间隔时间段内各个时刻的读命中率和写命中率,确定存在问题的文件及其出现问题的阶段,以及基于预设的页缓存规则文件,对间隔时间段内的进程信息、存在问题的文件出现问题的阶段以及存在问题的文件的各文件块在间隔时间段内各个时刻所包含的缓存页数量、各个时刻的读命中率和写命中率、回收失败的各个原因及对应的次数进行分析,确定新的页缓存管理策略,所述预设的页缓存规则文件包含各个页缓存管理策略所对应的条件信息,所述新的页缓存管理策略包括,在满足第一预设条件时回收文件的指定区域、在满足第二预设条件时预读文件的指定区域、在满足第三预设条件时调整预读文件的大小;
获取新的页缓存管理策略,并将页缓存的配置文件中存储的页缓存管理策略删除,将新的页缓存管理策略存储在页缓存的配置文件中。
12.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-11中任一项所述方法的指令。
13.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-11中任一项所述方法。
CN202110666166.7A 2021-06-16 2021-06-16 一种页缓存管理方法、计算设备及可读存储介质 Active CN113326214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110666166.7A CN113326214B (zh) 2021-06-16 2021-06-16 一种页缓存管理方法、计算设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110666166.7A CN113326214B (zh) 2021-06-16 2021-06-16 一种页缓存管理方法、计算设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN113326214A CN113326214A (zh) 2021-08-31
CN113326214B true CN113326214B (zh) 2023-06-16

Family

ID=77421024

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110666166.7A Active CN113326214B (zh) 2021-06-16 2021-06-16 一种页缓存管理方法、计算设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN113326214B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116166575B (zh) * 2023-02-03 2024-01-23 摩尔线程智能科技(北京)有限责任公司 访存段长度的配置方法、装置、设备、介质和程序产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000122926A (ja) * 1998-10-14 2000-04-28 Nec Corp キャッシュ記憶装置およびキャッシュ記憶方法
US6085287A (en) * 1997-12-30 2000-07-04 Genesis One Technologies, Inc. Method and apparatus for enhancing the disk cache process by dynamically sizing prefetch data associated with read requests based upon the current cache hit rate
JP2003196032A (ja) * 2001-12-26 2003-07-11 Nec Corp ストレージ装置のライトキャッシュ制御方法及びストレージ装置
CN102662866A (zh) * 2012-04-09 2012-09-12 华为软件技术有限公司 一种文件cache管理方法及内存管理系统
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法
CN105573669A (zh) * 2015-12-11 2016-05-11 上海爱数信息技术股份有限公司 一种存储系统的io读加速缓存方法和系统
CN105677756A (zh) * 2015-12-28 2016-06-15 曙光信息产业股份有限公司 一种文件系统中有效利用缓存的方法和装置
CN107562645A (zh) * 2017-08-24 2018-01-09 华为技术有限公司 一种内存页管理方法及计算设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8161240B2 (en) * 2007-10-10 2012-04-17 Apple Inc. Cache management
CN109213694B (zh) * 2017-06-30 2023-04-25 伊姆西Ip控股有限责任公司 用于缓存管理的方法和设备
CN109725825B (zh) * 2017-10-27 2022-03-11 伊姆西Ip控股有限责任公司 用于管理缓存的方法、设备和计算机程序产品

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085287A (en) * 1997-12-30 2000-07-04 Genesis One Technologies, Inc. Method and apparatus for enhancing the disk cache process by dynamically sizing prefetch data associated with read requests based upon the current cache hit rate
JP2000122926A (ja) * 1998-10-14 2000-04-28 Nec Corp キャッシュ記憶装置およびキャッシュ記憶方法
JP2003196032A (ja) * 2001-12-26 2003-07-11 Nec Corp ストレージ装置のライトキャッシュ制御方法及びストレージ装置
CN102662866A (zh) * 2012-04-09 2012-09-12 华为软件技术有限公司 一种文件cache管理方法及内存管理系统
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法
CN105573669A (zh) * 2015-12-11 2016-05-11 上海爱数信息技术股份有限公司 一种存储系统的io读加速缓存方法和系统
CN105677756A (zh) * 2015-12-28 2016-06-15 曙光信息产业股份有限公司 一种文件系统中有效利用缓存的方法和装置
CN107562645A (zh) * 2017-08-24 2018-01-09 华为技术有限公司 一种内存页管理方法及计算设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种避免页迁移的混合内存页管理策略;刘翠梅;杨璇;贾刚勇;韩光洁;;小型微型计算机系统(第06期);全文 *

Also Published As

Publication number Publication date
CN113326214A (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
US8793427B2 (en) Remote memory for virtual machines
US8225070B2 (en) Information processing apparatus and cache memory control method
CN103473150A (zh) 一种用于数据去重系统中的碎片重写方法
US20180181338A1 (en) Information processing apparatus, information processing system and information processing method
US10817624B2 (en) Memory system and storage device capable of permanently deleting data stored in a non-volatile memory
CN111651374A (zh) 一种数据处理方法、装置、计算设备及可读存储介质
CN111880723A (zh) 数据储存装置与数据处理方法
CN113326214B (zh) 一种页缓存管理方法、计算设备及可读存储介质
CN114461404B (zh) 一种进程迁移方法、计算设备及可读存储介质
CN114416252A (zh) 一种窗口显示方法、装置、计算设备和存储介质
CN110874298B (zh) 一种请求数据存储方法及终端设备
CN111651315A (zh) 一种页面的数据采集方法
US20180307432A1 (en) Managing Data in a Storage System
WO2023173995A1 (en) Cache line compression prediction and adaptive compression
US9323671B1 (en) Managing enhanced write caching
WO2023173991A1 (en) Cache line compression prediction and adaptive compression
CN109558752B (zh) 主机白名单机制下一种快速实现文件鉴别的方法
CN108984124B (zh) 减少写放大的方法、装置、计算机设备及存储介质
CN113553211B (zh) 一种核心转储文件的生成方法、计算设备及存储介质
CN114691549A (zh) 一种文件写入方法、装置及计算设备
CN113704182B (zh) 一种数据检查方法及计算设备
US6542855B1 (en) Selecting a cache design for a computer system using a model with a seed cache to generate a trace
US20200409852A1 (en) Enhanced read-ahead capability for storage devices
JP4558003B2 (ja) データアクセス処理方法及び記憶制御装置
CN114237708A (zh) 一种多处理器的指令执行方法、计算设备及存储介质

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
GR01 Patent grant
GR01 Patent grant