北卡罗来纳州立大学的计算机工程研究人员开发了新的软件和硬件设计,这些设计应该限制编程错误并提高使用非易失性存储器(NVM)技术的设备的系统性能。
“目前,计算机依靠动态随机存取存储器(DRAM)进行操作,”北卡罗来纳州电气和计算机工程副教授詹姆斯塔克说,他是两篇关于这项工作的论文的共同作者。“但是DRAM具有很大的局限性,因此难以扩展以应对下一代系统。
“因此,下一代计算机系统可能会依赖新兴的NVM技术进行操作和数据存储。我们的工作重点是解决从DRAM计算范式转向NVM所固有的一些编程和性能挑战,” Yan Solihin,北卡罗来纳州电气和计算机工程教授,论文的共同作者。
NVM系统面临的一个挑战是在更改内存之前确定如何记录或保存一大块内存。这些日志允许用户在系统出现故障时重置内存,从而破坏正在修改的内存。
目前,登录NVM系统需要程序员将额外的代码合并到他们的程序中 - 降低性能 - 并增加写入内存的操作数量。如果经常写入内存可靠性会受到影响。
为了解决这个问题,研究人员开发了一个名为Proteus的系统,它包括一个软件模型和互补硬件。
由于NVM计算机目前主要是理论上的,因此研究人员将Proteus的性能与详细模拟器中的其他技术进行了比较。
其他技术写入内存比Proteus多两到六倍,这意味着Proteus在保持内存的长期可靠性方面要好得多。
“与现有技术相比,Proteus能够在写入内存方面几乎免费记录内存,”Solihin说。
Proteus在运行速度方面也表现优于其他技术,尽管其优势更为适中 - 比现有最佳技术提高了9%至11%。
NVM系统的第二个挑战与系统如何为数据提供地址以便检索它有关。出于安全性和其他原因,某些程序要求更改这些地址 - 但这会使编程复杂化并降低NVM系统的性能。
为了解决这个问题,研究人员开发了一种硬件驱动的技术,可以有效地为数据创建永久地址,但允许程序根据需要为这些地址提供假名。
“编程仍然需要考虑硬件,但它允许程序员使用他们习惯的虚拟内存方法,”Tuck说。“在模拟中,我们的方法比以前的技术运行速度至少快1.5倍。”
这两项新技术的论文将于10月14日至18日在马萨诸塞州波士顿举行的IEEE / ACM国际微体系结构研讨会上发表。
第一篇论文的主要作者,“Proteus:一种灵活,快速的软件支持的NVM硬件记录方法”,是Seunghee Shin,博士。NC州的学生。该论文由Satish Kumar Tirukkovalluri博士共同撰写。北卡罗来纳州立大学的学生,以及北卡罗来纳州立大学电气和计算机工程系教授Yan Solihin。
第二篇论文的主要作者,“硬件支持的持久对象地址转换”,是王天聪,博士。NC州的学生。该论文由Sakthikumaran Sambasivam博士共同撰写。北卡罗来纳州立大学的学生,以及北卡罗来纳州立大学电气和计算机工程系教授Yan Solihin。
这项工作部分得到了国家科学基金会的支持。