非易失内存 总结篇

谨以此告别硕士生涯前半程。

前言

整理无味,搁置可惜。

这个题目起的有些大了,实际上聚焦于讨论非易失内存的页面迁移算法。死课题,炒冷饭,加之学业以外的糟心事情,现在回想,仍然失笑。

附件自取。覆盖面较全了,只是不够详细。

关于非易失内存

行文至此,还是讲讲 NVM 吧。

为什么 NVM 死了

大玩家 Intel 撤了。

商业之外,谈谈我的看法。NVM 主打一个 memory 的名字却不干 memory 的事,当前的内存体系结构里也根本没有「非易失」一层,这导致:要么做 memory 牺牲持久性,要么做纯 storage,无非在内存映射等方式下占点便宜。但 I/O 密集负载有自己的解决方案,做 storage 和现有介质相比并无显著优势。

以 Optane 为例,是可以配置成好几个模式,比如:做 storage 时可以作为块设备或字节设备 (驱动意义上);做 memory 时则和一般内存条没有太大区别,除了不能配进同一个 NUMA 节点。容量和持久性对 memory 不可得兼。当然,配进 NUMA 后与原本的 DRAM 节点形成快慢内存,可以去炒另一个概念 Multi-Tiered Memory,但是这个方向又有另一个正主 CXL,地位尴尬。

最后,如果只当成 memory,则所谓大容量和单位成本低只能是画饼,要先大规模应用才有资格去谈,至少 Optane 活着那几年是一点不便宜。英特尔自己也在逐步转向 CXL。AI 时代看来,CXL 也快死了,也许工业界根本不需要什么 Emerging Memory Architecture。

关于存算

关于近存计算和存算一体。

最近的趋势是,二者已经逐渐归为一谈。最初的模拟存算借着非易失存储介质 (MRAM,ReRAM) 而走红,本意是为解决冯诺伊曼架构下内存和带宽 roofline 而存在,在笔者另一篇文章里进行了简要介绍。然而 NVM 尚不成熟,模拟存算又始终无法满足精度要求,转向数字存算则面临器件-电路-架构研究的脱节,从集成电路水到体系结构,目前看来还是以集成电路为主战场。在此推荐一位博主的文章 @Sasasatori,读者如有兴趣,可自行了解。

总结而言,CIM/PIM 仍面临与 NVM 相同的困境,不过毕竟是更靠近微电子一些,非我主场,不好置喙更多,仅仅表达拙见。以上。

附件

下载链接