目录
- DownShift: Tuning Shift Reduction With Reliability for Racetrack Memories
- 文章摘要:
- 文章的主要贡献包括:
- 文章的结构如下:
- DownShift
- DownShift通过以下方式改进了现有的数据放置策略:
- GROGU(Generating Reliability Optimized Grouped Uniencoding)
- 以下是GROGU的关键特性和工作原理:
- 参考资料
DownShift: Tuning Shift Reduction With Reliability for Racetrack Memories
这篇文章是关于非易失性赛道存储器(Racetrack Memories, RTM)的研究,标题为“DownShift: Tuning Shift Reduction With Reliability for Racetrack Memories”,发表在《IEEE Transactions on Computers》2023年9月的期刊上。文章的作者包括Asif Ali Khan, Sebastien Ollivier, Fazal Hameed, Jeronimo Castrillon, 和 Alex K. Jones。
文章摘要:
赛道存储器(RTM)因其超高密度、能效和改善的延迟特性,在内存层次结构中的各个层面上都受到了研究,以提高性能和降低能耗。然而,RTM中固有的位移操作(shift operations)对于数据访问是必需的,但会带来性能损失,并可能引起位置错误。这些因素可能阻碍了RTM在替代低延迟、高可靠性的片上内存方面的应用。智能地在RTM中放置内存对象可以显著减少每次内存访问的位移次数,几乎不增加硬件开销。然而,现有的放置策略在应用于不同架构时可能导致次优性能。此外,这些位移优化技术对RTM可靠性的影响尚未得到充分研究。文章提出了DownShift,一种通用的数据放置机制,通过考虑(1)内存对象的时序和活跃度信息,以及(2)底层内存架构(包括所需的位移容错)来改进先前的方法。此外,文章还提出了一种名为GROGU的新的位移对齐可靠性技术。GROGU利用DownShift实现的减少位移窗口,提供了与现有最先进技术相比更好的可靠性、面积和能耗。DownShift与现有最先进技术相比,减少了3.24倍的位移次数、47.6%的运行时间和70.8%的能耗。GROGU在仅增加3.2%的延迟的情况下,面积消耗减少2.2倍,能耗减少1.3倍,同时提供了16.8倍的位移容错改进。
文章的主要贡献包括:
- 提出了DownShift,这是一种新的快速启发式算法,它分析内存跟踪中具有不同生命周期的对象,并将它们分配到不同的数据库集群(DBCs)中,以利用改进的时间局部性进行位移最小化。
- 提出了GROGU,这是一种新颖的、协作设计的RTM可靠性方案,它利用DownShift的位移减少来提供高效的可靠性,同时减少资源消耗。
- 对不同的数据放置解决方案(包括跨DBC和DBC内部的放置)和不同的可靠性方案进行了全面分析,并分析了各种方案对性能和能耗的影响。
文章的结构如下:
- 第二部分介绍了RTM架构和属性,以及现有的数据放置和可靠性技术。
- 第三部分描述了DownShift数据放置方法,用于减少位移。
- 第四部分提出了GROGU,用于通过协作设计的DownShift改进位移减少。
- 第五部分展示了实验方法和结果,以证明DownShift与GROGU相比先前工作的面积、能耗和性能优势。
- 第六部分讨论了可能相关的其他相关工作。
- 第七部分给出了结论。
DownShift
- DownShift是一种针对赛道存储器(Racetrack Memory, RTM)的数据放置机制,它旨在通过智能地放置内存对象来减少位移操作的次数,从而提高RTM的性能和可靠性。
- 位移(shift)操作是RTM中访问数据所必需的,但它们会导致性能损失和位置错误。
DownShift通过以下方式改进了现有的数据放置策略:
-
生命周期分析:DownShift考虑了内存对象的生命周期信息,即它们在内存访问序列中的首次和最后出现的时间。通过分析这些信息,DownShift能够识别出生命周期不重叠的变量,这些变量在同一个数据库集群(Domain Wall Block Cluster, DBC)中存储时,可以减少位移操作。
-
时间局部性:DownShift利用内存访问序列中的时间局部性,即连续访问的内存对象在时间上接近。通过将这些对象放置在相邻的DBCs中,可以减少在访问这些对象时所需的位移次数。
-
位移最小化:DownShift通过将具有不同生命周期的变量分配到不同的DBCs,以及在DBC内部进行优化放置,从而减少了每次内存访问所需的位移次数。这种方法不仅减少了位移操作,还降低了能耗和提高了RTM的可靠性。
-
协作设计:DownShift与GROGU(一种新的位移对齐可靠性技术)协作设计,以实现更高的可靠性。GROGU利用DownShift减少的位移窗口,提供了更高效的可靠性保障,同时减少了资源消耗。
-
实验结果:DownShift在实验中表现出显著的性能提升。与现有的最先进技术相比,DownShift减少了3.24倍的位移次数,减少了47.6%的运行时间和70.8%的能耗。此外,与领先的可靠性方法相比,GROGU在仅增加3.2%的延迟的情况下,面积消耗减少了2.2倍,能耗减少了1.3倍,同时提供了16.8倍的位移容错改进。
DownShift的提出,为RTM的数据放置提供了一种新的视角,它不仅关注于减少位移操作,还考虑了内存对象的时序和活跃度信息,以及与底层内存架构的兼容性。这种综合考虑的方法使得DownShift能够在不同的RTM架构中实现性能和可靠性的显著提升。
GROGU(Generating Reliability Optimized Grouped Uniencoding)
- GROGU(Generating Reliability Optimized Grouped Uniencoding)是一种为赛道存储器(Racetrack Memory, RTM)设计的新型可靠性方案,旨在检测和纠正位移操作中可能出现的位置错误。
- GROGU通过在RTM的纳米线(nanowire)两端添加额外的过溢域(overflow domains)来实现这一目标,这些过溢域用于存储特定的编码模式,以便于在发生位移错误时进行检测和修正。
以下是GROGU的关键特性和工作原理:
-
过溢域的编码:GROGU在纳米线的两端各添加了w个额外的过溢域,这些域被初始化为一个重复的二进制序列(例如,1和0的交替序列)。这种序列被称为Johnson编码,它类似于一个计数器,用于在位移过程中跟踪纳米线的位置。
-
位移操作中的编码维护:在位移操作期间,GROGU通过特定的端口(称为GLW/GLW和GRW/GRW)控制纳米线两端的过溢域,以保持预定的编码模式。这些端口允许在位移过程中插入1或0,以保持Johnson编码的连续性。
-
位置错误的检测:GROGU通过比较纳米线的实际编码与预期编码来检测位置错误。如果在位移过程中发生了位置错误,纳米线的编码将与预期的Johnson编码不匹配。GROGU可以检测单个位移错误,并且能够通过更复杂的操作检测和修正多个位移错误。
-
编码修复和纠正位移:一旦检测到位置错误,GROGU将执行一系列操作来修复过溢域的编码,并执行必要的纠正位移。这些操作包括分段位移(segmented shifts),它只影响过溢域内的域,而不影响纳米线中的其他数据域。
-
可靠性和性能权衡:GROGU的设计允许在保持高可靠性的同时,最小化性能开销。通过在位移操作中隐藏故障检查的延迟,GROGU能够在不影响性能的情况下提供强大的错误检测和纠正能力。
-
可扩展性:GROGU的硬件开销相对较低,因为它只需要额外的过溢域和少量的端口。这使得GROGU在不同大小的纳米线和不同的位移距离下都具有良好的可扩展性。
-
实验结果:GROGU在实验中显示出了优越的可靠性性能。与现有的可靠性方案相比,GROGU在保持相似或更好可靠性的同时,显著降低了能耗和面积开销。
总的来说,GROGU通过在RTM中引入一种新的编码和位移错误处理机制,提高了RTM的可靠性,同时保持了较低的性能开销和硬件复杂度。这种方案特别适用于与位移最小化策略(如DownShift)结合使用,以实现更优的RTM性能和可靠性。
参考资料
[1] DownShift: Tuning Shift Reduction With Reliability for Racetrack Memories
[2]
[3]