The SNIA Computational Storage Technical Work Group (TWG)
has been hard at work on the SNIA Technical Document Computational
Storage Architecture and Programming Model. SNIAOnStorage recently sat down via zoom with
the document editor Bill Martin of Samsung and TWG Co-Chairs Jason Molgaard of
Arm and Scott Shadley of NGD Systems to understand the work included in the
model and why definitions of computational storage are so important.
SNIAOnStorage (SOS): Shall we start with the
fundamentals? Just what is the Computational
Storage Architecture and Programming Model?
Scott Shadley (SS):
The SNIA Computational Storage Architecture and Programming Model
(Model) introduces the framework of how to use a new tool to architect your
infrastructure by deploying compute resources in the storage layer.
Bill Martin (BM): The Model enables architecture and
programming of computational storage devices. These kinds of devices include those
with storage physically attached, and also those with storage not physically
attached but considered computational because the devices are associated with
storage.
SOS: How did the TWG approach creating the
Model and what does it cover?
SS: SNIA is known
for bringing standardization to customized operations; and with the Model,
users now have a common way to identify the different solutions offered in
computational storage devices and a standard way to discover and interact with
these devices. Like the way NVMe brought common interaction to the wild west of
PCIe, the SNIA Model ensures the many computational storage products already on
the market can align to interact in a common way, minimizing the need for
unique programming to use solutions most effectively.
Jason Molgaard (JM):
The Model covers both the hardware architecture and software application
programming interface (API) for developing and interacting with computational
storage.
BM: The architecture
sections of the Model cover the components that make up computational storage
and the API provides a programming interface to those components.
SOS: I
know the TWG members have had many discussions to develop standard terms for
computational storage. Can you share
some of these definitions and why it was important to come to consensus?
BM: The model
defines Computational Storage Devices (CSxs) which are composed of
Computational Storage Processors (CSPs), Computational Storage Drives (CSDs),
and Computational Storage Arrays (CSAs).
Each Computational Storage Device contains a Computational
Storage Engine (CSE) and some form of host accessible memory for that engine to
utilize.
The Computational Storage Processor is a device that has a Computational
Storage Engine but does not contain storage. The Computational Storage Drive contains
a Computational Storage Engine and storage.
And the Computational Storage Array contains an array with an array
processor and a Computational Storage Engine.
Finally, the Computational Storage Engine executes Computational
Storage Functions (CSFs) which are the entities that define the particular
computation.
All of the computational storage terms can be found online
in the SNIA
Dictionary.
SS: An architecture and programing model is necessary to
allow vendor-neutral, interoperable implementations of this industry
architecture, and clear, accurate definitions help to define how the
computational storage hierarchy works.
The TWG spent many hours to define these standard nomenclatures to be
used by providers of computational storage products.
JM: It has been a work in process over the last 18 months,
and the perspectives of all the different TWG member companies have brought
more clarity to the terms and refined them to better meet the needs of the
ecosystem.
BM: One example has been the change of what was called
computational storage services to the more accurate and descriptive Computational
Storage Functions. The Model defines a list of potential
functions such as compression/decompression, encoding/decoding, and database
search. These and many more are
described in the document.
SOS: Is SNIA working with the industry on
computational storage standards?
BM: SNIA has an
alliance with the NVM Express® organization and they are working on
computational storage. As other organizations (e.g., CXL Consortium) develop
computational storage for their interface, SNIA will pursue alliances with
those organizations. You can find
details on SNIA alliances here.
SS: SNIA is also
monitoring other Technical Work Group activity inside SNIA such as the Smart Data Accelerator Interface (SDXI) TWG
working on the memory layer and efforts around Security, which is a key topic
being investigated now.
SOS: Is
a new release of the Computational Storage Architecture and Programming Model
pending?
BM: Stay tuned, the
next release of the Model – v.06 – is coming very soon. It will contain updates and an expansion of
the architecture.
JM: We have also been working on an API document which will
be released at the same time as the V.6 release of the Model.
SOS: Who
will write the software based on the Computational Storage Architecture and
Programming Model?
JM: Computational
Storage TWG members will develop open-source software aligned with the API, and
application programmers will use those libraries.
SOS: How can the public find out about the next
release of the Model?
SS: We will announce it via our SNIA Matters newsletter. Version
0.6 of the Model as well as the API will be up for public review and comment at
this link. And we encourage companies interested in the
future of computational storage to join SNIA and contribute to the further
development of the Model and the API.
You can reach us with your questions and comments at askcmsi@snia.org.
SOS:
Where can our readers learn more about computational storage?
SS: Eli Tiomkin,
Chair of the SNIA Computational Storage Special Interest Group (CS SIG), Jason,
and I sat down to discuss the future
of computational storage in January 2021. The CS SIG also has a series of videos that
provide a great way to get up to speed on computational storage. You can find them and “Geek Out on
Computational Storage” here,
SOS:
Thanks for the update, and we’ll look forward to a future SNIA webcast
on your computational storage work.