一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

内存控制方法、装置、存储介质和电子设备与流程

2022-05-11 14:43:00 来源:中国专利 TAG:


1.本技术涉及处理器技术领域,特别涉及一种内存控制方法、装置、存储介质和电子设备。


背景技术:

2.内存也称内存储器或主存储器,它用于暂时存放处理器中的运算数据,与外部存储器交换的数据等。如智能手机、平板电脑等电子设备通常配置有内存,电子设备部署的所有应用的运行都是在内存中进行的,因此处理器需要频繁的对内存进行访问。处理器对内存的访问性能取决于内存所能提供的带宽,带宽越高,相应访问性能也就越高,但同时功耗也越高。


技术实现要素:

3.本技术实施例提供一种内存控制方法、装置、存储介质和电子设备,既能满足对内存访问性能的使用需求,还能避免功耗的浪费。
4.本技术公开一种内存控制方法,包括:
5.获取处理器中的高速缓存在单位时长内的缓存缺失数量;
6.根据所述缓存缺失数量获取内存所需提供的目标带宽;
7.将所述内存的带宽调整为所述目标带宽。
8.本技术还公开一种内存控制装置,包括:
9.数量获取模块,用于获取处理器中的高速缓存在单位时长内的缓存缺失数量;
10.带宽获取模块,用于根据所述缓存缺失数量获取内存所需提供的目标带宽;
11.带宽调整模块,用于将所述内存的带宽调整为所述目标带宽。
12.本技术还公开一种存储介质,其上存储有计算机程序,当所述计算机程序被处理器加载时执行本技术提供的内存控制方法。
13.本技术还公开一种电子设备,包括处理器、存储器和内存,所述存储器存储有计算机程序,所述处理器通过加载所述计算机程序执行本技术提供的内存控制方法。
14.本技术实施例中,通过获取处理器中的高速缓存在单位时长内的缓存缺失数量,利用处理器缓存缺失时从内存获取数据的特性,进一步根据缓存缺失数量获取内存所需提供的目标带宽,该目标带宽即反映了处理器访问内存的数据量实际需求,从而将内存的带宽调整为目标带宽即可满足处理器对内存的访问需求。相较于相关技术,本技术并不在固定的几个带宽宽度中进行选择,而是去分析对内存的实际带宽需求,从而根据实际带宽需求对内存的带宽进行实时调整,以此来满足对内存访问性能的使用需求。同时,由于对内存调整后的带宽是与实际带宽需求所匹配的,不存在带宽的浪费,还能够避免功耗的浪费。
附图说明
15.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使
用的附图作简单地介绍。
16.图1为本技术提供的内存控制方法的一流程示意图。
17.图2为本技术实施例中处理器访问内存的一示意图。
18.图3为本技术实施例中处理器访问内存的另一示意图。
19.图4为本技术提供的内存控制方法的另一流程示意图。
20.图5为本技术提供的内存控制装置的结构示意图。
21.图6为本技术提供的电子设备的结构示意图。
具体实施方式
22.本技术实施例提供的技术方案可以应用于各种需要进行数据通信的场景,本技术实施例对此并不限定。
23.请参照图1,本技术提供一种内存控制方法、内存控制装置、存储介质以及电子设备。其中,该内存控制方法的执行主体可以是本技术实施例提供的内存控制装置,或者集成了该内存控制装置的电子设备,其中该内存控制装置可以采用硬件或者软件的方式实现。其中,电子设备可以是智能手机、平板电脑、掌上电脑、笔记本电脑等移动式电子设备、或者台式电脑、广告机等固定式电子设备。
24.请参照图1,图1为本技术实施例提供的内存控制方法的流程示意图,本技术实施例提供的内存控制方法的具体流程可以如下:
25.在110中,获取处理器中的高速缓存在单位时长内的缓存缺失数量。
26.应当说明的是,请参照图2,处理器中通常配置有高速缓存,或称高速缓冲存储器,其作用是为了更好的利用局部性原理(包括时间局部性和空间局部性),即最近被处理器访问的内存中的数据,短期内处理器还要访问(时间局部性);被处理器访问的数据附近的其它数据,处理器短期内还要访问(空间局部性)。因此如果处理器将刚刚访问过的数据缓存在高速缓存中,那么下次访问时,处理器可以直接从高速缓存中获取,而无需再从内存中获取,从而使得处理器的访问速度可以得到数量级的提高。
27.基于以上相关描述,当处理器要访问的数据在高速缓存中有缓存时,称为“命中”,而当处理器要访问的数据在高速缓存中未缓存时,称为“缺失”。基于此,本技术中首先获取处理器中的高速缓存在单位时长(该单位时长可由本领域普通技术人员根据实际需要取经验值,例如,可将单位时长配置为1秒)内的缓存缺失数量,也即是在单位时长内,处理器访问数据时,高速缓存中未缓存处理器所需访问数据的次数。比如,在单位时长1秒内,处理器访问高速缓存10000次,其中有5000次访问的数据是缓存于高速缓存中的,而另外5000次访问的数据未缓存于高速缓存中,需要从内存中读取,因此,可以得到高速缓存的缓存缺失数量为5000。
28.在120中,根据缓存缺失数量获取内存所需提供的目标带宽。
29.如上所述,可以理解的是,对于高速缓存中缺失的数据,处理器需要从内存中获取,而处理器是否能够稳定的从内存中获取到所需的数据,取决于内存是否能够提供足够的带宽。比如,处理器单位时长1秒内从内存所需的数据量为512mb,则内存至少需要提供512mb/s的带宽,才能供处理器稳定的访问。
30.由上可知,高速缓存在单位时长的缓存缺失数量与内存所需提供的带宽正相关,
也即是高速缓存的缓存缺失数量越大,内存所需提供的带宽也就越大,而当高速缓存的缓存缺失数量越小,内存所需提供的带宽也就越小。因此,可根据高速缓存在单位时长内的缓存缺失数量获取到内存所需提供的带宽,将处理器访问内存所需的带宽记为目标带宽。
31.在130中,将内存的带宽调整为目标带宽。
32.根据以上相关描述,可以理解的是,内存提供目标带宽即可供处理器稳定的访问,也即是说,当内存所提供的带宽小于目标带宽时,内存无法确保处理器的稳定访问,而当内存所提供的带宽大于目标带宽时,内存提供的带宽将有所浪费。因此,本技术实施例中,在根据高速缓存在单位时长内的缓存缺失数量获取到处理器访问内存所需的目标带宽之后,即可将内存的带宽调整为前述目标带宽,由此来确保处理器对内存的稳定访问,同时也不会存在带宽的浪费。
33.由上可知,本技术通过获取处理器中的高速缓存在单位时长内的缓存缺失数量,利用处理器缓存缺失时从内存获取数据的特性,进一步根据缓存缺失数量获取内存所需提供的目标带宽,该目标带宽即反映了处理器访问内存的数据量实际需求,从而将内存的带宽调整为目标带宽即可满足处理器对内存的访问需求。相较于相关技术,本技术并不在固定的几个带宽宽度中进行选择,而是去分析对内存的实际带宽需求,从而根据实际带宽需求对内存的带宽进行实时调整,以此来满足对内存访问性能的使用需求。同时,由于对内存调整后的带宽是与实际带宽需求所匹配的,不存在带宽的浪费,还能够避免功耗的浪费。
34.可选地,在一实施例中,在处理器包括性能监控单元时,获取处理器中的高速缓存在单位时长内的缓存缺失数量,包括:
35.从性能监控单元获取处理器中的高速缓存在单位时长内的缓存缺失数量。
36.应当说明的是,对于某些型号的处理器,提供有性能监控单元,性能监控单元为用于记录处理器访问信息的硬件模块,如图3所示。比如,arm架构的处理器通常配置有性能监控单元,用于记录处理器在单位时长内访问的数据在高速缓存中的数量,以及访问的数据不在高速缓存中的数量等。
37.因此,本技术实施例中,在处理器包括性能监控单元时,可以直接从该性能监控单元获取到处理器中的高速缓存在单位时长内的缓存缺失数量。
38.可选地,在一实施例中,在处理器不包括性能监控单元时,获取处理器中的高速缓存在单位时长内的缓存缺失数量,包括:
39.(1)获取处理器在单位时长内访问目标数据的访问时延,得到多个访问时延;
40.(2)根据多个访问时延预测处理器中的高速缓存在单位时长内的缓存缺失数量。
41.应当说明的是,存储器是分层次的,离处理器越近的存储器,访问速度越快,每字节的成本也越高,同时容量也因此越小。寄存器离cpu最近,访问速度最快,其次是高速缓存(高速缓存也分层级,比如一级缓存、二级缓存、三级缓存等),再次是主存(即内存)。通常的,处理器对一级缓存的访问时延在5-10纳秒,处理器对二级缓存的访问时延在40-60纳秒,处理器对内存的访问时延在100-150纳秒。因此,利用处理器访问数据所需的访问时延即可大致判断出处理器是访问的内存,还是访问的高速缓存,进而可以预测出高速缓存的缓存缺失数量。
42.其中,在处理器不包括性能监控单元时,也就无法直接从性能监控单元获取到高速缓存在单位时长内的缓存缺失数量,因此,在本技术实施例中,对处理器访问目标数据时
所花费的访问时延进行记录,其中,处理器每次访问的目标数据可以相同,也可以不同。相应的,在获取处理器中的高速缓存在单位时长内的缓存缺失数量时,可以获取到单位时长内记录的处理器访问目标数据的访问时延,得到多个访问时延。比如,在单位时长1秒内,记录了处理器10000次对目标数据的访问时延,相应的,将获取到10000个访问时延。
43.基于以上相关描述,访问时延长短能够在一定程度上反映处理器的所访问的目标数据位于高速缓存中,还是位于内存中,因此,本技术实施例预设配置一用于判定目标数据位于高速缓存还是内存中的时延阈值,记为预设时延阈值,可由本领域普通技术人员根据高速缓存以及内存的实际读写性能进行配置,此处不对预设时延阈值的取值作具体限制。
44.相应的,在获取到单位时长内所记录的多个访问时延后,可进一步确定出多个访问时延中大于或等于预设时延阈值的访问时延的数量,将该数量设为高速缓存在单位时长内的缓存缺失数量。比如,共获取到单位时长内记录的10000个访问时延,若其中2000个访问时延大于或等于预设时延阈值,则可确定高速缓存在单位时长内的缓存缺失数量为2000。
45.可选地,在一实施例中,将内存的带宽调整为目标带宽,包括:
46.(1)根据带宽和时钟频率的对应关系,获取内存提供目标带宽所需的目标时钟频率;
47.(2)将内存的时钟频率调整至目标时钟频率,以将内存的带宽调整为目标带宽。
48.应当说明的是,内存所能提供的带宽与其时钟频率存在如下对应关系:
49.带宽=时钟频率
×
总线位数
×
倍增系数/8;
50.以ddr400内存为例,它的运行频率为200mhz,总线位数为64bit,由于上升沿和下降沿都传输数据,因此倍增系数为2,此时带宽为:200
×
64
×
2/8=3.2gb/s。
51.其中,内存的总线位数和倍增系数是固定的,在内存的硬件电路确定时,其总线位数以及倍增系数相应确定。换言之,通过改变内存运行的时钟频率,即可达到改变内存所提供带宽的目的。
52.相应的,在本技术实施例中,在将内存的带宽调整为目标带宽时,可以根据以上带宽和时钟频率的对应关系,获取到对应前述目标带宽的时钟频率,记为内存提供目标带宽所需的目标带宽。之后,将内存运行的时钟频率调整为目标时钟频率,即可将内存所提供的带宽调整为目标带宽。
53.可选地,在一实施例中,将内存的时钟频率调整至目标时钟频率之后,还包括:
54.根据预设的时钟频率和工作电压的对应关系,将内存的工作电压调整为对应目标时钟频率的目标工作电压。
55.应当说明的是,内存是否能够稳定的工作在一时钟频率,取决于是否向内存提供一对应的工作电压,这与内存自身的硬件电路相关。
56.因此,对于一内存,可以预先标定其在不同时钟频率稳定工作所需的工作电压,由此得到预设的时钟频率和工作电压的对应关系。
57.本技术实施例中,为了确保内存能够稳定的工作在调整后的目标带宽,还根据预设的时钟频率和工作电压的对应关系,确定对应于前述的目标时钟频率的工作电压,记为目标电压。然后,将内存的工作电压调整为对应目标时钟频率的目标工作电压。
58.可选地,在一实施例中,根据缓存缺失数量获取内存所需提供的目标带宽,包括:
59.(1)根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理器在单位时长内访问内存的所需的数据带宽;
60.(2)获取高速缓存在单位时长内执行清理操作所需的清理带宽;
61.(3)根据数据带宽以及清理带宽获取前述目标带宽。
62.其中,清理操作是指:对于高速缓存中脏的(也即被改写过的)缓存行数据,将其强制写到内存中,并把缓存行中的脏位清零。
63.相应的,本技术实施例中,在根据缓存缺失数量获取内存所需提供的目标带宽时,可以根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理在单位时长内访问内存所需的带宽,记为数据带宽。应当说明的是,处理器每次从内存中读取数据都是按照缓存行的数据量来获取的。
64.比如,高速缓存的每一缓存行的数据量是32字节,若高速缓存在单位时长1秒内的缓存缺失数量为5000,那么处理器在单位时长1秒内访问内存的数据量为5000*32=160000(字节),相应的,处理器在单位时长1秒内访问内存所需的数据带宽为160000字节/秒。
65.如上所述,除了处理器对内存的正常访问需要占用带宽,在对高速缓存执行清理操作时需将高速缓存中相应的数据写到内存中,会对内存进行写操作,也会占用内存的带宽,因此,还获取高速缓存单元在单位时长内执行清理操作所需的清理带宽。
66.在获取到以上数据带宽以及清理带宽之后,即可根据前述数据带宽以及清理带宽获取到内存所需提供的目标带宽。比如,可以直接计算前述数据带宽以及清理带宽的带宽和值,作为内存所需提供的目标带宽。
67.可选地,在一实施例中,根据数据带宽、第一操作带宽以及第二操作带宽获取目标带宽,包括:
68.(1)计算数据带宽和清理带宽的和值,设为候选带宽;
69.(2)获取处理器运行的前台应用的应用类型,并根据预设的应用类型与修正系数的对应关系,确定对应前述应用类型的目标修正系数;
70.(3)根据目标修正系数对候选带宽进行修正,将修正后的候选带宽设为目标带宽。
71.应当说明的是,处理器在运行不同类型的应用程序时,处理器对内存带宽需求的变化程度不同,比如,处理器在运行a类应用程序,处理器对内存带宽需求的变化程度较小,而当处理器在运行b类应用程序时,处理器对内存带宽需求的变化程度较大。基于此,本技术预先针对处理器运行不同类型应用程序时对内存带宽需求的变化程度进行统计,并相应分配修正系数。其中,以修正系数与变化程度正相关为约束,可由本领域普通技术人员根据实际需要进行修正系数的分配,由此形成应用类型与修正系数的对应关系。
72.相应的,在根据数据带宽和清理带宽获取内存所需提供的目标带宽时,可以首先计算前述数据带宽与前述带宽的和值,将计算得到和值记为内存所需提供的候选带宽;然后,进一步获取处理器运行的前台应用的应用类型,并根据预设的应用类型与修正系数,确定对应前台应用的应用类型的修正系数,记为目标修正系数;最后,根据目标修正系数对候选带宽进行修正,可以表示为:
73.w’=w*r;
74.其中,w表示候选带宽,w’表示修正后的候选带宽,r表示目标修正系数。
75.如上,在完成对候选带宽的修正之后,将修正后的候选带宽设为内存所需提供的
目标带宽。
76.图4本技术实施例提供的内存控制方法的另一流程示意图。以下以该内存控制方法的执行主体为电子设备中的处理器为例进行说明。如图4所示,本技术实施例提供的内存控制方法的流程可以如下:
77.在210中,处理器从性能监控单元获取高速缓存在单位时长内的缓存缺失数量。
78.应当说明的是,请参照图3,处理器中通常配置有高速缓存,或称高速缓冲存储器,其作用是为了更好的利用局部性原理(包括时间局部性和空间局部性),即最近被处理器访问的内存中的数据,短期内处理器还要访问(时间局部性);被处理器访问的数据附近的其它数据,处理器短期内还要访问(空间局部性)。因此如果处理器将刚刚访问过的数据缓存在高速缓存中,那么下次访问时,处理器可以直接从高速缓存中获取,而无需再从内存中获取,从而使得处理器的访问速度可以得到数量级的提高。
79.基于以上相关描述,当处理器要访问的数据在高速缓存中有缓存时,称为“命中”,而当处理器要访问的数据在高速缓存中未缓存时,称为“缺失”。基于此,本技术中首先获取处理器中的高速缓存在单位时长(该单位时长可由本领域普通技术人员根据实际需要取经验值,例如,可将单位时长配置为1秒)内的缓存缺失数量,也即是在单位时长内,处理器访问数据时,高速缓存中未缓存处理器所需访问数据的次数。比如,在单位时长1秒内,处理器访问高速缓存10000次,其中有5000次访问的数据是缓存于高速缓存中的,而另外5000次访问的数据未缓存于高速缓存中,需要从内存中读取,因此,可以得到高速缓存的缓存缺失数量为5000。
80.应当说明的是,对于某些型号的处理器,提供有性能监控单元,性能监控单元为用于记录处理器访问信息的硬件模块,如图3所示。比如,arm架构的处理器通常配置有性能监控单元,用于记录处理器在单位时长内访问的数据在高速缓存中的数量,以及访问的数据不在高速缓存中的数量等。
81.因此,本技术实施例中,在处理器包括性能监控单元时,可以直接从该性能监控单元获取到处理器中的高速缓存在单位时长内的缓存缺失数量。
82.在220中,处理器根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理器在单位时长内访问内存的所需的数据带宽。
83.如上所述,可以理解的是,对于高速缓存中缺失的数据,处理器需要从内存中获取,而处理器是否能够稳定的从内存中获取到所需的数据,取决于内存是否能够提供足够的带宽。比如,处理器单位时长1秒内从内存所需的数据量为512mb,则内存至少需要提供512mb/s的带宽,才能供处理器稳定的访问。
84.由上可知,高速缓存在单位时长的缓存缺失数量与内存所需提供的带宽正相关,也即是高速缓存的缓存缺失数量越大,内存所需提供的带宽也就越大,而当高速缓存的缓存缺失数量越小,内存所需提供的带宽也就越小。
85.应当说明的是,除了正常的访问操作会占用内存的带宽之外,高速缓存执行清理操作时也会占用内存的带宽。因此,本技术实施例中,根据处理器的访问操作以及对高速缓存的清理操作来确定处理器所需提供的目标带宽。
86.相应的,本技术实施例中,在根据缓存缺失数量获取内存所需提供的目标带宽时,可以根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理在单位时长内访问内存
所需的带宽,记为数据带宽。应当说明的是,处理器每次从内存中读取数据都是按照缓存行的数据量来获取的。
87.比如,高速缓存的每一缓存行的数据量是32字节,若高速缓存在单位时长1秒内的缓存缺失数量为5000,那么处理器在单位时长1秒内访问内存的数据量为5000*32=160000(字节),相应的,处理器在单位时长1秒内访问内存所需的数据带宽为160000字节/秒。
88.在230中,处理器获取高速缓存在单位时长内执行清理操作所需的清理带宽。
89.如上所述,除了处理器对内存的正常访问需要占用带宽,在对高速缓存执行清理操作时也会占用内存的带宽,因此,还获取高速缓存单元在单位时长内执行清理操作所需的清理带宽。
90.在240中,处理器计算数据带宽和清理带宽的和值,设为候选带宽。
91.应当说明的是,处理器在运行不同类型的应用程序时,处理器对内存带宽需求的变化程度不同,比如,处理器在运行a类应用程序,处理器对内存带宽需求的变化程度较小,而当处理器在运行b类应用程序时,处理器对内存带宽需求的变化程度较大。基于此,本技术预先针对处理器运行不同类型应用程序时对内存带宽需求的变化程度进行统计,并相应分配修正系数。其中,以修正系数与变化程度正相关为约束,可由本领域普通技术人员根据实际需要进行修正系数的分配,由此形成应用类型与修正系数的对应关系。
92.相应的,可以首先计算前述数据带宽与前述带宽的和值,将计算得到和值记为内存所需提供的候选带宽。
93.在250中,处理器获取自身运行的前台应用的应用类型,并根据预设的应用类型与修正系数的对应关系,确定对应应用类型的目标修正系数。
94.其中,处理器进一步获取自身运行的前台应用的应用类型,并根据预设的应用类型与修正系数,确定对应前台应用的应用类型的修正系数,记为目标修正系数。
95.在260中,处理器根据目标修正系数对候选带宽进行修正,将修正后的候选带宽设为目标带宽。
96.根据目标修正系数对候选带宽进行修正,可以表示为:
97.w’=w*r;
98.其中,w表示候选带宽,w’表示修正后的候选带宽,r表示目标修正系数。
99.如上,在完成对候选带宽的修正之后,将修正后的候选带宽设为内存所需提供的目标带宽。
100.在270中,处理器根据带宽和时钟频率的对应关系,获取内存提供目标带宽所需的目标时钟频率,并将内存的时钟频率调整至目标时钟频率,以将内存的带宽调整为目标带宽。
101.应当说明的是,内存所能提供的带宽与其时钟频率存在如下对应关系:
102.带宽=时钟频率
×
总线位数
×
倍增系数/8;
103.以ddr400内存为例,它的运行频率为200mhz,总线位数为64bit,由于上升沿和下降沿都传输数据,因此倍增系数为2,此时带宽为:200
×
64
×
2/8=3.2gb/s。
104.其中,内存的总线位数和倍增系数是固定的,在内存的硬件电路确定时,其总线位数以及倍增系数相应确定。换言之,通过改变内存运行的时钟频率,即可达到改变内存所提供带宽的目的。
105.相应的,在本技术实施例中,在将内存的带宽调整为目标带宽时,可以根据以上带宽和时钟频率的对应关系,获取到对应前述目标带宽的时钟频率,记为内存提供目标带宽所需的目标带宽。之后,将内存运行的时钟频率调整为目标时钟频率,即可将内存所提供的带宽调整为目标带宽。
106.在280中,处理器根据预设的时钟频率和工作电压的对应关系,将内存的工作电压调整为对应目标时钟频率的目标工作电压。
107.应当说明的是,内存是否能够稳定的工作在一时钟频率,取决于是否向内存提供一对应的工作电压,这与内存自身的硬件电路相关。
108.因此,对于一内存,可以预先标定其在不同时钟频率稳定工作所需的工作电压,由此得到预设的时钟频率和工作电压的对应关系。
109.本技术实施例中,为了确保内存能够稳定的工作在调整后的目标带宽,还根据预设的时钟频率和工作电压的对应关系,确定对应于前述的目标时钟频率的工作电压,记为目标电压。然后,将内存的工作电压调整为对应目标时钟频率的目标工作电压。
110.请参照图5,图5为本技术实施例提供的内存控制装置的结构示意图。该内存控制装置应用于本技术提供的电子设备。如图5所示,内存控制装置可以包括:
111.数量获取模块310,用于获取处理器中的高速缓存在单位时长内的缓存缺失数量;
112.带宽获取模块320,用于根据缓存缺失数量获取内存所需提供的目标带宽;
113.带宽调整模块330,用于将内存的带宽调整为目标带宽。
114.可选地,在一实施例中,若处理器包括性能监控单元,则在获取处理器中的高速缓存在单位时长内的缓存缺失数量时,数量获取模块310用于:
115.从性能监控单元获取缓存缺失数量。
116.可选地,在一实施例中,若处理器不包括性能监控单元,则在获取处理器中的高速缓存在单位时长内的缓存缺失数量时,数量获取模块310用于:
117.获取处理器在单位时长内访问目标数据的访问时延,得到多个访问时延;
118.根据多个访问时延预测缓存缺失数量。
119.可选地,在一实施例中,在将内存的带宽调整为目标带宽时,带宽调整模块330用于:
120.根据带宽和时钟频率的对应关系,获取内存提供目标带宽所需的目标时钟频率;
121.将内存的时钟频率调整至目标时钟频率,以将内存的带宽调整为目标带宽。
122.可选地,在一实施例中,在将内存的时钟频率调整至目标时钟频率之后,带宽调整模块330还用于:
123.根据预设的时钟频率和工作电压的对应关系,将内存的工作电压调整为对应目标时钟频率的目标工作电压。
124.可选地,在一实施例中,在根据缓存缺失数量获取内存所需提供的目标带宽时,带宽获取模块320用于:
125.根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理器在单位时长内访问内存的所需的数据带宽;
126.获取高速缓存在单位时长内执行清理操作所需的清理带宽;
127.根据数据带宽和清理带宽获取目标带宽。
128.可选地,在一实施例中,在根据数据带宽和清理带宽获取目标带宽时,带宽获取模块320用于:
129.计算数据带宽和清理带宽的和值,设为候选带宽;
130.获取处理器运行的前台应用的应用类型,并根据预设的应用类型与修正系数的对应关系,确定对应应用类型的目标修正系数;
131.根据目标修正系数对候选带宽进行修正,将修正后的候选带宽设为目标带宽。
132.应当说明的是,本技术实施例提供的内存控制装置与上文实施例中的内存控制方法属于同一构思,内存控制装置可以运行内存控制方法实施例中提供的任一方法,其具体实现过程详见以上相关实施例,此处不再赘述。
133.本技术实施例还提供一种存储介质,其上存储有计算机程序,当其存储的计算机程序被电子设备的处理器加载时执行如本技术实施例提供的内存控制方法中的步骤。其中,存储介质可以是磁碟、光盘、只读存储器(read only memory,rom)或者随机存取器(random access memory,ram)等。
134.本技术实施例还提供一种电子设备,请参照图6,电子设备包括处理器410和存储器420。
135.本技术实施例中的处理器是通用处理器410,比如arm架构的处理器。
136.存储器420中存储有计算机程序,其可以为高速随机存取存储器,还可以为非易失性存储器,比如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。
137.内存430可以为任意类型的内存(也称主存),比ddr(double data rate,双倍速率)内存。
138.此外,存储器420还可以包括存储器控制器,以提供处理器410对存储器420的访问,处理器410通过加载存储器420中的计算机程序实现如下功能:
139.获取处理器中的高速缓存在单位时长内的缓存缺失数量;
140.根据缓存缺失数量获取内存430所需提供的目标带宽;
141.将内存430的带宽调整为目标带宽。
142.可选地,在一实施例中,若处理器包括性能监控单元,则在获取处理器中的高速缓存在单位时长内的缓存缺失数量时,处理器410用于执行:
143.从性能监控单元获取缓存缺失数量。
144.可选地,在一实施例中,若处理器不包括性能监控单元,则在获取处理器中的高速缓存在单位时长内的缓存缺失数量时,处理器410用于执行:
145.获取处理器在单位时长内访问目标数据的访问时延,得到多个访问时延;
146.根据多个访问时延预测缓存缺失数量。
147.可选地,在一实施例中,在将内存430的带宽调整为目标带宽时,处理器410用于执行:
148.根据带宽和时钟频率的对应关系,获取内存430提供目标带宽所需的目标时钟频率;
149.将内存430的时钟频率调整至目标时钟频率,以将内存430的带宽调整为目标带宽。
150.可选地,在一实施例中,在将内存430的时钟频率调整至目标时钟频率之后,处理
器410还用于执行:
151.根据预设的时钟频率和工作电压的对应关系,将内存430的工作电压调整为对应目标时钟频率的目标工作电压。
152.可选地,在一实施例中,在根据缓存缺失数量获取内存430所需提供的目标带宽时,处理器410用于执行:
153.根据缓存缺失数量以及高速缓存的缓存行的数据量,获取处理器在单位时长内访问内存430的所需的数据带宽;
154.获取高速缓存在单位时长内执行清理操作所需的清理带宽;
155.根据数据带宽和清理带宽获取目标带宽。
156.可选地,在一实施例中,在根据数据带宽和清理带宽获取目标带宽时,处理器410用于执行:
157.计算数据带宽和清理带宽的和值,设为候选带宽;
158.获取处理器运行的前台应用的应用类型,并根据预设的应用类型与修正系数的对应关系,确定对应应用类型的目标修正系数;
159.根据目标修正系数对候选带宽进行修正,将修正后的候选带宽设为目标带宽。
160.应当说明的是,本技术实施例提供的电子设备与上文实施例中的内存控制方法属于同一构思,在电子设备上可以运行内存控制方法实施例中提供的任一方法,其具体实现过程详见以上实施例,此处不再赘述。
161.以上对本技术实施例所提供的一种内存控制方法、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献