缓存系统模拟方法、装置、设备和存储介质制造方法及图纸

技术编号:34893616 阅读:21 留言:0更新日期:2022-09-10 13:52
一种缓存系统模拟方法、装置、设备和存储介质。该缓存系统模拟方法包括:获取缓存系统模型;获取指令信息记录,其中,指令信息记录包括多个条目,多个条目中的每个条目包括请求指令以及请求指令对应的第一寻址地址;从指令信息记录读取多个条目中的至少一个条目;使用至少一个条目中的每个条目中的请求指令和第一寻址地址模拟对于缓存系统模型的访问以获取缓存系统模型的统计数据;基于统计数据更新缓存系统模型。该缓存系统模拟方法基于指令信息记录单独对缓存系统进行建模,而不需要CPU或GPU的整个IP进行建模,大大减少了建模的工作量,缩短了模型收敛时间,从而可以快速得到缓存的性能数据。存的性能数据。存的性能数据。

【技术实现步骤摘要】
缓存系统模拟方法、装置、设备和存储介质


[0001]本公开的实施例涉及一种缓存系统模拟方法、装置、设备和存储介质。

技术介绍

[0002]在通常的计算机架构中,程序的指令与数据都保存在内存中,而处理器的运行频率远远高于内存的运行频率,因此,从内存获取数据或者指令需要上百个时钟周期,这往往会造成处理器由于无法继续运行相关指令而空转,造成性能损失。为了运行速度及访问效率,通常采用高速缓冲存储装置(Cache,或简称为缓存)来保存部分数据以供处理器高速读取,这些数据例如可以是最近被访问的数据、根据程序运行规律提前预取的数据等。

技术实现思路

[0003]本公开至少一实施例提供一种缓存系统模拟方法。该方法包括:获取缓存系统模型;获取指令信息记录,其中,所述指令信息记录包括多个条目,所述多个条目中的每个条目包括请求指令以及所述请求指令对应的第一寻址地址;从所述指令信息记录读取所述多个条目中的至少一个条目;使用所述至少一个条目中的每个条目中的所述请求指令和所述第一寻址地址模拟对于所述缓存系统模型的访问以获取所述缓存系统模型的统计数据;基于所述统计数据更新所述缓存系统模型。
[0004]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述使用所述至少一个条目中的每个条目中的所述请求指令和所述第一寻址地址模拟对于所述缓存系统模型的访问以获取所述缓存系统模型的统计数据包括:将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,其中,所述缓存系统模型设置为具有第一配置参数;根据所述计数值获得所述统计数据。
[0005]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述基于所述统计数据更新所述缓存系统模型包括:将所述统计数据与目标数据进行比较以更新所述第一配置参数。
[0006]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述计数值包括第一计数值,所述统计数据包括第一统计值,所述将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,包括:将m个所述第一寻址地址映射到所述缓存系统模型中,m为大于1的整数;将m个所述第一寻址地址与所述缓存系统模型中对应的多个缓存行中的地址段进行比较;响应于i个所述第一寻址地址的比较结果为命中,将所述统计计数器中的所述第一计数值更新为i,i为不大于m的正整数。
[0007]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述根据所述计数值获得所述统计数据包括:根据所述第一计数值获得所述第一统计值为i/m。
[0008]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述目标数据包括第一目标值,所述将所述统计数据与目标数据进行比较以更新所述第一配置参数包括:响应于所述第一统计值大于等于所述第一目标值,输出所述第一配置参数为目标第一配置参
数;或者,响应于所述第一统计值小于所述第一目标值,修改所述第一配置参数。
[0009]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述第一统计值为命中率,所述第一目标值为目标命中率。
[0010]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述计数值包括第二计数值,所述统计数据包括第二统计值,所述将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,包括:将n个所述第一寻址地址映射到所述缓存系统模型中,n为大于1的整数;将n个所述第一寻址地址与所述缓存系统模型中对应的多个缓存行中的地址段进行比较;响应于j个所述第一寻址地址的比较结果为访问冲突,将所述统计计数器中的所述第二计数值更新为j,j为不大于n的正整数。
[0011]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述根据所述计数值获得所述统计数据包括:根据所述第二计数值获得所述第二统计值为j/n。
[0012]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述目标数据包括第二目标值,所述将所述统计数据与目标数据进行比较以更新所述第一配置参数,包括:响应于所述第二统计值小于等于所述第二目标值,输出所述第一配置参数为目标第一配置参数;或者,响应于所述第二统计值大于所述第二目标值,修改所述第一配置参数。
[0013]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述第二统计值为访问冲突率,所述第二目标值为目标访问冲突率。
[0014]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述第一配置参数包括路、组、存储体或者替换策略。
[0015]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述请求指令包括读取请求指令或存储请求指令。
[0016]例如,本公开至少一实施例提供的缓存系统模拟方法还包括,使用脚本语言创建所述缓存系统模型。
[0017]例如,在本公开至少一实施例提供的缓存系统模拟方法中,所述指令信息包括跟踪日志指令信息。
[0018]本公开至少一实施例提供一种用于缓存系统模拟的装置。该装置包括:获取模块,配置为获取缓存系统模型,以及获取指令信息记录,其中,所述指令信息记录包括多个条目,所述多个条目中的每个条目包括请求指令以及所述请求指令对应的第一寻址地址;模拟访问模块,配置为从所述指令信息记录读取所述多个条目中的至少一个条目,以及使用所述至少一个条目中每个条目中的所述请求指令和所述第一寻址地址模拟对于所述缓存系统模型的访问,以获取所述缓存系统模型的统计数据;更新模块,配置为基于所述统计数据更新所述缓存系统模型。
[0019]本公开至少一实施例还提供一种用于缓存系统模拟的设备。该设备包括:处理器;存储器,包括一个或多个计算机程序模块;其中,所述一个或多个计算机程序模块被存储在所述存储器中并被配置为由所述处理器执行,所述一个或多个计算机程序模块包括用于实现本公开任一实施例提供的方法。
[0020]本公开至少一实施例还提供一种存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时可以实现本公开任一实施例提供的方法。
Cache,也称为L1缓存)、二级缓存(L2 Cache,也称为L2缓存)、三级缓存(L3 Cache,也称为L3缓存)。L1 Cache是CPU私有的,每个CPU都有一个L1 Cache,例如在有的CPU中,L1 Cache可以进一步划分为数据专用的L1 Cache(L1D Cache)和指令专用的L1 Cache(L1I Cache);一个集群(例如集群0)内的所有CPU(例如CPU0和CPU1)共享一个L2Cache,例如,L2 Cache不区分指令和数据,都可以缓存;L3 Cache通过总线和主存相连,例如,L3 Cache不区分指令和数据,都可以缓存。相应地,L1 Cache的速度最快,L2 Cache其次,L3 Cache再次。在需要获取数据或指令时,处理器会先到L1 Cache中寻找需要的数据或指令,如果在L1 Cache中没有找到,则会到L2 Cache中寻找,如果仍然没有找到,则会到L3 Cache中寻找。若在L1 Ca本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存系统模拟方法,包括:获取缓存系统模型;获取指令信息记录,其中,所述指令信息记录包括多个条目,所述多个条目中的每个条目包括请求指令以及所述请求指令对应的第一寻址地址;从所述指令信息记录读取所述多个条目中的至少一个条目;使用所述至少一个条目中的每个条目中的所述请求指令和所述第一寻址地址模拟对于所述缓存系统模型的访问以获取所述缓存系统模型的统计数据;基于所述统计数据更新所述缓存系统模型。2.根据权利要求1所述的模拟方法,其中,所述使用所述至少一个条目中的每个条目中的所述请求指令和所述第一寻址地址模拟对于所述缓存系统模型的访问以获取所述缓存系统模型的统计数据包括:将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,其中,所述缓存系统模型设置为具有第一配置参数;根据所述计数值获得所述统计数据。3.根据权利要求2所述的模拟方法,其中,所述基于所述统计数据更新所述缓存系统模型包括:将所述统计数据与目标数据进行比较以更新所述第一配置参数。4.根据权利要求3所述的模拟方法,其中,所述计数值包括第一计数值,所述统计数据包括第一统计值,所述将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,包括:将m个所述第一寻址地址映射到所述缓存系统模型中,m为大于1的整数;将m个所述第一寻址地址与所述缓存系统模型中对应的多个缓存行中的地址段进行比较;响应于i个所述第一寻址地址的比较结果为命中,将所述统计计数器中的所述第一计数值更新为i,i为不大于m的正整数。5.根据权利要求4所述的模拟方法,其中,所述根据所述计数值获得所述统计数据包括:根据所述第一计数值获得所述第一统计值为i/m。6.根据权利要求5所述的模拟方法,其中,所述目标数据包括第一目标值,所述将所述统计数据与目标数据进行比较以更新所述第一配置参数包括:响应于所述第一统计值大于等于所述第一目标值,输出所述第一配置参数为目标第一配置参数;或者,响应于所述第一统计值小于所述第一目标值,修改所述第一配置参数。7.根据权利要求4所述的模拟方法,其中,所述第一统计值为命中率,所述第一目标值为目标命中率。8.根据权利要求3所述的模拟方法,其中,所述计数值包括第二计数值,所述统计数据包括第二统计值,所述将所述第一寻址地址映射到所述缓存系统模型中以获取统计计数器中的计数值,
包括:将n个所述第一寻址地址映射到所述缓存系统模型中,n为大于1的整数;将n个所...

【专利技术属性】
技术研发人员:陈玉平
申请(专利权)人:北京奕斯伟计算技术股份有限公司
类型:发明
国别省市:

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

1