一种面向高性能的异构多核共享cache缓冲管理方法技术

技术编号:16779228 阅读:42 留言:0更新日期:2017-12-12 23:40
本发明专利技术公开一种面向高性能的异构多核共享cache缓冲管理方法,首先在共享末级缓存L2级Cache(LLC)的GPU侧建立一个与其结构相同的缓冲buffer,GPU消息首先访问buffer,从而达到过滤GPU流请求的目的,为CPU应用程序腾出LLC空间。在加入buffer的基础上,针对CPU应用程序和GPU应用程序不同的特性,采用合理的替换策略,增加cache命中率。最后,调整buffer的大小,根据IPC划分指标在运行前改变buffer大小,找到最优性能方案,从而达到提升系统性能的目的。

A high performance heterogeneous multi-core shared cache buffer management method

The invention discloses a method for high performance heterogeneous multicore shared cache buffer management method, first in the final L2 Cache shared cache (LLC) of the GPU side to build a structure and the same buffer buffer, GPU news first visit buffer, so as to achieve the purpose of the request GPU stream filtering, CPU application for LLC space. On the basis of adding buffer, in view of the different features of the CPU application and the GPU application, a reasonable replacement strategy is adopted to increase the hit rate of the cache. Finally, adjust the size of buffer, change the size of buffer before running according to the IPC partition index, find the best performance plan, so as to achieve the purpose of improving system performance.

【技术实现步骤摘要】
一种面向高性能的异构多核共享cache缓冲管理方法
本专利技术属于计算机体系缓存系统结构领域,具体涉及一种面向高性能的异构多核共享cache缓冲管理方法。
技术介绍
随着半导体工艺的进步,以及单处理器所碰到的物理极限和功耗等无法逾越的障碍,体系结构技术发生了深刻的变革。经过最近几年的不断研究与发展,以多核处理器为代表的先进体系结构已经逐渐取代单核处理器成为提高处理器性能的主要途径。多核处理器在一个芯片中集成多个处理器核,这些处理器核具有相同或者不同的功能和结构,以一种有效的方式集成在同一个芯片中,并以有效的划分方式将应用程序分配给不同的微处理器核进行并行处理,从而提高微处理器系统的性能。多核体系结构强调结构的层次化、功能的模块化与分布化,它让每个功能部件都尽量简单,部件内部尽可能保持连线的局部性。较之单核处理器,多核处理器具有很多天然的优势。多核处理器可以在较低的时钟频率下提供单核处理器需要很高时钟频率才能达到的计算性能,而较低的时钟频率也可以很好地满足功耗、散热等方面的限制。此外,多核处理器的本质是采用相对较简单的多个计算内核并行工作,以提供较高的计算能力。因此,设计者在设计多核处本文档来自技高网...
一种面向高性能的异构多核共享cache缓冲管理方法

【技术保护点】
一种面向高性能的异构多核LLC缓冲管理方法,其特征在于,包括以下步骤:步骤1,实现CPU请求与GPU请求区分,跟踪访存请求,使用标志位CPUorGPU来区分不同核心的访存请求;步骤2,在共享末级缓存L2级Cache(LLC)的GPU侧建立一个与其结构相同的缓冲buffer;步骤3,根据不同核心访存请求的标志位CPUorGPU决定访存请求映射到L2Cache地址还是buffer地址;步骤4,实现GPU请求的过滤,包括以下步骤:步骤4.1,缓冲过滤在L2Cache的请求缓冲队列L1RequestToL2Cache中,判断CPUorGPU消息标志位,如果该请求是来自CPU核心的L1级Cache,将该...

【技术特征摘要】
1.一种面向高性能的异构多核LLC缓冲管理方法,其特征在于,包括以下步骤:步骤1,实现CPU请求与GPU请求区分,跟踪访存请求,使用标志位CPUorGPU来区分不同核心的访存请求;步骤2,在共享末级缓存L2级Cache(LLC)的GPU侧建立一个与其结构相同的缓冲buffer;步骤3,根据不同核心访存请求的标志位CPUorGPU决定访存请求映射到L2Cache地址还是buffer地址;步骤4,实现GPU请求的过滤,包括以下步骤:步骤4.1,缓冲过滤在L2Cache的请求缓冲队列L1RequestToL2Cache中,判断CPUorGPU消息标志位,如果该请求是来自CPU核心的L1级Cache,将该访存请求映射到LLC,如果该请求是来自GPU核心的L1级Cache,将该访存请求先映射到buffer,若未在buffer中命中,再映射到LLC;步骤4.2,静态调整改变buffer大小,将其分别改为12%LLC大小、25%LLC大小和50%LLC大小,统计共享缓存CPU和GPU程序各自的单位周期内执行的指令数量(InstructionsPerCycle简称IPC),找到性能最优的buffer大小;步骤5,将合理的替换策略应用于buffer中,当请求访问buffer时,使用更适合GPU应用程序的改进的LRU替换算法(PseudoLRU)将不常用的块替换掉。2.如权利要求1所述的面向高性能的异构多核LLC缓冲管理方法,其特征在于,步骤2具体为:在配置文件中定义两个L2Cache,在每个L2CacheController上新增BufID编号位,并规定BufID为0的L2Cache为LLC,BufID为1的L2Cache为Buffer,Buffer的大小为编LLC大小的6%。3.如权利...

【专利技术属性】
技术研发人员:方娟张希蓓陈欢欢刘士建
申请(专利权)人:北京工业大学
类型:发明
国别省市:北京,11

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

1