What is a computational storage drive? Much-needed help for CPUs

The unavoidable slowing of Moore’s Legislation has pushed the computing business to endure a paradigm change from the common CPU-only homogeneous computing to heterogeneous computing. With this improve, CPUs are complemented by particular-reason, domain-particular computing materials. As we’ve viewed in excess of time, this is very well reflected by the large expansion of hybrid-CPU/GPU computing, substantial financial commitment on AI/ML processors, vast deployment of SmartNIC, and more lately, the emergence of computational storage drives.

Not astonishingly, as a new entrant into the computing landscape, the computational storage drive seems rather unfamiliar to most people and numerous thoughts obviously arise. What is a computational storage drive? In which really should a computational storage drive be made use of? What variety of computational function or capacity really should a computational storage drive offer?

Resurgence of a simple and many years-aged concept

The essence of computational storage is to empower data storage equipment with added data processing or computing capabilities. Loosely talking, any data storage product — crafted on any storage technological know-how, these as flash memory and magnetic recording — that can carry out any data processing tasks past its main data storage responsibility can be named a computational storage drive.

The simple concept of empowering data storage equipment with added computing capacity is absolutely not new. It can be traced again to more than twenty yrs ago through the intelligent memory (IRAM) and intelligent disks (IDISKs) papers from Professor David Patterson’s group at UC Berkeley close to 1997. Basically, computational storage enhances host CPUs to sort a heterogeneous computing platform. 

Computational storage even stems again to when early educational investigate showed that these a heterogeneous computing platform can considerably improve the efficiency or electrical power effectiveness for a assortment of programs like databases, graph processing, and scientific computing. On the other hand, the business selected not to undertake this concept for true earth programs basically since prior storage specialists could  not justify the financial commitment on these a disruptive principle in the existence of the regular CPU improvement. As a end result, this matter has turn out to be mostly dormant in excess of the past two many years. 

Fortunately, this concept lately obtained a substantial resurgence of interest from the two academia and business. It is driven by two grand industrial developments:

  1. There is a escalating consensus that heterogeneous computing need to play an ever more vital role as the CMOS technological know-how scaling is slowing down.
  2. The substantial development of large-speed, strong-state data storage systems pushes the procedure bottleneck from data storage to computing.

The principle of computational storage natively matches these two grand developments. Not astonishingly, we have viewed a resurgent interest on this matter in excess of the past couple yrs, not only from academia but also, and arguably more importantly, from the business. Momentum in this house was highlighted when the NVMe typical committee lately commissioned a functioning group to prolong NVMe for supporting computational storage drives, and SNIA (Storage Networking Marketplace Association) formed a functioning group on defining the programming design for computational storage drives. 

Computational storage in the true earth

As data facilities have turn out to be the cornerstone of modern information and facts technological know-how infrastructure and are liable for the storage and processing of ever-exploding amounts of data, they are evidently the best spot for computational storage drives to start out the journey in direction of true earth application. On the other hand, the important question right here is how computational storage drives can best serve the demands of data facilities.

Details facilities prioritize on charge personal savings, and their components TCO (whole charge of possession) can only be decreased via two paths: much less expensive components producing, and larger components utilization. The slow-down of technological know-how scaling has pressured data facilities to ever more depend on the next route, which obviously potential customers to the latest trend in direction of compute and storage disaggregation. Despite the absence of the term “computation” from their task description, storage nodes in disaggregated infrastructure can be liable for a vast vary of hefty-responsibility computational tasks:

  1. Storage-centric computation: Charge personal savings demand the pervasive use of at-rest data compression in storage nodes. Lossless data compression is very well identified for its substantial CPU overhead, predominantly since of the large CPU cache miss out on rate induced by the randomness in compression data move. In the meantime, storage nodes need to make sure at-rest data encryption also. Furthermore, data deduplication and RAID or erasure coding can also be on the job checklist of storage nodes. All of these storage-centric tasks demand a substantial amount of money of computing electrical power.   
  2. Community-site visitors-alleviating computation: Disaggregated infrastructure imposes a assortment of application-level computation tasks on to storage nodes in get to tremendously reduce the burden on inter-node networks. In individual, compute nodes could off-load certain lower-level data processing functions like projection, choice, filtering, and aggregation to storage nodes in get to mostly lessen the amount of money of data that need to be transferred again to compute nodes. 

To lessen storage node charge, it is essential to off-load hefty computation loads from CPUs. When compared to off-loading computations to different standalone PCIe accelerators for conventional design and style exercise, straight migrating computation into each and every storage drive is a much more scalable solution. In addition, it minimizes data site visitors in excess of memory/PCIe channels, and avoids data computation and data transfer hotspots. 

The need to have for CPU off-loading obviously calls for computational storage drives. Evidently, storage-centric computation tasks (in individual compression and encryption) are the most handy pickings, or lower-hanging fruit, for computational storage drives. Their computation-intense and fastened-function nature renders compression or encryption completely suited for getting implemented as custom-made components engines within computational storage drives. 

Transferring past storage-centric computation, computational storage drives could further more support storage nodes to execute computation tasks that goal to reduce the inter-node community data site visitors. The computation tasks in this classification are application-dependent and as a result have to have a programmable computing cloth (e.g., ARM/RISC-V cores or even FPGA) within computational storage drives.

It is crystal clear that computation and storage within computational storage drives need to cohesively and seamlessly do the job with each other in get to offer the best probable conclusion-to-conclusion computational storage provider. In the existence of continuous advancement of host-side PCIe and memory bandwidth, tight integration of computation and storage becomes even more vital for computational storage drives. Thus, it is essential to integrate computing cloth and storage media manage cloth into one particular chip. 

Architecting computational storage drives

At a glance, a commercially practical computational storage drive really should have the architecture as illustrated in Determine 1 beneath. A single chip integrates flash memory manage and computing materials that are related via a large-bandwidth on-chip bus, and the flash memory manage cloth can serve flash entry requests from the two the host and the computing cloth.

Given the universal at-rest compression and encryption in data facilities, computational storage drives need to very own compression and encryption in get to further more support any application-level computation tasks. Thus, computational storage drives need to strive to offer the best-in-class assist of compression and encryption, ideally in the two in-line and off-loaded modes, as illustrated in Determine 1.

computational storage drive ScaleFlux

Determine 1: Architecture of computational storage drives for data facilities.

For the in-line compression/encryption, computational storage drives carry out compression and encryption straight along the storage IO route, getting clear to the host. For each and every compose IO ask for, data go through the pipelined compression → encryption → compose-to-flash route for each and every read IO ask for, data go through the pipelined read-from-flash → decryption → decompression route. These in-line data processing minimizes the latency overhead induced by compression/encryption, which is really desirable for latency-delicate programs these as relational databases.

Furthermore, computational storage drives may possibly integrate added compression and stability components engines to offer off-loading provider through very well-defined APIs. Protection engines could consist of several modules these as root-of-rely on, random range generator, and multi-manner personal/public important ciphers. The embedded processors are liable for assisting host CPUs on utilizing several community-site visitors-alleviating functions.

Lastly, it is important to keep in mind that  a excellent computational storage drive need to very first be a excellent storage product. Its IO efficiency need to be at the very least equivalent to that of a typical storage drive. With no a strong basis of storage, computation becomes nearly irrelevant and meaningless.

Adhering to the higher than intuitive reasoning and the obviously derived architecture, ScaleFlux (a Silicon Valley startup corporation) has productively introduced the world’s very first computational storage drives for data facilities. Its products are getting deployed in hyperscale and webscale data facilities around the world, encouraging data middle operators to lessen the procedure TCO in two strategies:

  1. Storage node charge reduction: The CPU load reduction enabled by ScaleFlux’s computational storage drives lets storage nodes to lessen the CPU charge. Thus, without shifting the compute/storage load on each and every storage node, one particular can straight deploy computational storage drives to lessen the for each-node CPU and storage charge. 
  2. Storage node consolidation: One could leverage the CPU load reduction and intra-node data site visitors reduction to consolidate the workloads of many storage nodes into one particular storage node. In the meantime, the storage charge reduction enabled by computational storage drives mostly improves the for each-drive storage density/potential, which further more supports storage node consolidation.

On the lookout into the future

The unavoidable paradigm change in direction of heterogeneous and domain-particular computing opens a vast door for opportunities and innovations. Natively echoing the wisdom of relocating computation closer to data, computational storage drives are destined to turn out to be an indispensable element in future computing infrastructure. Pushed by the business-vast standardization endeavours (e.g., NVMe and SNIA), this rising spot is getting actively pursued by more and more companies. It will be enjoyable to see how this new disruptive technological know-how progresses and evolves in excess of the subsequent couple yrs.

Tong Zhang is co-founder and chief scientist at ScaleFlux.

New Tech Discussion board provides a location to examine and talk about rising business technological know-how in unprecedented depth and breadth. The choice is subjective, based mostly on our select of the systems we think to be vital and of best interest to InfoWorld visitors. InfoWorld does not take marketing collateral for publication and reserves the ideal to edit all contributed articles. Deliver all inquiries to [email protected].

Copyright © 2021 IDG Communications, Inc.