Computational Storage Offloads Processing to FPGA Cores
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems face inefficiencies due to high power consumption from data movement operations between processing cores and memory, leading to reduced performance and shorter memory lifetimes.
Innovation Solution
The implementation of a hardware-assisted file system that offloads data processing from host devices to computational storage devices, utilizing FPGA cores to perform computations within persistent memory, thereby reducing data movement and enhancing performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is moved frequently between processing cores and memory, then computational tasks can be performed, but power consumption increases and memory lifetime decreases
Solution Approach 1:
The patent combines storage and computation functions into a single computational storage device. The FPGA performs computational operations directly on data stored in its integrated memory, eliminating the need for separate data movement between discrete storage and processing components. This merging reduces power consumption while maintaining computational productivity.
Solution Approach 2:
The computational storage device acts as an intermediary between the host system and persistent storage. By performing computations locally within the FPGA before data needs to be transferred to persistent storage, the system reduces the frequency and volume of data movement operations, thereby lowering power consumption.
2Productivity
If data is moved frequently between processing cores and memory, then computational tasks can be performed, but memory lifetime is shortened
Solution Approach 1:
The integration of computation and storage in a single device reduces the number of read/write operations required on persistent memory. Computational operations are performed in-memory within the FPGA, and only final results need to be persisted, thereby extending memory lifetime while maintaining computational productivity.
Solution Approach 2:
The FPGA performs computational operations on data while it resides in fast memory, before the data needs to be written to persistent storage. This preliminary computation reduces the amount of data that requires persistent storage operations, thereby extending memory lifetime.
3Productivity
If computational operations are performed on data stored in persistent memory, then data processing efficiency improves, but data must be moved to access it
Solution Approach 1:
The computational storage device merges persistent storage with an FPGA that provides fast computational capabilities. Data can be loaded once into the FPGA's integrated memory and processed multiple times without repeated transfers to persistent storage, eliminating data movement time while maintaining high processing efficiency.
Solution Approach 2:
The FPGA maintains data in its integrated memory and performs continuous computational operations on it without interruption or transfer to persistent storage. This continuous processing eliminates the stop-start nature of traditional architectures where data must be repeatedly moved between storage and processing, thereby eliminating data movement time.
Data Source
AI summary
A system includes a first hardware architecture and computational storage. The computational storage includes a second hardware architecture, and memory storing instructions that, when executed by the second hardware architecture, causes the system to perform a first set of operations. The first set of operations include receiving instructions from the first hardware architecture, performing one or more computations on data stored in the second hardware architecture, based on the received instructions, and transmitting a result to the first hardware architecture, based on the one or more performed computations.


