基于程序阶段行为的共享缓存动态划分方法研究
发布时间:2020-03-01 23:45
【摘要】:在多核共享缓存结构下,当多个应用程序并行执行时会竞争缓存,并且污染其它应用程序在缓存中的数据,导致系统的整体性能下降。研究发现,对共享缓存进行划分,可以有效改善缓存竞争和污染所带来的负面影响。静态缓存划分方法在应用程序执行前就划分好缓存,并且在程序执行过程中保持不变,这种方法简单但是缺乏灵活性,并且当应用程序的行为非常复杂时不一定能提升系统的性能;动态缓存划分方法根据程序运行时信息动态调整缓存的划分比例,但是难以确定缓存动态调整的最佳时机以及缓存分配的比例。 针对上述问题,基于程序阶段行为的共享缓存动态划分方法根据程序的阶段变化确定缓存划分的时机,利用在线生成的缺失率曲线制定缓存分配的比例。通过对程序的阶段行为进行分类,只需对每一种不同的阶段行为计算一次缺失率曲线,由于程序的某些阶段行为在程序的执行过程中可能重复出现,这样做可以减少计算缺失率曲线的开销。当程序的阶段发生转变时,根据程序的缺失率曲线制定缓存划分策略,对程序的缓存进行重新分配,为缓存划分时机提供依据,避免对缓存进行盲目的调整。利用现代商业处理器上集成的硬件计数器单元跟踪程序的运行时特征信息,利用这些信息分析程序的阶段行为和计算缺失率曲线。为了平衡阶段行为分析的准确度和开销,采取粗细粒度结合的阶段行为分析方法,细粒度的对阶段行为进行分类,粗粒度的判断程序的阶段是否转变。 基于阶段行为的共享缓存动态划分系统不需要依赖额外的硬件或者动态插桩系统的支持。采用SPEC CPU2006基准测试程序,,分别测试了静态缓存划分系统和基于程序阶段行为的动态缓存划分系统的性能,结果表明,对于阶段行为颠簸并且对缓存大小敏感的程序,基于阶段行为的动态缓存划分系统与未划分缓存的系统的平均IPC相比,加速比最高达到1.08,能够有效提升系统的性能。
【图文】:
-2 共享缓存动态划分系统功能整个系统的核心模块,它包分策略模块。系统初始化模创建待测应用程序的进程,模块负责读取采样模块得到程序的阶段行为进行分类以析应用程序的访存行为数据率曲线制定缓存分配方案。个子模块,动态采样策略配策模块的初始化条件对硬件样的事件、阀值。数据事件成三个子模块,页面着色,算法对内存页面进行着色,
华 中 科 技 大 学 硕 士 学 位 论 文想是应用程序的阶段行为的持久性和稳定性[43],对于每一种阶段行为,只需要很少一部分程序的访存信息就可以计算它在这个阶段的缺失率曲线[38],接来下序段则可以在划分好的缓存下继续执行,直到它们的阶段行为发生转变。
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP333
本文编号:2584180
【图文】:
-2 共享缓存动态划分系统功能整个系统的核心模块,它包分策略模块。系统初始化模创建待测应用程序的进程,模块负责读取采样模块得到程序的阶段行为进行分类以析应用程序的访存行为数据率曲线制定缓存分配方案。个子模块,动态采样策略配策模块的初始化条件对硬件样的事件、阀值。数据事件成三个子模块,页面着色,算法对内存页面进行着色,
华 中 科 技 大 学 硕 士 学 位 论 文想是应用程序的阶段行为的持久性和稳定性[43],对于每一种阶段行为,只需要很少一部分程序的访存信息就可以计算它在这个阶段的缺失率曲线[38],接来下序段则可以在划分好的缓存下继续执行,直到它们的阶段行为发生转变。
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP333
【参考文献】
相关期刊论文 前3条
1 赵天磊;唐遇星;付桂涛;贾小敏;齐树波;张民选;;利用动态二进制翻译加速应用程序行为特征分析[J];计算机研究与发展;2012年01期
2 杨小溪;高晓彤;张为华;;若干体系结构模拟器加速技术的分析与对比[J];计算机应用与软件;2011年08期
3 喻之斌;金海;邹南海;;计算机体系结构软件模拟技术[J];软件学报;2008年04期
本文编号:2584180
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2584180.html