[发明专利]一种基于可变便笺存储器的数据分布优化方法有效
申请号: | 201810660062.3 | 申请日: | 2018-06-25 |
公开(公告)号: | CN109002257B | 公开(公告)日: | 2021-04-23 |
发明(设计)人: | 龙林波;韩东洪;艾青 | 申请(专利权)人: | 重庆邮电大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京同恒源知识产权代理有限公司 11275 | 代理人: | 赵荣之 |
地址: | 400065 *** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 可变 便笺 存储器 数据 分布 优化 方法 | ||
1.一种基于可变便笺存储器的数据分布优化方法,其特征在于,该方法具体包括以下步骤:
S1:根据应用程序的访问特征,将程序划分为多个程序片段,再利用profiling技术统计出每个程序片段的变量访问信息;
S2:在每个程序片段执行之前,根据程序片段的变量访问信息,动态调整可变便笺存储器中单层存储模式与多层存储模式的单元数目,搜寻可变便笺存储器中单层单元(Single-Level Cell,SLC)/多层单元(Multi-Level Cell,MLC)大小的最佳配置;
S3:基于给定的SLC/MLC大小配置,利用数据分布优化算法,为程序片段中每个变量分配最佳的存储地址,实现系统访问能耗的最小化;
S4:在程序编译的过程中,在每个程序片段之前加入相应的数据分布优化程序,在系统中运行程序,以降低系统访问能耗;
所述步骤S2中,针对每个程序片段,搜寻可变便笺存储器中SLC/MLC大小的最佳配置具体包括以下步骤:
S21:假定可变便笺存储器SPM单元数目为Nspm,所有单元的初始状态为单层单元SLC,则SLC SPM的初始大小为SS=Nspm,MLC SPM的初始大小为SM=0;
S22:调用步骤S3所述的数据分布优化算法,获得访存能量开销最小的数据分配方案及其能量开销,并记录;
S23:将一个SLC单元转换为MLC单元,则SLC SPM的大小为SS=SS-1,然后根据SLC数量计算MLC SPM的大小SM=(Nspm-SS)×d,其中d为一个MLC单元的比特数,重复步骤S22和S23,直到可变便笺存储器单元SLC的大小等于零;
S24:选择访存能量开销最小的SLC/MLC大小配置,作为该程序片段的最佳SLC/MLC配置。
2.根据权利要求1所述的一种基于可变便笺存储器的数据分布优化方法,其特征在于,步骤S3中,所述数据分布优化算法具体包括以下步骤:
S31:建立一个三元数组E[i,ss,sm],记录当SLC SPM和MLC SPM剩余空间大小为ss和sm时,第i个变量被存储后的最小能耗开销;
S32:假设程序片段的所有变量首先存储在内存动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)中,则:E[i,ss,sm]=∑i=1ed(di)+Ec,其中,ed(di)代表变量di存储在内存中的访问能耗,Ec代表基于前一个程序片段的SLC/MLC大小配置,在本程序片段SLC/MLC的配置情况下需产生的转换能耗;
S33:建立数据分配的递归关系,
E[i,ss,sm]=min(E[i-1,ss,sm]+edm(di),
E[i-1,ss-size(i),sm]+es(di)+esm(di)-ed(di),
E[i-1,ss,sm-size(i)]+em(di)+emm(di)-ed(di))
其中,size(i)为变量i的大小,ed(di)为数据i存储在DRAM中的访问能量,edm(di)为数据i到DRAM中的迁移能量,es(di)为数据i存储在SLC SPM中的访问能量,esm(di)为数据i到SLCSPM中的迁移能量,em(di)为数据i存储在MLC SPM中的访问能量,emm(di)为数据i到MLC SPM中的迁移能量;
S34:通过程序递归获得最佳的数据分布方案及其能耗开销。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810660062.3/1.html,转载请声明来源钻瓜专利网。