Login / Register
Evolving data needs
自从有了电脑, 有效地从处理器中获取信息一直是一个挑战. 那堆可怕的打孔卡片, 磁带盘和软盘驱动器被旋转硬盘驱动器取代,旋转硬盘驱动器可以快速读取和存储大量数据(在当时). 这些驱动器连接到一台计算机上, 如果用户想在计算机之间移动数据, sneakernet和FTP是最好的选择. 但是,这些方法导致同一文件的许多副本难以保持同步和管理.
In the mid-1980s, Sun微系统公司的一些聪明的工程师通过创建网络文件系统(NFS)解决了文件复制问题。, 它允许多台计算机访问驻留在一个位置的文件. At first, this location was another computer; later, 该位置位于网络附加存储(NAS)设备上.
Data marts, data warehouses and data silos have given way to data lakes, 哪个术语用于描述非易失性中可用的大量数据, 可通过网络为各种用户和目的访问的块寻址存储器, as shown in Figure 1.
随着数据集从兆字节增长到太字节再到拍字节, 将数据从块存储设备跨互连移动到系统内存的成本, 执行计算,然后将大型数据集存储回持久存储的时间和功率(瓦特)都在增加。. 此外,异构计算硬件越来越需要访问相同的数据集. For example, 通用CPU可用于组装和预处理数据集和调度任务, 但专门的计算引擎(如GPU)在训练人工智能模型方面要快得多. 需要一种更有效的解决方案,减少将大型数据集从存储直接传输到处理器可访问的内存.
一些组织已经通过保持大数据集来推动行业解决这些问题, byte-addressable, sharable memory. In the 1990s, 可扩展的相干接口(SCI)允许多个cpu在一个系统内以一致的方式访问内存. 异构系统架构(HSA)1 规范允许在同一总线上不同类型的设备之间共享内存. 从2010年开始的十年, Gen-Z标准提供了一种内存语义总线协议,具有高带宽和低延迟的一致性. 这些努力最终形成了今天广泛采用的计算快速链接(Compute Express Link, CXLTM)标准. 自计算快速链路(Compute Express Link, CXL)联盟成立以来, 美光一直是并且仍然是一个积极的贡献者.
CXL共享、零拷贝内存
Compute Express Link 打开节省时间和电力的大门. The new CXL 3.1标准允许字节可寻址, 负载-存储-可访问的内存,如DRAM,在不同的主机之间以低延迟共享, 采用工业标准组件的高带宽接口.
这种共享打开了以前只能通过昂贵的专有设备才能实现的新大门. 使用共享内存系统, 数据可以一次加载到共享内存中,然后由管道中的多个主机和加速器多次处理, 而不会产生将数据复制到本地内存的成本, 块存储协议和延迟.
此外,还可以消除一些网络数据传输. For example, 数据可以通过连接到传感器阵列的主机在一段时间内被摄取并存储在共享内存中. 曾经驻留在记忆中, 为此目的而优化的第二个主机可以清理和预处理数据, 然后由第三台主机处理数据. 与此同时,第一个主机一直在摄取第二个数据集. 需要在主机之间传递的唯一信息是一条指向数据的消息,表明数据已准备好进行处理. 大型数据集无需移动或复制,从而节省带宽、能源和内存空间.
零拷贝数据共享的另一个示例是生产者-消费者数据模型,其中单个主机负责收集内存中的数据, 然后,多个其他主机在写入数据后使用数据. As before, 生产者只需要发送一个指向数据地址的消息, 向其他主机发出信号,表明它已经准备好了.
增强的记忆功能
具有内置处理功能的CXL内存模块可以进一步增强零复制数据共享. For example, 如果CXL内存模块可以完全在模块中对数据对象执行重复的数学操作或数据转换, 节省系统带宽和功耗. 这些节省是通过使用一种称为近内存计算(NMC)的功能命令内存模块执行操作而无需数据离开模块来实现的。.
Additionally, 可以利用低延迟CXL结构以低开销非常快速地将消息从一个主机发送到另一个主机, 主机与内存条之间, 或者在内存模块之间. 这些连接可用于同步步骤,并在生产者和消费者之间共享指针.
除了NMC和通信优势之外, 高级内存遥测可以添加到CXL模块中 提供一个了解共享设备中实际应用程序流量的新窗口2 不增加主机处理器的负担. 随着深入了解, 操作系统和管理软件可以优化数据放置(内存分层)并调整其他系统参数以满足操作目标, 从性能到能耗. 额外的内存密集型增值功能(如事务)也非常适合NMC.
Memory lake
美光对合并大型公司感到兴奋, 将CXL全局共享内存和增强内存特性扩展到我们的内存湖概念中. 内存湖利用了cxl3的新特性.并添加本博客中讨论的功能,如图2所示.
内存湖包括以下特性:
- 高效的容量和成本
- 数百tb到pb的全局可寻址共享内存,允许对最大的数据集进行非分片访问
- 内存分层,其中最关键的数据总是在最快的内存中, 但是成本和数据持久性是通过将不太重要的数据保存在更经济有效的内存中来控制的
- 可配置的拓扑
- 通过共享实现性能
- 数据共享,通过负载存储语义,多达数十(或数百)台主机可以访问可字节寻址的数据,而无需复制
- 低延迟实现
- 低于600纳秒的数据加载和存储时间
- 通过CXL结构进行同步(少于1微秒)
- 近内存计算加速性能
- 数据永远不会离开内存模块的计算能力(内存附近或内存内计算)
- 本机内存模块支持原子操作
1 异构系统架构基础.org)
2 D. Boles, D. Waddington and D. A. Roberts,《沙巴体育结算平台》
可扩展内存系统寻路组,美光
高级内存解决方案组从事研究, 设计和测试新的存储技术. 我们的专家团队与合作伙伴密切合作, customers, universities, 和标准机构,以确保美光内存解决方案始终处于内存技术的领先地位.