计算存储将计算功能添加到存储驱动器中逐渐成为现实。NGD,Eideticon和ScaleFlux已将计算卡添加到SSD中,以使计算过程能够在存储的数据上运行,而无需将该数据移入主机服务器内存并使用其CPU来处理数据。据说视频转码是计算存储驱动器(CSD)的好用例。
但是,CSD如何与主机服务器交互。Blocks&Files采访了ScaleFlux的首席科学家张彤(Tong Zhang),以找出答案。
问题:让我们假设有一个视频转码或数据库记录处理应用程序。通常,将新的视频文件写入存储设备,其中新记录将出现在数据库中。服务器应用程序会意识到这一点,并开始处理服务器中的新数据。处理完成后,已转换的数据将写回到存储中。使用计算存储,整个过程是不同的。新数据被写入存储。现在,服务器应用程序必须告诉驱动器处理器处理数据。它是如何做到的?它如何告诉驱动器处理数据?
张彤:是的,为了将某些计算任务加载到计算存储驱动器中,主机应用程序必须能够与计算存储驱动器充分通信。这需要标准化的编程模型和接口协议,业界正在积极开发这些模型和接口协议(例如,NVMe TP 4091和SNIA计算存储工作组)。
问题:驱动器的主要活动是为驱动器IO提供服务,而不是处理数据。当驱动器还为IO请求提供服务时,驱动器CPU处理数据需要多长时间?时间长度可以预测吗?
张彤:计算存储驱动器在内部专用于为驱动器IO服务的许多嵌入式CPU(例如ARM内核),并专用于一定数量的嵌入式CPU和领域相关的硬件引擎(例如,压缩,安全性,搜索,AI / ML,多媒体) 用于执行计算任务。应将CSD控制器设计为使领域相关的硬件引擎的性能与存储IO性能相匹配。
与任何其他形式的计算off-loading(例如GPU,TPU,FPGA)一样,开发人员在将计算任务off-loading到计算存储驱动器中时必须准确估计延迟/吞吐量性能指标。
问题:完成驱动器上的处理后,驱动器如何告知服务器应用程序数据已被处理,现在可以进行下一步处理了?使主机服务器应用程序与计算存储设备进行交互的软件框架是什么?它是一个开放的标准框架吗?
张彤:目前尚无开放和标准的框架,并且业界正在积极地对其进行工作(例如NVMe.org和SNIA计算存储工作组)。
问题: 让我们看一下处理所花费的时间。通常,我们将按以下顺序进行:服务器应用将新数据写入存储。它决定处理数据。数据被读入存储器。已处理。数据被写回到存储中。假设这需要时间T-1。与计算存储相比,顺序有所不同:Server应用程序将新数据写入存储。它决定处理数据。它告诉驱动器处理数据。驱动器处理数据。它告诉服务器应用程序处理完成的时间。假设这需要时间T-2。T-2比T-1大还是小?随着存储驱动器IO的上升和下降,T-2和T-1之间的关系是否随时间恒定?如果变化很大,那么计算存储肯定不适合关键的处理任务吗?处理驱动器上的数据是否比处理服务器本身中的相同数据消耗更少的电能?
张彤: T-1和T-2之间的关系取决于特定的计算任务以及主机和内部计算存储驱动器上的可用硬件资源。
例如,如果计算存储驱动器内部具有可以非常有效地处理任务的领域相关的的硬件引擎(例如,压缩,安全性,搜索,AI / ML,多媒体),则T2可以(比T-1小得多) 。但是,如果计算存储驱动器必须仅依靠其内部ARM内核来处理任务,同时主机具有足够的空闲CPU周期,则T-2可以大于T-1。
在计算存储驱动器内部,IO和计算任务由不同的硬件资源提供服务。因此,它们不会直接相互干扰。关于功率消耗,计算存储驱动器通常消耗较少的功率。如果当前的计算任务可以由计算存储驱动器内部的特定领域硬件引擎很好地完成,那么我们的等待时间会更短,同时功耗也会更低。
如果当前的计算任务仅由计算存储驱动器内部的ARM内核承担,则功耗仍然可以更低,因为我们大大降低了数据移动引起的功耗以及ARM内核的低功耗特性。
问题:我了解到,与服务器应用程序和CPU处理每个驱动器的数据相比,10或20个驱动器的整体处理速度更快,但是这种并行处理需要多长时间进行一次?
张彤:数据密集型应用程序(例如AI / ML,数据分析,数据科学,商业智能)通常需要对大量数据进行高度并行处理,这自然会受益于所有计算存储驱动器内部的并行处理。
总结
为了广泛使用,CSD将需要一种与主机服务器进行通信的标准方式,以便它可以请求主机进行工作并在工作完成时得到通知。为此,需要CSD上的专用处理硬件与常规驱动器IO处理硬件分开,以确保可预测的处理时间。
需要相对较低级别处理大量存储数据的较新的分析样式工作负载可以从CSD而不是由主机服务器CPU进行的并行处理中受益。NVMe.org和SNIA的计算存储工作组制定的标准将成为CSD采用该技术成为主流的途径。
我们还认为,CSD将需要一个标准接口来与GPU对话。毫无疑问,标准机构也在为此进行准备工作。
编辑:lyn
-
cpu
+关注
关注
68文章
10860浏览量
211713 -
服务器
+关注
关注
12文章
9148浏览量
85393 -
CSD
+关注
关注
0文章
56浏览量
12684
原文标题:计算存储如何与主机服务器交互?
文章出处:【微信号:TopStorage,微信公众号:存储加速器】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论