一种基于强化学习的频繁写缓存数据压缩方法技术

技术编号:31983788 阅读:14 留言:0更新日期:2022-01-20 02:00
本发明专利技术公开了一种基于强化学习的频繁写缓存数据压缩方法,以此更好的解决非易失性缓存中数据压缩存储的问题。包括如下步骤:S1:对于每一次缓存写请求访问操作,将写强度和复用局部性信息记录在数据收集模块;S2:构建强化学习模式选择算法,选择适合压缩的模式,将选择的模式信息记录在预测表中;S3:根据预测表中缓存数据的压缩标志位,如果待写数据适合压缩,则将其压缩后存储在缓存中,下次读取该数据时,根据该信息还原被压缩数据;S4:基于霍夫曼编码的数据压缩算法压缩待存储的数据;S5:返回至步骤S1,继续下一次访问缓存操作,直至该任务执行完毕。本发明专利技术所提出的强化学习方法获取频繁写数据,以低功耗的形式压缩存储在非易失性缓存中,提升压缩效率和系统性能。提升压缩效率和系统性能。提升压缩效率和系统性能。

【技术实现步骤摘要】
一种基于强化学习的频繁写缓存数据压缩方法


[0001]本专利技术涉及到计算机存储系统结构领域,具体涉及一种基于强化学习的频繁写缓存数据压缩方法。。

技术介绍

[0002]在现代处理器架构中,为了减轻处理器和内存之间的存储鸿沟,通常都会添加多级缓存,传统基于SRAM结构的缓存将消耗较多芯片面积和功耗开销。随着CMOS技术的进一步提升,SRAM的漏电功耗和可靠性成为一个重要的问题。近年来,非易失性存储技术(non

volatile memory,NVM)为存储架构提供了新的方案,因为NVM具有非易失性、低功耗和快速访问的特征,具有非常大的潜力。然而NVM因为材料工艺和设计原理的特征,NVM具有写功耗高和写延迟长等问题。许多研究者从位级、访问级和混合缓存架构等方面做了深入探讨,希望提升NVM的访问效率。
[0003]缓存压缩技术是提升存储空间和访问效率的有效途径,广泛应用于传统存储架构中。例如,基于预定义编码长度的频繁模式压缩方法,基于静态编码和目录模式的压缩方法,基于增量立即数的局部性数据压缩方法,以及基于统计学的数据压缩方法等,这些方法对缓存数据的压缩均有一定的价值。然而,现有技术存在如下缺点。
[0004](1)数据压缩率较低。
[0005](2)压缩和解压缩的复杂度相对较高,会影响系统的性能。
[0006](3)未通过压缩技术解决NVM的写问题。

技术实现思路

[0007]本专利技术提供了一种基于强化学习的频繁写缓存数据压缩方法,目的在于克服现有缓存数据压缩方法的不足,通过利用强化学习方法获取缓存的频繁访问行为特征,压缩高频写数据,进而优化写功耗和性能,更好的解决NVM缓存中数据压缩的效率问题。
[0008]为了实现本专利技术的目的,本专利技术所采用的技术方案为,设计一种基于强化学习的频繁写缓存数据压缩方法,包括如下步骤。
[0009]S1:对于每一次缓存写请求访问操作,将写强度和复用局部性信息记录在数据收集模块。
[0010]S2:构建强化学习模式选择算法,选择适合压缩的模式,将选择的模式信息记录在预测表中。
[0011]S3:根据预测表中缓存数据的压缩标志位,如果待写数据适合压缩,则将其压缩后存储在缓存中,下次读取该数据时,根据该信息还原被压缩数据。
[0012]S4:基于霍夫曼编码的数据压缩算法压缩待存储的数据。
[0013]S5:返回至步骤S1,继续下一次访问缓存操作,直至该任务执行完毕。
[0014]其中,所述步骤S2中的强化学习模式选择算法可以通过以下步骤构建。
[0015]输入:当前状态S
t
,压缩动作A
t
,代理策略π,压缩阈值τ,训练周期ψ,调整大小比例
ε。
[0016]输出:缓存压缩模式数组P。
[0017]步骤1:如果程序每运行ψ个周期,测试数据收集模块中的每一行数据,并执行下述子步骤。
[0018]步骤1.1:设置条件概率分布π(a
t
(i)| s
t
(i))=P(A
t
=a
t
(i)|S
t
= s
t
(i))。
[0019]步骤1.2:如果π(a
t
(i)| s
t
(i))>τ,则a
t
(i)=1,并将当前的数据计入预测表,同时将该数据写入P,最后去除重复的压缩模式。
[0020]步骤1.3:如果π(a
t
(i)| s
t
(i))<τ,则a
t
(i)=0。
[0021]步骤2:设置数据收集模块中的数据频率wfc=wfc/2, sc=0。
[0022]步骤3:如果程序在运行周期ψ之内,则执行如下子步骤。
[0023]步骤3.1:更新数据收集模块中的数据访问信息,包括数据频率wfc和饱和计数器sc。
[0024]步骤3.2:如果在后续访问中,P中的元素多次命中并且sc==111,那么设置数据收集模块的窗口W=(1+ε)*W作为奖励反馈,并且在该数据存储阶段先压缩后再存储该数据。
[0025]步骤3.3:如果在后续访问中,P中元素未命中,那么设置 W=(1

ε)*W作为反馈。
[0026]步骤4:返回压缩模式数组P,进入下一轮访问过程,进入步骤1。
[0027]本专利技术的有益效果在于:(1)本方法采用的是一种基于强化学习的频繁写缓存数据压缩方法,即通过强化学习方法指导NVM缓存数据压缩,优化NVM缓存中频繁写数据存储操作,非常适合在NVM缓存中使用,可以有效降低系统功耗、提升系统的性能。
[0028](2)本方法的适用范围比较广泛,在多种类型的非易失性存储器中均可使用。
[0029](3)本方法对现有的体系结构改动较小,算法复杂度不高,软硬件实现开销小。
附图说明
[0030]图1为一种基于强化学习的频繁写缓存数据压缩方法逻辑结构图。
[0031]图2为强化学习模式选择算法示意图。
具体实施方式
[0032]为了使本专利技术的目的及优点更加清楚明白,下面结合附图和实施例对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。
[0033]实施例:一种基于强化学习的频繁写缓存数据压缩方法,利用强化学习方法探索频繁写操作,并压缩该缓存数据,从位级别优化NVM缓存中数据存储操作。图1为本实施例的一种基于强化学习的频繁写缓存数据压缩方法逻辑结构图。该结构图包括如下部分。
[0034](1)数据收集模块。
[0035](2)强化学习模式选择模块。
[0036](3)预测表模块。
[0037](4)压缩模块。
[0038](5)解压模块。
[0039]对应于上述逻辑结构,数据收集模块实时收集缓存的读写操作行为,根据收集到的信息,强化学习模块训练该数据并得到频繁写访问模式,更新预测表数据,最后根据该信息压缩写入缓存的数据。反之,解压缩时,将根据预测表的信息还原被压缩的数据。预测表的结构包含数据(word),频繁写计数器(wfc),饱和计数器(sc)。具体的逻辑关系和步骤如下。
[0040]S1:对于每一次缓存写请求访问操作,将写强度和复用局部性信息记录在数据收集模块。
[0041]S2:构建强化学习模式选择算法,选择适合压缩的模式,将选择的模式信息记录在预测表中。
[0042]S3:根据预测表中缓存数据的压缩标志位,如果待写数据适合压缩,则将其压缩后存储在缓存中,下次读取该数据时,根据该信息还原被压缩数据。
[0043]S4:基于霍夫曼编码的数据压缩算法压缩待存储的数据。
[0044]S5:返回至步骤S1,继续下一次访问缓存操作,直至该任务执行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于强化学习的频繁写缓存数据压缩方法,其特征在于,包括:数据收集模块、强化学习模式选择模块、预测表模块、压缩模块和解压缩模块,其特征在于:(1)所述数据收集模块,含有32位的字、8位频繁写计数器和3位饱和计数器,用于收集缓存的写访问行为;(2)所述强化学习模式选择模块,用于评估收集的数据是否适合压缩;(3)所述预测表模块,含有128个入口,用于存储频繁写数据记录信息,进而根据这些信息进行决策,决定缓存字是否压缩;(4)所述压缩模块,根据基于霍夫曼编码的数据压缩算法来压缩缓存数据;(5)所述解压模块,根据压缩信息来还原被压缩的数据。2.一种基于强化学习的频繁写缓存数据压缩方法,其特征在于,包括如下步骤:S1:对于每一次缓存写请求访问操作,将写强度和复用局部性信息记录在数据收集模块:S2:构建强化学习模式选择算法,选择适合压缩的模式,将选择的模式信息记录在预测表中:S3:根据预测表中缓存数据的压缩标志位,如果待写数据适合压缩,则将其压缩后存储在缓存中,下次读取该数据时,根据该信息还原被压缩数据:S4:基于霍夫曼编码的数据压缩算法压缩待存储的数据:S5:返回至步骤S1,继续下一次访问缓存操作,直至该任务执行完毕。3.如权利要求2所述的一种基于强化学习的频繁写缓存数据压缩方法,其特征在于,所述步骤S2中的强化学习模式选择算法可以通过以下步骤构建:输入:当前状态S
t
,压缩动作A
t
,代理策略π,压缩阈值τ,训练周期ψ,调整大小比例ε;输出:缓存压缩模式...

【专利技术属性】
技术研发人员:沈凡凡徐超陈勇
申请(专利权)人:南京审计大学
类型:发明
国别省市:

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

1