Our recent SNIA Compute, Memory, and Storage
Initiative (CMSI) webcast, Computational
Storage – Driving Success, Driving Standards,
explained the key elements of the SNIA Computational Storage Architecture and Programming Model and the SNIA Computational Storage API . If you missed the live event, you can watch
on-demand and view the presentation slides. Ouraudience asked a number of questions, and Bill Martin, Editor of the Model, and Jason Molgaard, Co-Chair of the SNIA Computational Storage Technical Work
Group, teamed up to answer them.What’s being done in SNIA to implement data
protection (e.g. RAID) and CSDs? Can data be written/striped to CSDs in such a
way that it can be computed on within the drive?
Bill Martin: The
challenges of computation on a RAID system are outside the scope of the Computational
Storage Architecture and Programming Model. The Model does not
address data protection in that it does not specify how data is written nor how
computation is done on the data. Section
3 of the Model discusses the Computational Storage Array (CSA), a storage array
that is able to execute one or more Computational Storage Functions (CSFs). As
a storage array, a CSA contains control software, which provides virtualization
to storage services, storage devices, and Computational Storage Resources for
the purpose of aggregating, hiding complexity, or adding new capabilities to
lower level storage resources. The Computational Storage Resources in the CSA
may be centrally located or distributed across CSDs/CSPs within the array.
When will Version 1.0 of the Computational
Storage Architecture and Programming Model be available and when is operating
system support expected?
Bill Martin: We
expect Version 1.0 of the model to be available Q2 2022. The Model is agnostic with regard to
operating systems, but we anticipate a publicly available API library for
Computational Storage over NVMe.
Will Computational Storage library support CXL
accelerators as well? How is the collaboration between these two technology
consortiums?
Jason Molgaard: The Computational Storage Architecture and
Programming Model is agnostic to the device interface protocol. Computational Storage can work with CXL. SNIA
currently has an alliance
agreement in place with the CXL Consortium and will interface with that
group to help enable the CXL interface with Computational Storage. We anticipate there will be technical work to
develop a computational storage library utilizing the CS API that will support
CXL in the future.
System memory is required for PCIe/NVMe SSD.
How does computational storage bypass system memory?
Bill Martin: The computational storage architecture relies
on computation using memory that is local to the Computational Storage Device (CSx).Section
B.2.4 of the Model
describes the topic of Function Data Memory (FDM) on the CSx and the movement
of data from media to FDM and back. Note
that a device does not need to access system memory for computation – only to
read and write data. Figure B.2.8 from the Model illustrates CSx usage.
Is this CS API Library vendor
specific, or is this a generic library which could also be provided for example
by an operating system vendor?
Bill Martin: The Computational
Storage API is not a library, it is a generic interface
definition. It describes the software
application interface definitions for a Computational Storage device (CSx).There
will be a generic library for a given protocol layer, but there may also be
vendor specific additions to that generic library for vendor specific CSx
enhancements beyond the standard protocol definition.
Are there
additional use cases out there? Where could I see them and get more information?
Jason
Molgaard: Section B.2.5 of the Computational
Storage Architecture and Programming Model provides an example of application
deployment. The API specification will
have a library that could be used and/or modified for a specific device. If the
CSx does not support everything in NVMe, an individual could write a vendor
specific library that supports some host activity.
There are a lot of acronyms
and terms used in the discussion. Is
there a place where they are defined?
Jason Molgaard: Besides the Model and the API, which provide
the definitive definition of the terms and acronyms, there are some great
resources. Recent presentations at the
SNIA Storage Developer Conference on Computational Storage Moving Forward with an Architecture and
API
and Computational Storage APIs provide a broad view
of how the specifications affect the growing industry computational storage
efforts. Additional videos and presentations are available in the SNIA
Educational Library, search for “Computational
Storage”.
The post Computational Storage – Driving Success, Driving Standards Q&A first appeared on SNIA Compute, Memory and Storage Blog.
Leave a Reply