CN107015865B - 一种基于时间局部性的dram缓存管理方法及系统 - Google Patents

一种基于时间局部性的dram缓存管理方法及系统 Download PDF

Info

Publication number
CN107015865B
CN107015865B CN201710161170.1A CN201710161170A CN107015865B CN 107015865 B CN107015865 B CN 107015865B CN 201710161170 A CN201710161170 A CN 201710161170A CN 107015865 B CN107015865 B CN 107015865B
Authority
CN
China
Prior art keywords
filling
probability
write
dram cache
unit
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
CN201710161170.1A
Other languages
English (en)
Other versions
CN107015865A (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201710161170.1A priority Critical patent/CN107015865B/zh
Publication of CN107015865A publication Critical patent/CN107015865A/zh
Application granted granted Critical
Publication of CN107015865B publication Critical patent/CN107015865B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种基于时间局部性的DRAM缓存管理方法及系统,属于计算机缓存技术领域。本发明系统包括时间局部性监测模块、动态决策模块和调度管理模块:时间局部性监测模块用于对用户请求的时间局部性进行监测,根据监控结果计算写回和填充的概率并提交给调度管理模块;动态决策模块采用组决斗的方法以核为单位动态的决定下一阶段是否部署时间局部性管理策略,避免了由于写回和填充过滤带来的DRAM缓存命中率下降的问题,使系统性能更加的稳定;调度管理模块根据监测模块和动态决策模块的结果来管理写回和填充到DRAM缓存的请求。本发明在工作过程中,对用户层完全透明,同时由于监控不在请求访问的关键路径上,因此对系统性能几乎没有任何影响。

Description

一种基于时间局部性的DRAM缓存管理方法及系统
技术领域
本发明属于计算机缓存技术领域,更具体地,涉及一种基于时间局部性的DRAM缓存管理方法及系统。
背景技术
随着处理器核数的不断增加,现代应用所需的缓存容量也越来越大,传统的基于SRAM的缓存已无法满足需求,SRAM的低密度、高功耗特点使得进一步增大SRAM容量变得不切实际。虽然DRAM能够提供相对于SRAM几倍的带宽,但是由于它的高延迟特点,DRAM一直以来仅仅被用作主存。然而,最近采用一些新技术,如die-stacking技术大大提高了DRAM的性能,堆叠DRAM可以提供片外DRAM几倍的带宽优势,同时延迟降为原来的一半甚至三分之一。
要想更好的利用DRAM缓存,需要解决一些挑战。由于SRAM与DRAM性质存在很大区别,DRAM缓存的设计主要分为细粒度和粗粒度,细粒度一般是以64B的块进行组织的,粗粒度则是以KB级的页进行组织的:
细粒度的设计会导致很高的标签存储开销,这个开销远大于最后一级SRAM缓存,这强迫设计者将标签存放在DRAM缓存之中,串行化标签、数据访问和使用组相连缓存会进一步增大命中延迟开销,目前,主要有两个方案来解决标签和数据串行化访问带来的延时问题:一是将标签和数据放置在同一行,通过行缓冲命中来降低DRAM缓存的命中时延;另一个通过直接组相连的方式,将标签和数据紧紧的放置在一起,通过一次访问将标签和数据同时流出从而完全消除标签、数据串行化的问题;细粒度的设计无法利用应用的空间局部性,这使得其命中率相对较低,细粒度是优势在于有效的使用片外主存带宽和缓存容量;
粗粒度的设计使标签的存储开销大大降低,这使得标签可以存放在SRAM之中,进而加快访问时间。通过利用空间局部性,它可以较细粒度提高命中率。粗粒度设计的限制在于带宽浪费和排队竞争的问题。同时,粗粒度的缓存块会降低缓存的有效容量,使多线程应用性能下降。随着DRAM缓存容量的不断提高,所需的标签存储不断加大,即使使用粗粒度技术,也无法将标签存储在SRAM之中。
盲目的将优秀的SRAM缓存管理策略应用到DRAM缓存上可能会导致性能下降。因此,应该根据DRAM的特性,使用新奇的技术应用在DRAM缓存之上:对于几十兆和几百兆的DRAM缓存,可以提供片外主存2倍的带宽和低于一半的命中延时,然而DRAM缓存的设计需要执行一些附加的操作,这些附加操作包括:写回更新、写回填充、不命中填充等。这些附加操作会导致大量的带宽消耗,而带宽消耗带来的最直接影响就是DRAM缓存的排队时延增大。对于DRAM缓存,它的命中时延由两部分组成,DRAM缓存的访问时延和排队时延,当DRAM缓存的带宽消耗过大时,排队时延甚至要超过访问时延成为决定DRAM缓存命中时延的主要因素。现有的一些DRAM缓存管理策略虽然可在一定程序上缓解该问题,但存在硬件开销过大、没有考虑CPU上各个核之间的差异性等问题,目前还缺乏一种在通用计算机上的在线低开销的堆叠DRAM缓存管理机制。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于时间局部性的DRAM缓存管理方法及系统,其目的在于实时监测用户请求的时间局部性,根据监测结果计算写回和填充概率,之后采用组决斗的方法以核为单位动态的决定下一阶段是否部署时间局部性管理策略,避免了由于写回和填充过滤带来的DRAM缓存命中率下降的问题,使系统性能更加的稳定,由此解决现有方法中存在的开销过大、没有考虑CPU上各个核之间的差异性等技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于时间局部性的DRAM缓存管理方法,该方法包括:
(1)监测时间局部性:每个核都分别部署读监控器和写监控器,实时对片上缓存的读和写请求的命中情况进行采样监控,根据监控结果计算填充概率和写回概率;
(2)动态决策:以设定的时间间隔对DRAM缓存进行抽样,对每个抽样组采用不同的概率过滤策略进行填充或写回,以CPU核为单位对抽样组进行命中率对比;
(3)调度管理:根据时间局部性监测结果和动态决策结果来管理数据写回和填充到DRAM缓存的请求。
进一步地,所述步骤(1)中填充概率或写回概率的计算方法为:
Pi=(N1×W1+N2×W2+…+Nk×Wk)/N,
其中,Pi为填充概率或写回概率;Nk为第k路的命中数量;Wk为第k路的权重;N为命中数量与未命中数量的和。
进一步地,所述步骤(2)具体包括:
(21)以设定的时间间隔对DRAM缓存进行抽样,获得(CPU核数+1)×2个抽样组;
(22)一个CPU核i对应2个抽样组:一组设为Ci,其中核i采用步骤(1)所得填充概率或写回概率进行填充或写回,其他核采用当前概率进行填充或写回;另一组设为Fi,其中核i采用全填充或全写回,其他核采用当前概率进行填充或写回;
(23)剩下其中1个抽样组设为PBS,采用当前概率进行填充或写回,另1个抽样组设为CS,采用全填充或全写回;
(24)计算对比,若
(PBS未命中率-CS未命中率)≤第一设定阈值,
则设定标记modebit=0;否则modebit=1;
(25)若CPU核i对应的两个抽样组
Ci未命中率-Fi未命中率≤第二设定阈值,
则设定标记corebiti=0;否则corebiti=1。
进一步地,所述步骤(3)具体包括:
(31)对于写回和填充到DRAM缓存的请求,若modebit=0,则跳转步骤(33);若modebit=1,则跳转步骤(32);
(32)若corebiti=0,则跳转步骤(33);若corebiti=1,则生成一个0到1之间的随机数R,若R<Pi,则跳转步骤(33),否则,若是填充请求则跳转步骤(35),若是写回请求则跳转步骤(34);
(33)写回或填充到DRAM缓存,跳转步骤(36);
(34)写回到片外主存,跳转步骤(36);
(35)填充到片上缓存,跳转步骤(36);
(36)调度结束。
按照本发明的另一方面,提供了一种基于时间局部性的DRAM缓存管理系统,该系统包括:
时间局部性监测模块,用于在每个核上都分别部署读监控器和写监控器,实时对片上缓存的读和写请求的命中情况进行采样监控,根据监控结果计算填充概率和写回概率;
动态决策模块,用于以设定的时间间隔对DRAM缓存进行抽样,对每个抽样组采用不同的概率过滤策略进行填充或写回,以CPU核为单位对抽样组进行命中率对比;
调度管理模块,用于根据时间局部性监测结果和动态决策结果来管理数据写回和填充到DRAM缓存的请求。
进一步地,所述时间局部性监测模块中填充概率或写回概率的计算方法为:
Pi=(N1×W1+N2×W2+…+Nk×Wk)/N,
其中,Pi为填充概率或写回概率;Nk为第k路的命中数量;Wk为第k路的权重;N为命中数量与未命中数量的和。
进一步地,所述动态决策模块具体包括:
抽样单元,用于以设定的时间间隔对DRAM缓存进行抽样,获得(CPU核数+1)×2个抽样组;
核抽样组分配单元,用于分配一个CPU核i对应2个抽样组:一组设为Ci,其中核i采用时间局部性监测模块所得填充概率或写回概率进行填充或写回,其他核采用当前概率进行填充或写回;另一组设为Fi,其中核i采用全填充或全写回,其他核采用当前概率进行填充或写回;
其他抽样组分配单元,用于将剩下其中1个抽样组设为PBS,采用当前概率进行填充或写回,另1个抽样组设为CS,采用全填充或全写回;
第一对比单元,用于计算对比,若
(PBS未命中率-CS未命中率)≤第一设定阈值,
则设定标记modebit=0;否则modebit=1;
第二对比单元,用于计算对比,若CPU核i对应的两个抽样组
Ci未命中率-Fi未命中率≤第二设定阈值,
则设定标记corebiti=0;否则corebiti=1。
进一步地,所述调度管理模块具体包括:
第一判断单元,用于判断,对于写回和填充到DRAM缓存的请求,若modebit=0,则跳转到DRAM缓存单元;若modebit=1,则跳转到第二判断单元;
第二判断单元,用于判断若corebiti=0,则跳转到DRAM缓存单元;若corebiti=1,则生成一个0到1之间的随机数R,若R<Pi,则跳转到DRAM缓存单元,否则,若是填充请求则跳转到片上缓存单元,若是写回请求则跳转到片外主存单元;
DRAM缓存单元,用于写回或填充到DRAM缓存,跳转到结束单元;
片外主存单元,用于写回到片外主存,跳转到结束单元;
片上缓存单元,用于填充到片上缓存,跳转到结束单元;
结束单元,用于结束调度。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下技术特征及有益效果:
(1)以CPU上核为单位进行监测,充分考虑了不同核之间的差异性,监测器通过请求在标签缓存的命中位置评估应用的时间局部性,使用均匀的抽样法大幅降低硬件开销,同时,监测器不位于请求访问的关键路径上,几乎对性能没有任何影响;
(2)对DRAM缓存均匀抽样,以核为单位通过组决斗的方法使系统性能更加稳定,消除了由于应用重用距离大于标签缓存和应用访存颠簸引起的命中率大大下降的问题,不会再因为一个核的过滤引起整个系统性能的明显下降;
(3)在调度管理机制的最上层决定系统当前阶段是否部署时间局部性管理策略,当部署管理策略导致系统命中率下降过多时,系统使用全填充策略,否则部署时间局部性管理策略,这可以有效的避免时间局部性管理策略相对于传统策略性能下降;
(4)如果某个核由于过滤导致了DRAM缓存整体命中率下降过多,使这个核采用全填充策略,其它核保持原有策略,这有效的避免了由于某个核的不适用过滤而引起的系统性能下降;
(5)由于本发明工作时不需要对用户层程序进行代码级的分析或更改,整个工作过程对上层完全透明,具有很强的通用性和可移植性。
附图说明
图1是本发明方法步骤流程图;
图2是本发明实施例系统框架示意图;
图3为本发明实施例时间局部性监测细节图;
图4为本发明实施例动态决策中抽样组数据分配示意图;
图5为本发明实施例DRAM缓存写回和填充请求调度管理示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,本发明方法包括:
(1)监测时间局部性:每个核都分别部署读监控器和写监控器,实时对片上缓存的读和写请求的命中情况进行采样监控,根据监控结果计算填充概率和写回概率;
(2)动态决策:以设定的时间间隔对DRAM缓存进行抽样,对每个抽样组采用不同的概率过滤策略进行填充或写回,以CPU核为单位对抽样组进行命中率对比;
(3)调度管理:根据时间局部性监测结果和动态决策结果来管理数据写回和填充到DRAM缓存的请求。
如图2所示,本发明实施例中两个核都分别部署读监控器和写监控器,时间局部性监测模块对用户层程序L3缓存不命中的读请求进行采样监测,同时对L3缓存写回到下层的请求进行采样监测,每过一段时间,根据读写监控器的结果分别计算填充和写回概率,并将概率值发往管理模块然后开启下一阶段的监控。
所述步骤(1)中填充概率或写回概率的计算方法为:
Pi=(N1×W1+N2×W2+…+Nk×Wk)/N,
其中,Pi为填充概率或写回概率;Nk为第k路的命中数量;Wk为第k路的权重;N为命中数量与未命中数量的和。
如图3所示,本发明实施例时间局部性监测器标签缓存是多路组相连的,根据请求在缓存中的命中情况,命中区域是靠近LRU端还是MRU端,靠近LRU端权重比值低,MRU端权重比值高;评估应用的时间局部性强弱,通过抽样技术大大降低标签缓存的硬件开销,同时保证监控的精确度。
所述步骤(2)具体包括:
(21)以设定的时间间隔对DRAM缓存进行抽样,获得(CPU核数+1)×2个抽样组;
(22)一个CPU核i对应2个抽样组:一组设为Ci,其中核i采用步骤(1)所得填充概率或写回概率进行填充或写回,其他核采用当前概率进行填充或写回;另一组设为Fi,其中核i采用全填充或全写回,其他核采用当前概率进行填充或写回;
(23)剩下其中1个抽样组设为PBS,采用当前概率进行填充或写回,另1个抽样组设为CS,采用全填充或全写回;
(24)进行对比,若
(PBS未命中率-CS未命中率)≤第一设定阈值,
则设定标记modebit=0;否则modebit=1;
(25)若CPU核i对应的两个抽样组
Ci未命中率-Fi未命中率≤第二设定阈值,
则设定标记corebiti=0;否则corebiti=1。
如图4所示,本发明实施例中动态决策模块通过对DRAM缓存进行抽样,对每个抽样组部署不同的填充和写回策略,核i对应两个抽样组,用于判定该核是否使用过滤策略,对于组1,核i采用概率Pi进行填充,其它核采用当前的策略Ki,对于组2,核i使用全填充,其它核采用当前的策略Ki。以此类推组2到组7,最后组8和组9用于对比时间局部性管理策略和传统全填充策略,其中一个对每个核都部署当前策略Ki,称这个组为PBS,另一个对每个核都全填充,称这个组为CS。
步骤(3)具体包括:
(31)对于写回和填充到DRAM缓存的请求,若modebit=0,则跳转步骤(33);若modebit=1,则跳转步骤(32);
(32)若corebiti=0,则跳转步骤(33);若corebiti=1,则生成一个0到1之间的随机数R,若R<Pi,则跳转步骤(33),否则,若是填充请求则跳转步骤(35),若是写回请求则跳转步骤(34);
(33)写回或填充到DRAM缓存,跳转步骤(36);
(34)写回到片外主存,跳转步骤(36);
(35)填充到片上缓存,跳转步骤(36);
(36)调度结束。
如图5所示,本发明实施例中,调度管理模块根据监测模块和动态决策模块的结果来管理写回和填充到DRAM缓存的请求,对于从片外主存返回的填充请求管理模块决定填充到DRAM缓存还是跳过DRAM缓存直接发往L3SRAM缓存,对于从L3缓存发往下层的写回请求管理模块决定写回到DRAM缓存还是跳过DRAM缓存直接写回到片外主存。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于时间局部性的DRAM缓存管理方法,其特征在于,该方法包括:
(1)监测时间局部性:实时对片上缓存的读和写请求的命中情况进行采样监控,根据监控结果计算填充概率和写回概率;
(2)动态决策:以设定的时间间隔对DRAM缓存进行抽样,对每个抽样组采用不同的概率过滤策略进行填充或写回,以CPU核为单位对抽样组进行命中率对比;所述步骤(2)具体包括:
(21)以设定的时间间隔对DRAM缓存进行抽样,获得(CPU核数+1)×2个抽样组;
(22)一个CPU核i对应2个抽样组:一组设为Ci,其中核i采用步骤(1)所得填充概率或写回概率进行填充或写回,其他核采用当前概率进行填充或写回;另一组设为Fi,其中核i采用全填充或全写回,其他核采用当前概率进行填充或写回;
(23)剩下其中1个抽样组设为PBS,采用当前概率进行填充或写回,另1个抽样组设为CS,采用全填充或全写回;
(24)进行对比,若
(PBS未命中率-CS未命中率)≤第一设定阈值,
则设定标记modebit=0;否则modebit=1;
(25)若CPU核i对应的两个抽样组
Ci未命中率-Fi未命中率≤第二设定阈值,
则设定标记corebiti=0;否则corebiti=1;
(3)调度管理:根据时间局部性监测结果和动态决策结果来管理数据写回和填充到DRAM缓存的请求。
2.根据权利要求1所述的一种基于时间局部性的DRAM缓存管理方法,其特征在于,所述步骤(1)中填充概率或写回概率的计算方法为:
Pi=(N1×W1+N2×W2+…+Nk×Wk)/N,
其中,Pi为填充概率或写回概率;Nk为第k路的命中数量;Wk为第k路的权重;N为命中数量与未命中数量的和。
3.根据权利要求1所述的一种基于时间局部性的DRAM缓存管理方法,其特征在于,步骤(3)具体包括:
(31)对于写回和填充到DRAM缓存的请求,若modebit=0,则跳转步骤(33);若modebit=1,则跳转步骤(32);
(32)若corebiti=0,则跳转步骤(33);若corebiti=1,则生成一个0到1之间的随机数R,若R<Pi,则跳转步骤(33),否则,若是填充请求则跳转步骤(35),若是写回请求则跳转步骤(34);
(33)写回或填充到DRAM缓存,跳转步骤(36);
(34)写回到片外主存,跳转步骤(36);
(35)填充到片上缓存,跳转步骤(36);
(36)调度结束。
4.一种基于时间局部性的DRAM缓存管理系统,其特征在于,该系统包括:
时间局部性监测模块,用于实时对片上缓存的读和写请求的命中情况进行采样监控,根据监控结果计算填充概率和写回概率;
动态决策模块,用于以设定的时间间隔对DRAM缓存进行抽样,对每个抽样组采用不同的概率过滤策略进行填充或写回,以CPU核为单位对抽样组进行命中率对比;
所述动态决策模块具体包括:
抽样单元,用于以设定的时间间隔对DRAM缓存进行抽样,获得(CPU核数+1)×2个抽样组;
核抽样组分配单元,用于分配一个CPU核i对应2个抽样组:一组设为Ci,其中核i采用时间局部性监测模块所得填充概率或写回概率进行填充或写回,其他核采用当前概率进行填充或写回;另一组设为Fi,其中核i采用全填充或全写回,其他核采用当前概率进行填充或写回;
其他抽样组分配单元,用于将剩下其中1个抽样组设为PBS,采用当前概率进行填充或写回,另1个抽样组设为CS,采用全填充或全写回;
第一对比单元,用于计算对比,若
(PBS未命中率-CS未命中率)≤第一设定阈值,
则设定标记modebit=0;否则modebit=1;
第二对比单元,用于计算对比,若CPU核i对应的两个抽样组
Ci未命中率-Fi未命中率≤第二设定阈值,
则设定标记corebiti=0;否则corebiti=1;
调度管理模块,用于根据时间局部性监测结果和动态决策结果来管理数据写回和填充到DRAM缓存的请求。
5.根据权利要求4所述的一种基于时间局部性的DRAM缓存管理系统,其特征在于,所述时间局部性监测模块中填充概率或写回概率的计算方法为:
Pi=(N1×W1+N2×W2+…+Nk×Wk)/N,
其中,Pi为填充概率或写回概率;Nk为第k路的命中数量;Wk为第k路的权重;N为命中数量与未命中数量的和。
6.根据权利要求4所述的一种基于时间局部性的DRAM缓存管理系统,其特征在于,调度管理模块具体包括:
第一判断单元,用于判断,对于写回和填充到DRAM缓存的请求,若modebit=0,则跳转到DRAM缓存单元;若modebit=1,则跳转到第二判断单元;
第二判断单元,用于判断若corebiti=0,则跳转到DRAM缓存单元;若corebiti=1,则生成一个0到1之间的随机数R,若R<Pi,则跳转到DRAM缓存单元,否则,若是填充请求则跳转到片上缓存单元,若是写回请求则跳转到片外主存单元;
DRAM缓存单元,用于写回或填充到DRAM缓存,跳转到结束单元;
片外主存单元,用于写回到片外主存,跳转到结束单元;
片上缓存单元,用于填充到片上缓存,跳转到结束单元;
结束单元,用于结束调度。
CN201710161170.1A 2017-03-17 2017-03-17 一种基于时间局部性的dram缓存管理方法及系统 Active CN107015865B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710161170.1A CN107015865B (zh) 2017-03-17 2017-03-17 一种基于时间局部性的dram缓存管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710161170.1A CN107015865B (zh) 2017-03-17 2017-03-17 一种基于时间局部性的dram缓存管理方法及系统

Publications (2)

Publication Number Publication Date
CN107015865A CN107015865A (zh) 2017-08-04
CN107015865B true CN107015865B (zh) 2019-12-17

Family

ID=59439670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710161170.1A Active CN107015865B (zh) 2017-03-17 2017-03-17 一种基于时间局部性的dram缓存管理方法及系统

Country Status (1)

Country Link
CN (1) CN107015865B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377622A (zh) * 2019-06-19 2019-10-25 深圳新度博望科技有限公司 数据获取方法、数据检索方法及请求响应方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102473112A (zh) * 2009-09-11 2012-05-23 英派尔科技开发有限公司 关于线程迁移的高速缓存预填充
CN102541983A (zh) * 2011-10-25 2012-07-04 无锡城市云计算中心有限公司 一种分布式文件系统中多客户端缓存同步的方法
CN102760101A (zh) * 2012-05-22 2012-10-31 中国科学院计算技术研究所 一种基于ssd 的缓存管理方法及系统
CN103984736A (zh) * 2014-05-21 2014-08-13 西安交通大学 一种高效的nand闪存数据库系统的缓存管理方法
CN104317739A (zh) * 2014-10-28 2015-01-28 清华大学 一种混合内存页面调度方法及装置
CN104811495A (zh) * 2015-04-27 2015-07-29 北京交通大学 一种用于智慧协同网络的网络组件内容存储方法及模块

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102473112A (zh) * 2009-09-11 2012-05-23 英派尔科技开发有限公司 关于线程迁移的高速缓存预填充
CN102541983A (zh) * 2011-10-25 2012-07-04 无锡城市云计算中心有限公司 一种分布式文件系统中多客户端缓存同步的方法
CN102760101A (zh) * 2012-05-22 2012-10-31 中国科学院计算技术研究所 一种基于ssd 的缓存管理方法及系统
CN103984736A (zh) * 2014-05-21 2014-08-13 西安交通大学 一种高效的nand闪存数据库系统的缓存管理方法
CN104317739A (zh) * 2014-10-28 2015-01-28 清华大学 一种混合内存页面调度方法及装置
CN104811495A (zh) * 2015-04-27 2015-07-29 北京交通大学 一种用于智慧协同网络的网络组件内容存储方法及模块

Also Published As

Publication number Publication date
CN107015865A (zh) 2017-08-04

Similar Documents

Publication Publication Date Title
US11086792B2 (en) Cache replacing method and apparatus, heterogeneous multi-core system and cache managing method
TWI234709B (en) Weighted cache line replacement
US7380065B2 (en) Performance of a cache by detecting cache lines that have been reused
KR102521053B1 (ko) 하이브리드 dram/낸드 메모리에서 읽기-수정-쓰기 오버헤드를 감소시키기 위한 기술들
US8615634B2 (en) Coordinated writeback of dirty cachelines
US20060004963A1 (en) Apparatus and method for partitioning a shared cache of a chip multi-processor
US8627009B2 (en) Cache filtering method and apparatus
US20120059983A1 (en) Predictor-based management of dram row-buffers
US10007614B2 (en) Method and apparatus for determining metric for selective caching
US10628318B2 (en) Cache sector usage prediction
US10496550B2 (en) Multi-port shared cache apparatus
CN111382089B (zh) 用于专用最末级高速缓存器的旁路预测器
CN104572502A (zh) 一种存储系统缓存策略自适应方法
Pourshirazi et al. Refree: A refresh-free hybrid DRAM/PCM main memory system
CN110297787A (zh) I/o设备访问内存的方法、装置及设备
Pourshirazi et al. WALL: A writeback-aware LLC management for PCM-based main memory systems
US9798665B1 (en) Cache eviction according to data hit ratio and service level agreement
CN107015865B (zh) 一种基于时间局部性的dram缓存管理方法及系统
US7502901B2 (en) Memory replacement mechanism in semiconductor device
CN105359116B (zh) 缓存器、共享缓存管理方法及控制器
CN105573675B (zh) 缓存管理装置中基于训练机制的用户习惯获取方法及装置
CN112231241B (zh) 一种数据读取方法和装置、计算机可读存储介质
Fang et al. Efficient data transfer in a heterogeneous multicore-based CE systems using cache performance optimization
Qin et al. Warstack: Improving LLC replacement for NVM with a writeback-aware reuse stack
US9760488B2 (en) Cache controlling method for memory system and cache system thereof

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