CN103235764B - 线程感知多核数据预取自调方法 - Google Patents
线程感知多核数据预取自调方法 Download PDFInfo
- Publication number
- CN103235764B CN103235764B CN201310127383.4A CN201310127383A CN103235764B CN 103235764 B CN103235764 B CN 103235764B CN 201310127383 A CN201310127383 A CN 201310127383A CN 103235764 B CN103235764 B CN 103235764B
- Authority
- CN
- China
- Prior art keywords
- thread
- ahead
- looking ahead
- prefetch
- fetching
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000001105 regulatory effect Effects 0.000 title claims abstract description 30
- 238000001914 filtration Methods 0.000 claims abstract description 9
- 230000006399 behavior Effects 0.000 claims abstract description 3
- 230000003542 behavioural effect Effects 0.000 claims abstract description 3
- 230000008034 disappearance Effects 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 101150015860 MC1R gene Proteins 0.000 description 3
- 102100034216 Melanocyte-stimulating hormone receptor Human genes 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000001693 membrane extraction with a sorbent interface Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种线程感知多核数据预取自调方法;包括以下步骤:a、动态反馈信息统计:通过硬件计数器统计各线程的存储访问行为和预取行为信息;b、指标计算:根据动态反馈信息统计的结果计算各线程用以衡量其竞争程度的访存特性和预取特性指标;c、线程分类:根据各线程的访存特性指标和预取特性指标对线程进行分类;d、预取调节:根据线程分类结果进行预取模式和激进度的调节;e、攻击预取过滤:对可能造成共享数据无效化的预取请求进行过滤。<!--1-->
Description
技术领域
本发明涉及多核存储系统的性能优化领域,具体涉及一种线程感知多核数据预取自调方法。
背景技术
存储访问延迟已经成为处理器性能提升的关键瓶颈之一。为降低存储访问延迟导致的性能损失,研究人员提出了硬件数据预取机制。预取是指在处理器访问指令或数据前就把它们从片外存储器取到高速缓存(cache)或预取缓冲上。大量的应用特性分析表明,指令和数据的访问模式在一定情况下具有很强的规律性,这使得提前预测访问地址并取回相应数据变得可能。数据预取技术已经被证明能够在传统单核处理器上有效提升性能。而在多核处理器系统上,核与核之间通常共享末级高速缓存(lastlevelcache,LLC)和片外存储器,所以来自各个核的存储请求会相互冲突。这一冲突会随着预取技术的引入而进一步增加。由于预取请求同正常请求一样需要经过片上网络到达片外存储器,并将结果返回到高速缓存(cache)上,所以预取引擎增加了额外的高速缓存(cache)容量竞争和存储带宽竞争,大量无效的预取请求会明显降低系统性能,并导致功耗的增加,这就限制了预取的有益作用在多核上的发挥。
通过有效管理共享资源可以减少核间资源冲突,通过操作系统进行线程调度以及基于动态信息反馈进行自适应调节等方式来减少各应用或各线程对共享资源的竞争。这些装置能够在某些应用中减少多核上预取导致的资源竞争。但是已有的装置方案没有考虑与应用相关的处理器核间一致性和多线程应用。在多线程应用中,对于传统的数据预取机制会面临新的问题。首先,多个线程间通常会有部分共享数据。一些应用中,具有多个共享者的高速缓存(cache)块比例能够达到40%以上。为了维护高速缓存(cache)一致性,一旦共享数据被替换,那么该数据共享者的私有拷贝需要被无效化。由于预取会导致高速缓存(cache)的替换,因而各线程的预取请求可能影响其他线程私有高速缓存(cache)的命中情况。其次,在实际多线程编程模型中,各个线程可能通过协作方式处理同一份数据,也可能彼此相互独立,执行不同任务。
发明内容
本发明所要解决的技术问题是提供一种减少多核多线程应用中预取引擎带来的资源冲突的线程感知多核数据预取自调方法。
为了解决上述技术问题,本发明提供一种线程感知多核数据预取自调方法,包括以下步骤:a、动态反馈信息统计:通过硬件计数器统计各线程的存储访问行为和预取行为信息;b、指标计算:根据动态反馈信息统计的结果计算各线程用以衡量其竞争程度的访存特性和预取特性指标;c、线程分类:根据各线程的访存特性指标和预取特性指标对线程进行分类;d、预取调节:根据线程分类结果进行预取模式和激进度的调节;e、攻击预取过滤:对可能造成共享数据无效化的预取请求进行过滤。
作为对本发明的线程感知多核数据预取自调方法的改进:所述步骤a中动态反馈信息通过末级高速缓存、缺失状态处理寄存器组和硬件计数器进行统计;所述统计结果包括线程的末级高速缓存缺失次数、末级高速缓存数据预取次数、末级高速缓存准确数据预取次数和末级高速缓存迟到数据预取次数。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:所述的每条末级高速缓存行设置1比特预取标志位,在由预取引擎请求的数据填入高速缓存行时,该标志位置为1,当发生高速缓存命中时,如果该位为1,则将有效预取次数计数器加1,并将该位清零;为每项缺失状态处理寄存器组入口设置1比特预取标志位,在为预取请求分配新项时,该标志位置为1,当发起一次预取请求时,缺失状态处理寄存器组将该请求记录在表项中,并置预取标志位为1,当该请求的数据返回时,清除该项记录;每次发生高速缓存缺失时,检查该地址是否在缺失状态处理寄存器组中有记录,如果有记录且预取标志位为1,则将迟到预取次数计数器加1,并将该位清零。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:所述步骤b中访存特性和预取特性指标包括:每千条指令末级高速缓存缺失次数、每千条指令末级高速缓存数据预取次数、末级高速缓存数据预取准确率和末级高速缓存数据预取迟到率。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:所述步骤c的线程分类包括少访存线程、多访存少预取线程、多预取高准确率线程、多预取高准确率/迟到率线程以及多预取低准确率线程。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:所述步骤d预取调节包括以下步骤:A、翻转多访存少预取线程预取引擎的开关状态;B、若只与少访存线程并发执行,则增加多预取高准确率线程;C、增加预取激进程度和多预取高准确率/迟到率线程的预取距离;D、若与除少访存线程以外的任何类型线程并发执行,则减少多预取低准确率线程的预取激进程度。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:所述步骤e的预取过滤步骤如下:A、判断预取请求是否为攻击预取;B、在线性预取模式下,当检测到攻击预取时,先将预取地址记录在模式表中,以防止线性流被破坏,然后再将其丢弃;C、在链式预取模式下,若攻击预取的发现时机为一级高速缓存预取缺失或二级高速缓存预取请求发起时,则并不立即丢弃,而是在预取数据返回后,将该值作为链式预取中后续节点的地址继续进行预取,然后丢弃该值。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:在三种情况下判断预取请求为攻击预取:A、一级高速缓存预取请求在末级高速缓存上缺失时,缺失地址索引到共享二级数据块;B、末级高速缓存发起预取请求时,预取地址索引到共享二级数据块;
C、当A和B的数据请求返回时,即将替换共享数据块。
作为对本发明的线程感知多核数据预取自调方法的进一步改进:通过改变预取的距离和深度来调节所述的预取激进程度。
本发明的线程感知多核数据预取自调方法可以解决预取导致的线程间数据无效化问题,进而提高私有数据cache命中率。本发明的线程感知多核数据预取自调方法还可以减少线程间预取对共享资源的竞争,进而在充分提高预取性能的同时降低整体系统的能量时间积。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细说明。
图1为处理器101的结构示意图;
图2为本发明线程感知多核数据预取自调方法的一种实施实施装置的系统结构图;
图3为图2的一种实施方式,即在线性模式下过滤攻击预取的结构示意图;
图4为图2的另外一种实施方式,即在链式模式下过滤攻击预取的示意图。
具体实施方式
实施例1、图1和图2结合给出一种线程感知多核数据预取自调方法;包括一种多核线程感知多核数据预取装置;如图1所示,多核线程感知多核数据预取装置包括多个(至少两个)处理器101和路由器103;处理器101和处理器101之间通过片上互连网络进行连接。
如图2所示,每个处理器101都包括有若干个节点131(即Tile)、若干个一级高速缓存(即图2中的一级数据高速缓存102)和一个二级高速缓存(即图2中的共享二级高速缓存105),每个节点131与每个一级高速缓存均为一一对应的关系,即每个节点131独立拥有的私有的一级数据高速缓存102;所有的节点131均共享二级高速缓存(即共享二级高速缓存105,这里假定为片上最末高速缓存LLC),若干个节点131(Tile)、若干个一级高速缓存和一个二级高速缓存在物理上分布,并通过MESI协议维护一致性。以上所述的任意两个节点131之间均设置路由器103,任意两个节点131之间均通过路由器103通讯。为图面整洁,省略图1中节点131与路由器103的连接关系。
以上所述的节点131包括处理器执行单元130和基于线程分类指导(threadclassifyingdirected,TCD)的预取参数调节装置(即图2中的线程分类调节组件107),线程分类调节组件107包括预取过滤器的多模式硬件数据预取引擎(即图2中的多模式预取引擎109),用于记录应用动态反馈信息的物理统计模块(即图2中的统计模块111),以及用于进行线程分类和预取调节的系统软件模块120(即图2中的线程分类110和预取调节108)。多模式预取引擎109包括攻击过滤器202、一级数据预取104和二级数据预取106,多模式预取引擎109提供线性流和链式流两种模式。
一级数据高速缓存102分别与处理器执行单元130、共享二级高速缓存105和一级数据预取104信号连接,共享二级高速缓存105还分别与统计模块111和二级数据预取106(共享二级高速缓存105通过攻击过滤器202与二级数据预取106信号连接)信号连接;预取调节108分别与一级多模式数据预取104、二级多模式数据预取106、线程分类110以及统计模块111信号连接,一级多模式数据预取104和二级多模式数据预取106还分别与统计模块111和下一层存储结构112信号连接,线程分类110还与统计模块111信号连接。以上所述的统计模块111内包括有四个计数器,分别统计各线程LLC缺失次数、LLC数据预取次数、LLC准确数据预取次数和LLC迟到数据预取次数。
通过以上系统可以实现本发明的多核线程感知多核数据预取方法,该方法是通过以下步骤实现的:
1、动态反馈信息统计:
通过物理统计模块(即图2中的统计模块111)统计各线程LLC缺失次数、LLC数据预取次数、LLC准确数据预取次数和LLC(即共享二级高速缓存105)迟到数据预取次数(LLC即lastlevelcache,末级高速缓存)。
对LLC准确数据预取次数的统计,每条高速缓存(cache)行(每条高速缓存行指的是一级数据高速缓存102和共享二级高速缓存105上的数据块,即一级数据高速缓存102和共享二级高速缓存105设置1比特预取标志位)设置1比特预取标志位,在由多模式预取引擎109(一级数据预取104和二级数据预取106)请求的数据填入高速缓存行时,该标志位置为1,当发生cache命中时,如果该位为1,则将统计模块111内的有效预取次数计数器加1,并将该位清零。
对LLC迟到数据预取次数的统计,需要为每项缺失状态处理寄存器组(missstatusholdingregister,MSHR)入口设置1比特预取标志位,在为预取请求分配新项时,该标志位置为1,当发起一次预取请求时,MSHR将该请求记录在表项中,并置预取标志位为1,当该请求的数据返回时,清除该项记录。每次发生cache缺失时,检查该地址是否在MSHR中有记录,如果有记录且预取标志位为1,则将统计模块111内的迟到预取次数计数器加1,并将该位清零。
2、根据步骤1的动态反馈信息,线程分类110计算各线程的访存特性和预取特性指标(访存特性和预取特性指标用以衡量各线程的竞争程度)。
指标计算:统计模块111根据动态反馈信息计算各线程的访存特性和预取特性指标。访存特性和预取特性指标包括每千条指令LLC缺失次数(MPKI)、每千条指令LLC数据预取次数(PPKI)、LLC数据预取准确率(PA)和LLC数据预取迟到率(PL)。
上述访存特性和预取特性指标以及相应计算公式如表所示:
上述访存特性和预取特性指标以及相应计算公式如表1所示:
表1
指标 | 计算公式 |
每千条指令LLC缺失次数(MPKI) | 缺失数÷指令数×1000 |
每千条指令LLC数据预取次数(PPKI) | 预取数÷指令数×1000 |
LLC数据预取准确率(PA) | 有效预取数÷预取数 |
LLC数据预取迟到率(PL) | 迟到预取数÷有效预取数 |
缺失数即LLC缺失次数,预取数即LLC数据预取次数,有效预取数即LLC准确数据预取次数,迟到预取数即LLC迟到数据预取次数,指令数即1000。
3、根据步骤2的各线程访存特性指标和预取特性指标,线程分类110再将线程分为五种类型:
(A):少访存线程(LightMemoryRequirement,LM)。
(B):多访存少预取线程(MassMemoryAndLightPrefetchingRequirement,MMLP)。
(C):多预取高准确率线程(MassPefetchingAndHighAccuracy,MPHA),
(D):多预取高准确率/迟到率线程(MassPefetchingAndHighAccuracy/Lateness,MPHALA)。
(E):多预取低准确率线程(MassPrefetchingLowAccuracy,MPLA)。
五种类型的划分依据如表2所示:
表2
表2中,T1、T2、T3和T4表示相应的判决门限,可以人为设置或通过某种动态学习的方法自适应调整。如下表3中表示的本实施例中的划分依据。
表3
4、根据步骤3的线程分类结果通过预取调节108进行预取模式和激进度的调节(对预取激进程度的调节包括对预取的距离和深度进行调节),预取的调节策略遵循以下策略:
a)翻转MMLP线程预取引擎的开关状态。
b)若只与LM线程并发执行,则增加MPHA线程的预取激进程度和MPHALA线程的预取距离。
c)若与除LM线程以外的任何类型线程并发执行,则减少MPLA线程的预取激进程度。
上述对预取激进度的调节是增加或减少激进度的级别,各级别激进程度如表4所示:
表4
级别 | 距离 | 深度 |
1 | 4 | 1 |
2 | 8 | 1 |
3 | 16 | 2 |
4 | 32 | 4 |
5 | 64 | 8 |
5、通过攻击过滤器202对可能造成共享数据无效化的预取(称为攻击预取)请求进行过滤,攻击过滤器202在三种情况下判断预取请求是否为攻击预取:
1)L1预取请求在LLC上缺失时,缺失地址索引到共享二级数据块(共享二级高速缓存105内)。
2)LLC发起预取请求时,预取地址索引到共享二级数据块。
3)当1)和2)的数据请求返回时,即将替换共享数据块。
在上述对攻击预取进行过滤时,针对线性流和链式流分别采用两种过滤机制:
A)在线性模式下,当检测到攻击预取时先将预取地址记录在模式表(PatternTable,PTB)中,以防止线性流被破坏,然后再将其丢弃。以图3为例,某线程的一级预取引擎在地址A处发现线性流后开始进行预取,假设在A+3N处检测到攻击预取,于是将该地址记录在模式表上。此后对A+3N地址的访问会命中模式表并触发此条流向后发起预取。
B)在链式模式下,若攻击预取的发现时机为一级预取缺失或二级预取请求发起时,则并不立即丢弃,而是在预取数据返回后,将该值作为链式预取中后续节点131的地址继续进行预取,然后丢弃该值。以图4为例,链式流最初形成于节点A,随后依次对B、C、D进行预取,由于对C的预取为攻击预取,因而该请求的返回值只用于预取节点D,而不替换数据块。
最后,还需要注意的是,以上列举的仅是本发明的一个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
Claims (9)
1.线程感知多核数据预取自调方法;其特征是:包括以下步骤:
a、动态反馈信息统计:通过硬件计数器统计各线程的存储访问行为和预取行为信息;
b、指标计算:根据动态反馈信息统计的结果计算各线程用以衡量其竞争程度的访存特性和预取特性指标;
c、线程分类:根据各线程的访存特性指标和预取特性指标对线程进行分类;
d、预取调节:根据线程分类结果进行预取模式和激进度的调节;
e、攻击预取过滤:对可能造成共享数据无效化的预取请求进行过滤。
2.根据权利要求1所述的线程感知多核数据预取自调方法,其特征是:所述步骤a中动态反馈信息通过末级高速缓存、缺失状态处理寄存器组和硬件计数器进行统计;
所述统计结果包括线程的末级高速缓存缺失次数、末级高速缓存数据预取次数、末级高速缓存准确数据预取次数和末级高速缓存迟到数据预取次数。
3.根据权利要求2所述的线程感知多核数据预取自调方法,其特征是:每条末级高速缓存行设置1比特预取标志位,在由预取引擎请求的数据填入高速缓存行时,该标志位置为1,当发生高速缓存命中时,如果该位为1,则将有效预取次数计数器加1,并将该位清零;
为每项缺失状态处理寄存器组入口设置1比特预取标志位,在为预取请求分配新项时,该标志位置为1,当发起一次预取请求时,缺失状态处理寄存器组将该请求记录在表项中,并置预取标志位为1,当该请求的数据返回时,清除该项记录;每次发生高速缓存缺失时,检查缺失地址是否在缺失状态处理寄存器组中有记录,如果有记录且预取标志位为1,则将迟到预取次数计数器加1,并将该位清零。
4.根据权利要求3所述的线程感知多核数据预取自调方法,其特征是:所述步骤b中访存特性和预取特性指标包括:每千条指令末级高速缓存缺失次数、每千条指令末级高速缓存数据预取次数、末级高速缓存数据预取准确率和末级高速缓存数据预取迟到率。
5.根据权利要求4所述的线程感知多核数据预取自调方法,其特征是:所述步骤c的线程分类包括少访存线程、多访存少预取线程、多预取高准确率线程、多预取高准确率/迟到率线程以及多预取低准确率线程。
6.根据权利要求5所述的线程感知多核数据预取自调方法,其特征是:所述步骤d预取调节包括以下步骤:
A、翻转多访存少预取线程预取引擎的开关状态;
B、若只与少访存线程并发执行,则增加多预取高准确率线程;
C、增加预取激进程度和多预取高准确率/迟到率线程的预取距离;
D、若与除少访存线程以外的任何类型线程并发执行,则减少多预取低准确率线程的预取激进程度。
7.根据权利要求6所述的线程感知多核数据预取自调方法,其特征是:所述步骤e的预取过滤步骤如下:
A、判断预取请求是否为攻击预取;
B、在线性预取模式下,当检测到攻击预取时,先将预取地址记录在模式表中,以防止线性流被破坏,然后再将其丢弃;
C、在链式预取模式下,若攻击预取的发现时机为一级高速缓存预取缺失或二级高速缓存预取请求发起时,则并不立即丢弃,而是在预取数据返回后,将该值作为链式预取中后续节点的地址继续进行预取,然后丢弃该值。
8.根据权利要求7所述的线程感知多核数据预取自调方法,其特征是:在三种情况下判断预取请求为攻击预取:
D、一级高速缓存预取请求在末级高速缓存上缺失时,缺失地址索引到共享二级数据块;
E、末级高速缓存发起预取请求时,预取地址索引到共享二级数据块;
F、当D和E的数据请求返回时,即将替换共享数据块。
9.根据权利要求8所述的线程感知多核数据预取自调方法,其特征是:通过改变预取的距离和深度来调节所述的预取激进程度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310127383.4A CN103235764B (zh) | 2013-04-11 | 2013-04-11 | 线程感知多核数据预取自调方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310127383.4A CN103235764B (zh) | 2013-04-11 | 2013-04-11 | 线程感知多核数据预取自调方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103235764A CN103235764A (zh) | 2013-08-07 |
CN103235764B true CN103235764B (zh) | 2016-01-20 |
Family
ID=48883809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310127383.4A Active CN103235764B (zh) | 2013-04-11 | 2013-04-11 | 线程感知多核数据预取自调方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103235764B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105579978B (zh) | 2013-10-31 | 2020-06-09 | 英特尔公司 | 用于动态控制高速缓存存储器的寻址模式的方法、设备和系统 |
CN104750696B (zh) * | 2013-12-26 | 2018-07-20 | 华为技术有限公司 | 一种数据预取方法及装置 |
US9665491B2 (en) * | 2014-07-17 | 2017-05-30 | Samsung Electronics Co., Ltd. | Adaptive mechanism to tune the degree of pre-fetches streams |
KR101757098B1 (ko) * | 2014-12-14 | 2017-07-26 | 비아 얼라이언스 세미컨덕터 씨오., 엘티디. | 메모리 액세스에 의한 효용성 기반 공격성 레벨 프리패칭 |
WO2016097809A1 (en) * | 2014-12-14 | 2016-06-23 | Via Alliance Semiconductor Co., Ltd. | Multiple data prefetchers that defer to one another based on prefetch effectiveness by memory access type |
US20170017576A1 (en) * | 2015-07-16 | 2017-01-19 | Qualcomm Incorporated | Self-adaptive Cache Architecture Based on Run-time Hardware Counters and Offline Profiling of Applications |
CN105955709B (zh) * | 2016-04-16 | 2018-02-27 | 浙江大学 | 基于机器学习的预取能效优化自适应装置及方法 |
CN107783911B (zh) * | 2016-08-31 | 2021-06-08 | 华为技术有限公司 | 一种数据过滤方法及终端设备 |
CN111506521B (zh) * | 2019-01-31 | 2023-10-20 | 华为技术有限公司 | 一种存储器、数据请求写入方法及控制器 |
CN110806990A (zh) * | 2019-10-15 | 2020-02-18 | 四川豪威尔信息科技有限公司 | 一种存储器集成电路及其预取方法 |
CN112540934B (zh) * | 2020-12-14 | 2022-07-29 | 山东师范大学 | 保证多个延迟关键程序共同执行时服务质量的方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102707966A (zh) * | 2012-04-12 | 2012-10-03 | 腾讯科技(深圳)有限公司 | 加速操作系统启动的方法及装置、预取信息生成方法及装置和终端 |
CN102841860A (zh) * | 2012-08-17 | 2012-12-26 | 珠海世纪鼎利通信科技股份有限公司 | 一种大数据量信息存储与访问方法 |
-
2013
- 2013-04-11 CN CN201310127383.4A patent/CN103235764B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102707966A (zh) * | 2012-04-12 | 2012-10-03 | 腾讯科技(深圳)有限公司 | 加速操作系统启动的方法及装置、预取信息生成方法及装置和终端 |
CN102841860A (zh) * | 2012-08-17 | 2012-12-26 | 珠海世纪鼎利通信科技股份有限公司 | 一种大数据量信息存储与访问方法 |
Non-Patent Citations (2)
Title |
---|
基于线程的多路径数据预取技术研究;欧国东、王永文、张民选;《计算机研究与发展》;20120522;第48卷(第zl期);328-334 * |
结合访存失效队列状态的预取策略;郇丹丹、李祖松、胡伟武、刘志勇;《计算机学报》;20070701;第30卷(第7期);1104-1114 * |
Also Published As
Publication number | Publication date |
---|---|
CN103235764A (zh) | 2013-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103235764B (zh) | 线程感知多核数据预取自调方法 | |
JP6855642B1 (ja) | プリフェッチャベースの投機的ダイナミックランダムアクセスメモリ読み出し要求技術 | |
US7865669B2 (en) | System and method for dynamically selecting the fetch path of data for improving processor performance | |
US9239789B2 (en) | Method and apparatus for monitor and MWAIT in a distributed cache architecture | |
CN102023931B (zh) | 一种自适应缓存预取方法 | |
US6983356B2 (en) | High performance memory device-state aware chipset prefetcher | |
CN107810491B (zh) | 用于管理并控制存储器高速缓存的方法和系统 | |
EP3388947B1 (en) | Memory resource optimization method and apparatus | |
US8417891B2 (en) | Shared cache memories for multi-core processors | |
US10133678B2 (en) | Method and apparatus for memory management | |
US20130332705A1 (en) | Profiling asynchronous events resulting from the execution of software at code region granularity | |
US7640399B1 (en) | Mostly exclusive shared cache management policies | |
US20070239940A1 (en) | Adaptive prefetching | |
CN102150138A (zh) | 高速缓存过滤方法和装置 | |
CN106569960B (zh) | 一种混合主存的末级缓存管理方法 | |
CN105068940A (zh) | 一种基于Bank划分的自适应页策略确定方法 | |
CN104460941B (zh) | 一种降低主存存储器满负荷运行功耗的方法 | |
US8667221B2 (en) | Detection of streaming data in cache | |
US9128856B2 (en) | Selective cache fills in response to write misses | |
Kiefer et al. | ERIS live: a numa-aware in-memory storage engine for tera-scale multiprocessor systems | |
US7603522B1 (en) | Blocking aggressive neighbors in a cache subsystem | |
US11016892B2 (en) | Cache system and operating method thereof | |
Lira et al. | Replacement techniques for dynamic NUCA cache designs on CMPs | |
Yu et al. | A thread-aware adaptive data prefetcher | |
Titos et al. | Directory-based conflict detection in hardware transactional memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |