本技术实施例涉及计算机,具体涉及一种内存页面访问方法及相关设备。
背景技术:
1、内存是计算机中用于存储数据和程序的部件,是计算机的重要组成部分。其中,内存存储的最小单元是列(column),多列组成一行,数据可以以页/行(row)为单位存储至内存。在计算机运行过程中,基于内存页面的数据存储功能,可以对内存页面进行访问,以对数据执行相应操作,例如数据的读写操作。在此背景下,如何提高内存的访问效率,成为了本领域技术人员亟需解决的技术问题。
技术实现思路
1、有鉴于此,本技术实施例提供一种内存页面访问方法及相关设备,以实现提高内存的访问效率。
2、为实现上述目的,本技术实施例提供如下技术方案。
3、第一方面,本技术实施例提供一种内存页面访问方法,包括:
4、在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;
5、在页面表中获取对应所述目标物理地址的页面历史信息;
6、根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,所述第一页面策略指示与所述目标物理地址相对应的所述待访问内存页面的命中决策;
7、根据所述页面历史信息,确定第二页面策略,所述第二页面策略指示基于所述页面历史信息预估得到的对应所述目标内存页面的命中决策;
8、在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,以基于所述目标页面策略,生成相应的内存访问命令。
9、可选的,所述根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,具体为:
10、比较所述待访问物理地址与所述目标物理地址,得到地址比较结果;
11、根据所述地址比较结果,确定第一页面策略。
12、可选的,所述物理地址包括片选地址、库地址和页面地址;
13、所述比较所述待访问物理地址与所述目标物理地址,具体为:分别比较所述待访问物理地址中的片选地址与所述目标物理地址中的片选地址,所述待访问物理地址中的库地址与所述目标物理地址中的库地址,以及所述待访问物理地址中的页面地址与所述目标物理地址中的页面地址。
14、可选的,所述第一页面策略包括开页面策略、关页面策略和不相关策略;
15、若所述待访问物理地址与所述目标物理地址中的片选地址相同,库地址相同,页面地址相同,确定开页面策略;
16、若所述待访问物理地址与所述目标物理地址中的片选地址相同,库地址相同,页面地址不同,确定关页面策略;
17、若所述待访问物理地址与所述目标物理地址中的片选地址相同,库地址不同,或者,所述待访问物理地址与所述目标物理地址中的片选地址不同,库地址相同,确定不相关策略。
18、可选的,所述在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,包括:所述第一页面策略的优先级高于所述第二页面策略,在所述第一页面策略和所述第二页面策略中,确定所述第一页面策略作为目标页面策略发送。
19、可选的,所述在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,还包括:若所述第一页面策略为不相关策略,在所述第一页面策略和所述第二页面策略中,确定所述第二页面策略作为目标页面策略发送。
20、可选的,所述根据所述页面历史信息,确定第二页面策略,包括:
21、根据所述页面历史信息,确定第一数值和第二数值,所述第一数值以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和得到;所述第二数值根据所述页面历史信息对应的信息类型,对初始值进行调整得到;
22、比较所述第一数值和所述第二数值,确定第二页面策略。
23、可选的,所述页面历史信息包括:页面历史命中信息、页面历史冲突信息和页面历史错失信息。
24、可选的,在以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和得到所述第一数值时,
25、若所述页面历史信息中记录的,所述目标访问命令的前一访问命令的页面地址与所述目标访问命令的页面地址相同,则以所述页面历史命中信息的权重作为所述页面历史错失信息的权重,执行以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和,得到所述第一数值;或者,
26、若所述页面历史信息中记录的,所述目标访问命令的前一访问命令的页面地址与所述目标访问命令的页面地址不同,则以所述页面历史冲突信息的权重作为所述页面历史错失信息的权重,执行以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和,得到所述第一数值。
27、可选的,所述根据所述页面历史信息对应的信息类型,对初始值进行调整,包括:
28、若所述页面历史信息中增加页面历史命中信息,将所述初始值对应减小预设比例;其中,所述初始值减小预设比例的次数与所述页面历史命中信息增加的次数相对应;
29、若所述页面历史信息中增加页面历史冲突信息和/或页面历史错失信息,将所述初始值对应增大预设比例;其中,所述初始值增大预设比例的次数与所述页面历史冲突信息和/或所述页面历史错失信息增加的次数相对应。
30、可选的,所述第二页面策略包括开页面策略和关页面策略;
31、所述比较所述第一数值和所述第二数值,确定第二页面策略,包括:
32、基于页面命中的正向计算,若所述第一数值大于或等于所述第二数值,确定开页面策略;若所述第一数值小于所述第二数值,确定关页面策略;或者,
33、基于页面命中的反向计算,若所述第一数值小于所述第二数值,确定开页面策略;若所述第一数值大于或等于所述第二数值,确定关页面策略。
34、可选的,所述在命令队列中获取目标访问命令的同时,还包括:
35、将所述目标访问命令发送至页面表,以使页面表记录对应所述目标物理地址的访问信息,并比较所述目标访问命令的命令类型与记录的历史访问命令的命令类型是否相同,若不同,清除记录的对应所述历史访问命令的访问信息。
36、可选的,所述在命令队列中获取目标访问命令,具体为:
37、根据待执行访问命令的访问优先级和/或地址访问效率,从所述命令队列存储的待执行访问命令中获取一目标访问命令。
38、第二方面,本技术实施例提供一种仲裁模块,包括:
39、命令获取单元,用于在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;
40、信息获取单元,用于在页面表中获取对应所述目标物理地址的页面历史信息;
41、第一确定单元,用于根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,所述第一页面策略指示与所述目标物理地址相对应的所述待访问内存页面的命中决策;
42、第二确定单元组,用于根据所述页面历史信息,确定第二页面策略,所述第二页面策略指示基于所述页面历史信息预估得到的对应所述目标内存页面的命中决策;
43、策略确定单元,用于在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,以基于所述目标页面策略,生成相应的内存访问命令。
44、可选的,所述第一确定单元根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,具体为:
45、比较所述待访问物理地址与所述目标物理地址,得到地址比较结果;
46、根据所述地址比较结果,确定第一页面策略。
47、可选的,所述第二确定单元组包括:页面历史信息计算单元和页面命中预测单元;
48、所述页面历史信息计算单元用于根据所述页面历史信息,确定第一数值和第二数值,所述第一数值以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和得到;所述第二数值根据所述页面历史信息对应的信息类型,对初始值进行调整得到;
49、所述页面命中预测单元用于比较所述第一数值和所述第二数值,确定第二页面策略。
50、可选的,所述命令获取单元还用于:
51、将所述目标访问命令发送至页面表,以使页面表记录对应所述目标访问命令的访问信息,并比较所述目标访问命令的命令类型与记录的历史访问命令的命令类型是否相同,若不同,清除记录的对应所述历史访问命令的访问信息。
52、第三方面,本技术实施例提供一种内存页面访问方法,包括:
53、获取目标页面策略,所述目标页面策略为在第一页面策略和第二页面策略中确定的一页面策略,所述第一页面策略为根据待访问物理地址与目标物理地址确定,所述第二页面策略为根据页面历史信息确定,其中,所述目标物理地址基于在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的所述目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;所述页面历史信息基于对应所述目标物理地址,在页面表中获取;
54、基于所述目标页面策略,生成相应的内存访问命令。
55、第四方面,本技术实施例提供一种命令生成模块,包括:
56、目标策略获取单元,用于获取目标页面策略,所述目标页面策略为在第一页面策略和第二页面策略中确定的一页面策略,所述第一页面策略为根据待访问物理地址与目标物理地址确定,所述第二页面策略为根据页面历史信息确定,其中,所述目标物理地址基于在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的所述目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;所述页面历史信息基于对应所述目标物理地址,在页面表中获取;
57、内存访问命令生成单元,用于基于所述目标页面策略,生成相应的内存访问命令。
58、第五方面,本技术实施例提供一种内存控制器,包括:仲裁模块和命令生成模块;
59、所述仲裁模块用于在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;以及,在页面表中获取对应所述目标物理地址的页面历史信息;并基于所述目标物理地址和所述页面历史信息,发送目标页面策略;
60、所述命令生成模块用于获取所述目标页面策略,并基于所述目标页面策略,生成相应的内存访问命令。
61、第六方面,本技术实施例提供一种内存系统,包括如上述第五方面所述的内存控制器。
62、第七方面,本技术实施例提供一种电子设备,包括至少一个存储器和至少一个处理器,所述存储器存储一条或多条计算机可执行指令,所述处理器调用所述一条或多条计算机可执行指令,以执行如上述第一方面所述的内存页面访问方法,或,执行如上述第三方面所述的内存页面访问方法。
63、第八方面,本技术实施例提供一种存储介质,所述存储介质存储一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时,实现如上述第一方面所述的内存页面访问方法,或,如上述第三方面所述的内存页面访问方法。
64、第九方面,本技术实施例提供一种计算机程序产品,包括一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时实现如上述第一方面所述的内存页面访问方法,或,如上述第三方面所述的内存页面访问方法。
65、本技术实施例提供的一种内存页面访问方法,通过在命令队列中获取目标访问命令,所述目标访问命令至少包括对应目标内存页面的目标物理地址,所述命令队列存储有待执行访问命令,所述待执行访问命令包括对应待访问内存页面的待访问物理地址;并且,在页面表中获取对应所述目标物理地址的页面历史信息;进而,能够根据所述待访问物理地址与所述目标物理地址,确定第一页面策略;根据所述页面历史信息,确定第二页面策略;从而,在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,以基于所述目标页面策略,生成相应的内存访问命令。
66、可以看出,本技术实施例发送的目标页面策略,综合考虑了命令队列中存储的访问命令,以及所述目标访问命令包括的目标物理地址的页面历史信息,使得目标页面策略的确定更加灵活,从而能够动态的调整内存页面配置;进而,在基于目标页面策略,生成相应的内存访问命令时,能够减小内存访问的延迟,实现提高内存的访问效率。
1.一种内存页面访问方法,其特征在于,包括:
2.根据权利要求1所述的内存页面访问方法,其特征在于,所述根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,具体为:
3.根据权利要求2所述的内存页面访问方法,其特征在于,所述物理地址包括片选地址、库地址和页面地址;
4.根据权利要求3所述的内存页面访问方法,其特征在于,所述第一页面策略包括开页面策略、关页面策略和不相关策略;
5.根据权利要求4所述的内存页面访问方法,其特征在于,所述在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,包括:
6.根据权利要求5所述的内存页面访问方法,其特征在于,所述在所述第一页面策略和所述第二页面策略中,确定一页面策略作为目标页面策略发送,还包括:
7.根据权利要求1所述的内存页面访问方法,其特征在于,所述根据所述页面历史信息,确定第二页面策略,包括:
8.根据权利要求7所述的内存页面访问方法,其特征在于,所述页面历史信息包括:页面历史命中信息、页面历史冲突信息和页面历史错失信息。
9.根据权利要求8所述的内存页面访问方法,其特征在于,在以所述页面历史信息对应的信息类型为权重,对所述页面历史信息进行加权求和得到所述第一数值时,
10.根据权利要求7所述的内存页面访问方法,其特征在于,所述根据所述页面历史信息对应的信息类型,对初始值进行调整,包括:
11.根据权利要求10所述的内存页面访问方法,其特征在于,所述第二页面策略包括开页面策略和关页面策略;
12.根据权利要求1所述的内存页面访问方法,其特征在于,所述在命令队列中获取目标访问命令的同时,还包括:
13.根据权利要求1所述的内存页面访问方法,其特征在于,所述在命令队列中获取目标访问命令,具体为:
14.一种仲裁模块,其特征在于,包括:
15.根据权利要求14所述的仲裁模块,其特征在于,所述第一确定单元根据所述待访问物理地址与所述目标物理地址,确定第一页面策略,具体为:
16.根据权利要求15所述的仲裁模块,其特征在于,所述第二确定单元组包括:页面历史信息计算单元和页面命中预测单元;
17.根据权利要求14所述的仲裁模块,其特征在于,所述命令获取单元还用于:
18.一种内存页面访问方法,其特征在于,包括:
19.一种命令生成模块,其特征在于,包括:
20.一种内存控制器,其特征在于,包括:仲裁模块和命令生成模块;
21.一种内存系统,其特征在于,包括如权利要求20所述的内存控制器。
22.一种电子设备,其特征在于,包括至少一个存储器和至少一个处理器,所述存储器存储一条或多条计算机可执行指令,所述处理器调用所述一条或多条计算机可执行指令,以执行如权利要求1至13任一项所述的内存页面访问方法,或,执行如权利要求18所述的内存页面访问方法。
23.一种存储介质,其特征在于,所述存储介质存储一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时,实现如权利要求1至13任一项所述的内存页面访问方法,或,如权利要求18所述的内存页面访问方法。
24.一种计算机程序产品,其特征在于,包括一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时实现如权利要求1至13任一项所述的内存页面访问方法,或,如权利要求18所述的内存页面访问方法。