计算存储将数据局部性发挥到极致

随着重心从计算转移到数据,架构的响应方式是使前者更接近后者。这不仅有望提高应用程序吞吐量,还能提高能源效率。

The Next Platform中,我们将这种以数据为中心的趋势与从大型机到客户端/服务器、从客户端/服务器到 Web 的历史转变一样深刻。在某些情况下,将计算移近数据还意味着主机 CPU 可以摆脱大量处理苦差事,这可以进一步提高整体性能。一个典型的例子是 Mellanox Technologies 使用其交换机和适配器 ASIC 从主机卸载 MPI 原语和其他基于网络的操作。类似的情况也发生在存储领域,尤其是 SSD,被称为“计算存储”。

将计算资源转移到存储设备中不仅可以缩短数据的访问路径,从而降低延迟,还可以缓解 I/O 端口的瓶颈。当涉及到非常大的数据集时(这里,我们谈论的是 PB),将所有内容保留在存储端可以产生巨大的影响。例如,要通过 32 个 PCIe Gen3 通道将 1 PB 的数据从存储传输到主内存,需要整整 9 个小时。 Gen4 的时间减少了一半,当 Gen5 到来时,时间也会减少一半,但你仍然在谈论几个小时。如果您必须通过 100 Gbps 网络将数据从存储阵列移动到服务器,则加载数据需要一天多的时间。计算存储意味着您只需处理设备本身内极快的总线。

计算存储市场有许多新进入者,包括三星和西部数据等大公司,但也有一些有趣的初创公司,包括 Scaleflux、Eideticom 和 NGD Systems。目前,NGD 似乎是其中最雄心勃勃的,现在提供配备 Arm 处理器的 16 TB NVM-Express SSD,专门用于运行应用程序代码。Arm 硬件的存在(在本例中是集成到 SSD 控制器 ASIC 中的四核 Cortex-A53 处理器)代表着与大多数早期计算存储产品(依赖 FPGA 来提供处理能力)的显著不同。

NGD 还通过在 14 纳米晶体管上制造 ASIC 开辟了新天地,这是首款采用该工艺节点的 SSD 控制器芯片。 NGD Systems 首席技术官兼联合创始人 Vladimir Alves 表示,使用更先进的节点使他们能够以 2.5 英寸的外形尺寸提供所需的功能,同时消耗最低的功耗。该 16 TB NVMe 设备总共消耗 12 瓦特,每 TB 功耗不到 1 瓦特,据该公司称,这是业界最高的能源效率。

尽管嵌入式 Cortex-A53 处理器是该解决方案的关键,但 Alves 表示,对他们来说,更大的努力是开发编程模型,以确保常规应用程序开发人员能够利用 ASIC。其中包括为现场计算提供高级语言支持的 API,以及在处理器上运行 Ubuntu Linux 的挂钩。

大多数情况下,在 X86 服务器上运行的应用软件只需交叉编译到 Arm 即可移植到 SSD 上。我们说“大部分”是因为显然主机代理被用作中间人,从 CPU 端驱动应用程序。由于 Arm 处理器运行 Ubuntu,在某些情况下,用户可以完全绕过应用程序软件,只开发 Linux shell 脚本来执行模式匹配、过滤或搜索存储数据等操作。 Linux 文件系统支持目前仅限于 Ext4 和 GFS2。然而,由于拥有基于 Hadoop 应用程序的大客户的鼓励,HDFS 的移植也在进行中。

NGD 技术的主要目标之一是大型 Web 服务提供商,尤其是搜索、模式匹配和索引固有的数据密集型工作。根据思科系统公司的全球云指数 (GCI),这些超大规模环境容纳了全球数据中心存储的所有数据的一半以上。到 2021 年,这一比例预计将增长到 65%。同年,所有数据中心存储的数据总量预计将达到 1.3 ZB。所有这些都预示着计算存储的良好前景。

当然,四核 Cortex-A53 无法提供服务器级性能,因此这不仅仅是将应用程序从 CPU(或 GPU)移植到 SSD 并期望代码神奇地加速的问题。当你谈论机器学习代码时,将推理智能转移到 SSD 而不是训练可能更合理。但假设这些计算增强型 SSD 可用于大量节点,开发人员将能够利用分布式计算来根据需要分散计算。由于计算和存储现在集成到单个设备中,因此可扩展性是内置的。

NGD 的下一个重要用例是边缘存储,其中数据流入量巨大,存储容量有限,而且也许最重要的是,将大量数据发送回数据中心的能力受到严重限制。好消息(从 NGD 的角度来看)是,边缘设备是比数据中心更丰富的数据环境,再次使用思科的 GCI 预测,预计到 2021 年,仅物联网设备每年就会产生 847 ZB 的数据,尽管只是其中的一小部分将被存储。在这里,计算存储不仅可以在减少必须保存的数据量方面发挥关键作用,而且在近乎实时地执行分析和推理方面也可以发挥关键作用。

内容交付是 NGD 关注的另一个市场。在这里,计算存储可以帮助处理诸如加密/数字版权管理(用于验证用户是否可以访问内容)和服务本地性等问题。据该公司称,将计算放在 SSD 上意味着您可以摆脱通常执行这些任务的数据库服务器。考虑到您只需要不到十几个 16 TB 的 SSD 就可以容纳整个 Netflix 和 Amazon Prime 库,您可以开始看到这将如何改变内容交付的方式。

迄今为止,该公司仅发布了针对特定应用程序的少数加速实例。在他们最明显的例子中,NGD 证明,通过在 SSD 上使用原位处理,Facebook 人工智能相似性搜索 (FAISS) 软件可以加速多达 80 倍。在这种情况下,随着数据集的增长,NGD 平台上的执行时间几乎没有增加,而 X86 服务器的运行时间却急剧增加。

尽管如此,阿尔维斯坚持认为,只要可以提取并行性,就可以显着提高性能和能源效率。 “我们发现某些工作负载的性能提高了 10 倍或 100 倍,”他说。 “在其他工作负载中,可能是 10% 或 20%。”


本站全部资讯来源于实验室原创、合作机构投稿及网友汇集投稿,仅代表个人观点,不作为任何依据,转载联系作者并注明出处:https://www.lvsky.net/76.html

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论