发明名称 软硬件协同管理的DRAM-NVM层次化异构内存访问方法及系统
摘要 本发明提出了一种软硬件协同管理的DRAM‑NVM层次化异构内存系统。该系统把NVM作为大容量的非易失内存使用,而DRAM视为NVM的缓存。有效利用TLB和页表结构中的一些预留位,消除了传统硬件管理的层次化异构内存架构中的硬件开销,将异构内存系统中缓存管理问题转移到软件层次,同时降低了最后一级cache缺失后的访存时延。考虑到大数据应用环境中,很多应用数据局部性比较差,在DRAM缓存中采用传统的按需数据预取策略会加剧缓存污染问题,本发明在DRAM‑NVM层次化异构内存系统中采用了基于效用(Utility‑Based)的数据预取机制,根据当前内存压力、应用访存特征,决定是否将NVM中的数据缓存到DRAM中,从而提升DRAM缓存利用率、NVM主存到DRAM缓存的带宽利用率。
申请公布号 CN105786717A 申请公布日期 2016.07.20
申请号 CN201610166238.0 申请日期 2016.03.22
申请人 华中科技大学 发明人 廖小飞;刘海坤;金海;陈宇杰;郭人通
分类号 G06F12/02(2006.01)I;G06F12/1009(2016.01)I 主分类号 G06F12/02(2006.01)I
代理机构 华中科技大学专利中心 42201 代理人 曹葆青
主权项 一种软硬件协同管理DRAM‑NVM层次化异构内存访问方法,其特征在于,包括以下步骤:步骤1 TLB地址翻译,获取虚拟页所在表项的物理页号ppn、P标识以及overlap tlb field域内容,根据ppn将虚拟地址翻译成NVM物理地址;步骤2 判断内存访问是否在片上cache中命中,若命中,CPU直接从片上cache中取请求的数据块,内存访问流程结束;否则转步骤3;步骤3 根据步骤1获取的P标识判断内存访问类型,若P为0,说明访问NVM内存,转步骤4,更新TLB表中overlap tlb field域信息,并根据动态阈值调整算法中自动调整的预取阈值以及步骤1获取的overlap tlb field域判断是否将该虚拟页对应的NVM物理页预取到DRAM缓存中;若P为1,说明访问DRAM缓存,表明缓存命中,根据步骤1获取的overlap tlb field域信息以及物理地址偏移计算得出要访问的DRAM缓存地址,转步骤6进行DRAM缓存访问;步骤4 若从步骤1中获取的overlap tlb field值小于预取阈值,在TLB中查找NVM主存页对应的表项,将其overlap tlb field域(此时该域用作计数器)加一;若从步骤1中获取的overlap tlb field值大于预取阈值,转步骤5,将NVM主存页预取到DRAM中;否则转步骤6直接访问NVM内存,其中预取阈值由预取阈值运行时调节算法决定;步骤5 预取虚拟地址对应的物理页到DRAM中,并更新TLB和扩展的页表;步骤6 内存访问,根据传入到内存控制器中的地址进行内存访问。
地址 430074 湖北省武汉市洪山区珞喻路1037号