计算存储是不是智算时代的杀手锏?

2023-12-25 18:30

本文主要是介绍计算存储是不是智算时代的杀手锏?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

想象一下,在一个繁忙的数据中心里,有一家大型互联网公司叫做“数据中心的故事”。这家公司一直在使用传统的CPU架构来处理海量数据。但是随着数据量的不断增长,CPU架构遇到了很多问题和瓶颈,这让“数据中心的故事”感到非常苦恼。

有一天,“数据中心的故事”请来了一位神秘的朋友——魔术师DPU,他带来了全新的解决方案。魔术师DPU一挥魔法棒,将数据中心里的一些工作负载交给了专门处理这些工作的DPU。这样一来,CPU就可以减轻负担,专注于处理更加复杂的计算任务。

“数据中心的故事”觉得这个魔术师DPU非常神奇,但魔术师DPU说:“这还不是全部,我还有一个更神奇的朋友——超级魔法师CSD。”

于是,超级魔法师CSD也加入了“数据中心的故事”,他带来了一个全新的计算存储驱动器(CSD)。这个驱动器可以将计算和存储结合在一起,让数据存储变得更高效。在超级魔法师CSD的帮助下,“数据中心的故事”的数据中心变得更加强大、灵活和高效。

传统的数据中心架构主要以CPU为中心,这使得数据中心的计算和存储任务主要依赖于CPU的处理能力。但是,随着数据量的不断增长,这种架构逐渐显现出一些问题和瓶颈,如处理速度慢、效率低下等。

目前已经从传统CPU为中心的架构,开始向以数据为中心的新型架构转变。新的架构处理需求,就涌现了多种卸载传统CPU计算能力的产品,比如DPU、CSD等。

DPU的出现为以数据为中心的计算架构提供了创新思路。它主要分担数据中心其他处理器的工作,如网络卸载、计算卸载或数据服务卸载等,以节省成本,尤其是降低进入数据中心的资本成本和降低数据中心的运营成本。通过将基础设施服务卸载和隔离出来,DPU通过卸载CPU和GPU的工作负载,可以使CPU和GPU专注于处理核心的计算任务,提高整体性能。此外,DPU还通过硬件加速技术,以更快的速度处理这些服务,从而大大提高了数据中心的效率。

例如,一个BlueField-3 DPU所提供的数据中心基础设施服务可相当于多达300个CPU核才能实现的服务。

类似地,CSD的出现也是为了优化数据中心的性能和效率。通过将计算和存储结合在一起,CSD可以利用硬件计算加速引擎将存储处理任务集成到盘上,从而释放CPU进行更高价值的工作。这种架构可以提高存储效率和性能。

在计算存储领域CSD,三星和ScaleFlux是业界的两大主要参与者,在计算存储驱动器(CSD)方面都有一定的研发和应用进展。

三星SmartSSD计算存储驱动器 (CSD) 是业界首款可定制、可编程的计算存储平台,它可以将计算推进到数据所在的位置,从而显著加速数据密集型应用,增速达10倍以上。SmartSSD CSD可以为各种应用加速,包括数据库管理、视频处理、人工智能层和虚拟化等。

它的核心是Xilinx自适应平台,这是利用Xilinx FPGA的可编程性创建的完全可定制的计算存储设备。在存储数据的位置对数据进行高速计算,超快速并行计算将CPU解放出来,以便更高效地处理其它高级任务。不仅如此,SmartSSD CSD的另一个优势是能在不牺牲性能或存储容量的情况下提高存储效率和节省存储空间。

ScaleFlux也推出了了一款名为CSD 3000的计算存储SSD。它利用硬件计算加速引擎将存储处理任务集成到盘上,从而释放CPU进行更高价值的工作,延长使用寿命,并提高整体性能。它的核心设计是针对闪存存储优化的处理方式,在数据写入时进行透明压缩,并在数据读取时进行无缝解压缩,这减轻了CPU的负担。这种透明压缩技术最高可以使存储的数据量提升高达4倍,从而提高存储效率和节省存储空间。

此外,CSD 3000通过采用可变长度映射和写入聚合(write aggregation)技术,优化了数据写入方式,减少写入操作对闪存存储的擦除和写入次数,从而有效地延长了SSD的使用寿命。

除此之外,还有一些新兴公司和团队也在计算存储领域进行积极的研发和创新。

同时,目前计算存储领域也在SNIA和NVME两大组织的带领下,形成行业生态。在2022年8月已经发布了《Computational Storage Architecture and Programming Model Version 1.0》。

目前加入到SNIA工作组的成员已经有258家,行业生态的建设如火如荼。

NVME规范也成立相应的工作组,相应的功能/命令规范也在讨论制定中。

SNIA对Computational Storage定义为一种将计算和存储资源整合在一起的技术,以支持更高效、更智能的数据中心。在这种定义下,Computational Storage强调将计算和存储功能集成到一个统一的系统中,以提高数据管理和处理效率。

NVME将Computational Storage定义为一种将存储设备转化为计算资源的技术,以支持更高效、更灵活的数据中心。在这种定义下,NVMe强调将存储设备转化为可编程的计算资源,以实现更高效的数据处理和管理。NVMe规范侧重于存储设备的性能优化和灵活性。

虽然SNIA和NVMe在Computational Storage的定义上有所不同,但它们的重点都在于将存储和计算资源更有效地整合在一起,以提高数据中心的效率和灵活性。SNIA更注重存储和计算的集成,而NVMe更注重存储设备的性能优化和灵活性。这两种定义在实际应用中都有其价值,并且可以相互补充。

总的来说,计算存储是一个发展非常快的领域,目前行业内的研发状态呈现出百家争鸣的局面。每个公司都有自己的研发方向和技术优势,未来的竞争将更加激烈。

这篇关于计算存储是不是智算时代的杀手锏?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/536490

相关文章

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

MySQL 存储引擎 MyISAM详解(最新推荐)

《MySQL存储引擎MyISAM详解(最新推荐)》使用MyISAM存储引擎的表占用空间很小,但是由于使用表级锁定,所以限制了读/写操作的性能,通常用于中小型的Web应用和数据仓库配置中的只读或主要... 目录mysql 5.5 之前默认的存储引擎️‍一、MyISAM 存储引擎的特性️‍二、MyISAM 的主

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

SpringBoot项目中Redis存储Session对象序列化处理

《SpringBoot项目中Redis存储Session对象序列化处理》在SpringBoot项目中使用Redis存储Session时,对象的序列化和反序列化是关键步骤,下面我们就来讲讲如何在Spri... 目录一、为什么需要序列化处理二、Spring Boot 集成 Redis 存储 Session2.1

基于MongoDB实现文件的分布式存储

《基于MongoDB实现文件的分布式存储》分布式文件存储的方案有很多,今天分享一个基于mongodb数据库来实现文件的存储,mongodb支持分布式部署,以此来实现文件的分布式存储,需要的朋友可以参考... 目录一、引言二、GridFS 原理剖析三、Spring Boot 集成 GridFS3.1 添加依赖

Java计算经纬度距离的示例代码

《Java计算经纬度距离的示例代码》在Java中计算两个经纬度之间的距离,可以使用多种方法(代码示例均返回米为单位),文中整理了常用的5种方法,感兴趣的小伙伴可以了解一下... 目录1. Haversine公式(中等精度,推荐通用场景)2. 球面余弦定理(简单但精度较低)3. Vincenty公式(高精度,

java变量内存中存储的使用方式

《java变量内存中存储的使用方式》:本文主要介绍java变量内存中存储的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、变量的定义3、 变量的类型4、 变量的作用域5、 内存中的存储方式总结1、介绍在 Java 中,变量是用于存储程序中数据

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分