利索能及
我要发布
收藏
专利号: 2021102538659
申请人: 重庆邮电大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-12-30
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于可变电阻式存储器的数据分配优化方法,其特征在于,包括以下步骤:

S1、将程序分为多个区段,利用程序概貌信息统计技术根据应用程序的访问特征,获取程序变量的访问模式,再利用静态分支概率预测技术,得到每个程序区段的每个变量的读操作频率数学期望和写操作频率数学期望;

S2:根据得到的各个程序区段变量的读操作数频率数学期望和写操作数频率数学期望,动态地配置可变电阻式存储器SLC/MLC单元数目配比,寻找出最佳比例配置和最优数据分配方案;

步骤S2采用区段时延最优数据分配优化算法得到最佳SLC/MLC配比和最优数据分配方案,所述区段时延最优数据分配优化算法包括:S231:对于当前SLC/MLC配比下的所有存储在MLC存储模式单元的变量x,计算其在MLC模式下存储时延开销li,x,m、SLC模式下存储时延开销li,x,s和变量x从MLC单元迁移到SLC单元的移动时延开销li,x,move;计算li,x,m‑li,x,s‑li,x,move,若计算结果大于0,则将变量x放入集合TreeMap‑M中,并将变量按li,x,m‑li,x,s‑li,x,move计算结果从大到小排序;

S232:对于当前SLC/MLC配比下的所有存储在SLC存储模式单元的变量x,计算其在SLC模式下存储的时延开销li,x,s,将变量x放入集合TreeMap‑S中,并将集合元素按时延从小到大进行排序;

S233:判断是否还有剩余的SLC空间,若SLC空间足够,取出TreeMap‑M中第一个元素,将对应变量分配至SLC;否则,在满足交换前时延大于交换后时延条件下,将TreeMap‑M中第一个元素与TreeMap‑S中第一个元素对应的变量进行存储位置交换;

S234:当TreeMap‑M为空或不满足交换时延条件时,变量分配即结束,得到当前程序区段在当前SLC/MLC配比情况下的数据分配方案;

S3:基于步骤S2得到的最佳SLC/MLC配比和对应的最优数据分配方案,为程序区段中每个变量分配最佳的存储地址。

2.根据权利要求1所述的一种基于可变电阻式存储器的数据分配优化方法,其特征在于,步骤S1具体包括以下步骤:S10:将程序划分为多个程序区段;

S11:得到划分后的程序区段后,通过程序概貌信息统计技术确认每个程序区段里变量的数目和大小,记录每个变量可能的读写操作次数,并得到程序数据变量在某个程序区段所有可能的访问模式{F(i,x,1),F(i,x,2),...,F(i,x,A)},其中F(i,x,a)={W(i,x,a),R(i,x,a)},F(i,x,a)表示程序区段i变量x第a种访问模式,R(i,x,a)和W(i,x,a)分别表示变量x的读、写次数,对于变量x最多有A种不同访问模式,即a={1,2,……,A};

S12:通过静态分支频率预测得到{F(i,x,1),F(i,x,2),...,F(i,x,A)}中每一种访问模式的发生概率{p(i ,x ,1) ,p(i ,x,2) ,...,p(i ,x ,A)};然后根据求得程序区段i变量x读操作频率数学期望;同样地,根据

求得程序区段i变量x写操作频率数学期望。

3.根据权利要求1所述的一种基于可变电阻式存储器的数据分配优化方法,其特征在于,步骤S2具体包括以下步骤:S21:设置可变电阻式存储器主存单元的初始状态和初始容量大小;

S22:遍历每一种SLC/MLC单元数目配比,计算在每种SLC/MLC配比情况下的访存时延开销;

S23:比较该程序区段不同SLC/MLC配比情况下的访存时延开销,选择时延开销最小时的SLC/MLC配比为可变电阻式存储器中该程序区段的最佳SLC/MLC配比,将该最佳比例配置所对应得数据分配方案作为该程序区段的最优数据分配方案。