Architectural Data Mover for RAID XOR Acceleration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional virtualized information handling systems face performance issues with storage resources due to low data throughput and high latency in hypervisor driver stacks, especially when communicating with applications executing on neighboring virtual machines, limiting the benefits of advanced storage technologies like flash caches and cache networks.
Innovation Solution
The method involves an architectural data mover that performs inline exclusive-or (XOR) copy operations to accelerate data transfer in a virtualized storage appliance, redirecting requests from a guest operating system to a virtualized storage appliance, preparing data according to a redundancy policy, and computing parity information, which can be done asynchronously without processor intervention, utilizing a PCIe device or field programmable gate array (FPGA) for enhanced performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional hypervisor driver stacks are used for storage communication, then system compatibility and ease of operation are maintained, but data throughput is low and latency is high
Solution Approach 1:
The patent extracts the XOR computation function from the conventional hypervisor driver stack and implements it as a separate architectural data mover component. This extraction allows the hypervisor to offload computationally intensive RAID parity calculations to a dedicated hardware or firmware module, thereby improving data throughput while maintaining system compatibility through standardized interfaces.
Solution Approach 2:
The architectural data mover acts as an intermediary component between the hypervisor and the storage subsystem. It mediates data flow and computation by receiving data from the hypervisor, performing inline XOR operations for RAID parity calculation, and returning results to the hypervisor, thus improving throughput without requiring changes to the hypervisor's core architecture.
2Productivity
If processor intervention is used for XOR copy operations, then computation accuracy is ensured, but processor workload increases and latency increases
Solution Approach 1:
The patent extracts XOR copy operations from the processor's responsibility and implements them in the architectural data mover, which can be implemented in hardware or firmware. This extraction enables asynchronous execution of parity calculations without blocking the processor, thereby improving processing speed while reducing overall system power consumption by utilizing more efficient hardware-based computation.
Solution Approach 2:
The architectural data mover performs self-service by autonomously executing XOR copy operations and parity calculations without requiring continuous processor intervention. It manages its own operation cycle, data buffering, and computation execution, which reduces processor workload and enables higher throughput through parallel autonomous operation.
3Productivity
If data is moved between address spaces through the hypervisor, then virtualization management is simplified, but data transfer latency increases
Solution Approach 1:
The patent implements preliminary action by pre-establishing direct address space mapping pathways between the architectural data mover and both the guest OS and host memory. This allows data to be transferred directly between address spaces without routing through the hypervisor's virtualization layer for each operation, thereby improving data transfer efficiency while maintaining simplified virtualization management through pre-configured mappings.
Data Source
AI summary
Systems and methods for I/O acceleration in a virtualized system include receiving, at a hypervisor from an application executing under a guest OS, a request to write new data to a RAID system, redirecting the request to the VSA owning the RAID drives, moving the new data from guest OS physical address space to VSA physical address space, preparing, by a RAID driver in the VSA, the new data for writing according to a RAID redundancy policy, reading, by the RAID driver into a first buffer, old data and old parity information, performing, by an architectural data mover, inline XOR copy operations to compute a difference between the old and new data, compute new parity information, and write the difference and new parity information into the second buffer, and writing, by the RAID driver, the difference and new parity information to the RAID system using the redundancy policy.


