System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种降低混合内存架构中性能干扰的硬件资源分配方法组成比例_技高网
当前位置: 首页 > 专利查询>河海大学专利>正文

一种降低混合内存架构中性能干扰的硬件资源分配方法组成比例

技术编号:40903213 阅读:2 留言:0更新日期:2024-04-18 14:34
本发明专利技术公开了一种降低混合内存架构中性能干扰的硬件资源分配方法。在基于动态随机存取内存(DRAM)与非易失性内存(NVM)部署的混合内存架构下,不同应用程序因共享内存总线而对内存带宽产生争用,造成性能干扰。为了解决这个问题,本发明专利技术提出一种混合多种带宽调节机制的技术,用于动态调整应用程序所占用的实时资源数。本发明专利技术充分利用内存带宽与最后一级缓存路数(LLC Ways)、内存带宽分配节流值(MBA Throttling values)、CPU核心数(Core Number)之间的相关性,监测应用程序实时干扰程度,并基于有限状态机动态调整应用程序所占用的资源数,进一步地减少/增加应用程序实时所占用的内存带宽,避免应用程序占用过多的带宽,从而有效缓解混合内存架构下的内存带宽争用。

【技术实现步骤摘要】


技术介绍

1、共享资源的争用被认为是导致应用程序协同运行时性能下降的主要原因。当多个应用程序并发运行时,它们因为共享内存总线而相互竞争有限的内存带宽资源,导致系统性能下降。资源调度通过动态改变应用程序协同运行时所分配的共享资源,避免某些应用程序占用过多的资源,被认为是缓解共享资源争用的有效方法。高效的资源调度方法可以减少对共享资源产生的争用,减小性能干扰,提高整体效率和资源利用率。

2、非易失的、大容量的、可字节寻址的nvm有望解决dram面临的“存储墙”问题,第一款商用nvm(intel optane dc persistent memory)于2019年发布,并部署在云环境中。越来越多的nvm键值存储系统、nvm数据库、nvm编程库被提出和研究,进而加速了nvm的广泛部署。但nvm由于自身的特性目前还不足以完全替代dram,因此业界提出能充分发挥dram和nvm优势的混合内存架构。

3、尽管nvm和dram混合内存架构有着广阔的发展前景,但是要将其推广为广泛使用的主存系统仍然需要克服许多挑战。首先,在dram和nvm混合内存架构中,由于dram和nvm共用内存总线,导致访问nvm的应用程序和访问dram的应用程序对内存带宽产生争用,造成性能干扰,减缓应用程序的吞吐量。其次,虽然在传统的dram架构下,用于缓解共享资源争用的方法已经相对成熟,但是由于在混合内存架构下,内存带宽的争用与访问的内存种类和不同类型的读写请求数均有关,这些方法并不能有效的用于缓解混合内存架构下的内存带宽争用。


技术实现思路

1、针对现有技术的缺陷,本专利技术的目的是提供一种降低混合内存架构中性能干扰的硬件资源分配方法

2、根据本专利技术提供的一种降低混合内存架构中性能干扰的硬件资源分配方法,包括:

3、资源管理器:在dram和nvm部署的混合内存架构下,资源管理器分为dram管理器和nvm管理器,其中,dram管理器用于记录系统当前可用的资源数和运行在dram上的应用程序实时所占用的资源数,包括最后一级缓存的路数(llc ways)、内存带宽分配技术的节流值(mba throttling values)、cpu核心数(core number);nvm管理器用于记录系统当前可用的资源数和运行在nvm上的应用程序实时所占用的资源数,包括最后一级缓存的路数(llcways)、内存带宽分配技术的节流值(mba throttling values)、cpu核心数(core number);

4、性能监控器:在动态随机存取内存(dram)与非易失性内存(nvm)部署成appdirect模式(简称ad模式)的混合内存架构下,采用硬件性能分析工具perf(performance),基于应用程序粒度,监测应用程序单独运行时的每秒执行指令数(ipssolo),协同运行时的每秒执行指令数(ipsco-run);

5、干扰检测器:根据性能监控器监测的应用程序的每秒执行指令数(ipssolo和ipsco-run),基于干扰检测模型计算与其协同运行的其他应用程序对其所产生的性能干扰;

6、资源协调器:充分利用应用程序占用的内存带宽与最后一级缓存(llc)、内存带宽分配技术(mba)、cpu核心数(core number)之间的相关性,根据干扰检测器的计算结果,基于有限状态机(fsm)动态调整应用程序所占用的资源数,包括最后一级缓存的路数(llcways)、内存带宽分配的节流值(mba throttling values)、cpu核心数(core number)。

7、优选的,所述资源管理器包括:

8、组成部分a1:在dram和nvm部署的混合内存架构下,dram管理器记录系统可用的资源数和运行在dram上的应用程序实时所占用的资源数,包括最后一级缓存的路数(llcways)、内存带宽分配技术的节流值(mba throttling values)、cpu核心数(core number)。

9、组成部分a2:在dram和nvm部署的混合内存架构下,nvm管理器记录系统可用的资源数和运行在nvm上的应用程序实时所占用的资源数,包括最后一级缓存的路数(llcways)、内存带宽分配技术的节流值(mba throttling values)、cpu核心数(core number)。

10、优选的,所述性能监控器包括:

11、组成部分b1:采用硬件性能分析工具perf(performance)基于应用程序单独运行时的进程id监测应用程序单独运行时的每秒执行指令数(ips),包括单独运行在dram上和单独运行在nvm上。

12、组成部分b2:采用硬件性能分析工具perf(performance)基于应用程序协同运行时的进程id监测应用程序协同运行时,不同应用程序在不同时刻的每秒执行指令数(ips)。

13、优选的,所述干扰检测器包括:

14、组成部分c1:基于性能干扰模型以运行在dram上的应用程序单独运行时的每秒执行指令数(ips)和协同运行时的每秒执行指令数(ips)作为参数,计算在某一时刻运行在dram上的应用程序所受到的性能干扰。

15、组成部分c2:基于性能干扰模型以运行在nvm上的应用程序单独运行时的每秒执行指令数(ips)和协同运行时的每秒执行指令数(ips)作为参数,计算在某一时刻运行在nvm上的应用程序所受到的性能干扰。

16、优选的,所述资源协调器步骤包括:

17、步骤d1:获取应用程序单独运行时每秒请求数,包括和获取应用程序协同运行时,在t时刻的每秒请求数,包括和

18、步骤d2:获取应用程序协同运行时的性能降级deg,包括degdram和degnvm;

19、步骤d3:按deg升序排列,调整deg最小的应用程序所占用的最后一级缓存路数(llc ways);

20、步骤d4:计算调整后其余应用程序的性能收益δ,并判断δ是否大于等于0;如果是,继续调整llc ways,并返回步骤d4;否则返回步骤d5;

21、步骤d5:按deg升序排列,调整deg最小的应用程序上的内存带宽节流值(mbathrottling values);

22、步骤d6:计算调整后其余应用程序的性能收益δ,并判断δ是否大于等于0;如果是,继续调整mba节流值,并返回步骤d6,否则返回步骤d7;

23、步骤d7:判断调整后的应用程序的mba节流值是否为10%,如果是,返回步骤d8,否则结束;

24、步骤d8:按deg升序排列,调整deg最小的应用程序上的应用程序占用的cpu核心数(core number);

25、步骤d9:计算调整后其余应用程序的性能收益δ,并判断δ是否大于等于0;如果是,继续调整core number,并返回步骤d9;否则结束;

26、根据本专利技术提供的本文档来自技高网...

【技术保护点】

1.一种降低混合内存架构中性能干扰的硬件资源分配方法,其特性在于,包括:

2.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,资源管理器:

3.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,性能监控器:

4.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,干扰检测器:

5.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,资源协调器:

6.一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,包括:

【技术特征摘要】

1.一种降低混合内存架构中性能干扰的硬件资源分配方法,其特性在于,包括:

2.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,资源管理器:

3.根据权利要求1所述的一种降低混合内存架构中性能干扰的硬件资源分配方法,其特征在于,性能监控器:

...

【专利技术属性】
技术研发人员:蔡淼黄鸭文
申请(专利权)人:河海大学
类型:发明
国别省市:

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

1