Peer-to-Peer SSD Data Copy Offload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional data copy processes between Solid State Devices (SSDs) require significant host resources, including CPU cycles, memory bandwidth, and buffer space, as they involve multiple I/O operations and data buffering through the host, leading to inefficiencies in resource utilization and performance.
Innovation Solution
Implementing a Peer-to-Peer (P2P) data copy method where storage devices directly transfer data from one SSD to another without involving the host, using shared buffer addresses to facilitate direct communication and reduce the need for host-mediated data buffering and I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional host-mediated data copy process is used, then data transfer between storage devices can be performed, but significant host resources (CPU cycles, memory bandwidth, buffer space) are consumed
Solution Approach 1:
The patent extracts the data copy function from the host system and relocates it to the storage devices themselves. The host only initiates the copy operation by sending a command, while the actual data transfer between storage devices is performed autonomously by the storage devices using their internal resources (buffers, processors), eliminating the need for host CPU cycles, memory bandwidth, and buffer space during the transfer process.
Solution Approach 2:
The storage devices are empowered to perform data copying autonomously without continuous host intervention. Once the host initiates the copy operation, the destination storage device communicates directly with the source storage device to establish the data transfer, and both devices cooperate to complete the copy using their own internal resources, making the system self-sufficient during the data transfer process.
2Productivity
If host-mediated data buffering is used, then data can be transferred between storage devices, but the number of I/O operations increases and latency increases
Solution Approach 1:
The patent removes the host from the data path during the actual data transfer phase. Instead of routing data through the host's memory and processing units, the data flows directly between the source and destination storage devices via their internal buffers and communication interfaces, significantly reducing the number of I/O operations and transfer latency.
Solution Approach 2:
The patent introduces direct communication channels between storage devices as intermediaries, bypassing the host for the actual data transfer. The storage devices establish direct buffer-to-buffer communication paths, allowing data to move efficiently between devices without being mediated by the host system, thereby reducing latency and improving transfer efficiency.
3Productivity
If multiple I/O operations are performed through the host, then data can be copied between storage devices, but bandwidth usage and power consumption increase
Solution Approach 1:
The patent extracts the data transfer function from the host's I/O subsystem and relocates it to the storage devices. This eliminates multiple I/O operations through the host, reducing bandwidth consumption on the host's memory bus and I/O interfaces, and consequently lowering power consumption associated with these high-bandwidth operations.
Solution Approach 2:
The patent merges the data transfer operations into a single direct communication channel between storage devices, consolidating what would otherwise be multiple separate I/O operations (read from source, write to destination) into one efficient peer-to-peer transfer, thereby reducing total bandwidth usage and power consumption.
Data Source
AI summary
Various implementations described herein relate to systems and methods for transferring data from a source device to a destination device including receiving, by the destination device, a copy request from a host, performing, by the destination device, transfer with the source device to transfer data from buffers of the source device to buffers of the destination device, and writing, by the destination device, the data to a non-volatile storage of the destination device.


