Graphics Coprocessor Offloading RAID Parity Computations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional RAID systems rely on central processing units (CPUs) to perform parity computations and data reconstruction, which renders them unavailable for other processing tasks, leading to decreased system performance.

Innovation Solution

Offloading parity computations to a graphics processor, which acts as a coprocessor to perform XOR parity computations and data reconstruction, thereby freeing up the CPU to handle other operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CPU performs parity computations and data reconstruction, then RAID parity functions are completed, but CPU becomes unavailable for other processing tasks

Engineering Contradiction:
ImproveRAID parity function completionVSAvoidCPU availability for other tasks
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the parity computation function from the CPU and implements it in a dedicated hardware circuit. The parity computation unit is separated as an independent module that can operate concurrently with CPU tasks, eliminating the resource contention and making the CPU available for other processing while RAID parity functions are completed reliably.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a dedicated parity computation unit as an intermediary between the CPU and RAID array. This intermediary handles all XOR parity computations and data reconstruction operations, allowing the CPU to communicate parity requirements without being blocked by the actual computation, thus maintaining CPU availability while ensuring reliable parity function completion.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Manufacturing precision

If CPU computes parity for each stripe, then parity data is accurate, but system performance decreases due to CPU unavailability

Engineering Contradiction:
Improveparity data accuracyVSAvoidsystem performance
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent replaces the software-based parity computation mechanism (CPU executing XOR instructions) with a hardware-based computation unit dedicated to parity operations. This substitution maintains the mathematical accuracy of XOR parity computations while dramatically improving system performance through parallel hardware execution and CPU liberation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent segments the system into distinct functional units: a dedicated parity computation unit for XOR operations, a data transfer unit for moving data between RAID array and memory, and the CPU for high-level control. This segmentation allows each unit to operate independently and concurrently, maintaining computational accuracy while enhancing overall system throughput and performance.

Inventive Principle:
Principle #1Segmentation

3Reliability

If CPU reconstructs data on degraded disk, then data recovery is achieved, but CPU is unavailable for other operations

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidCPU unavailability duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-computing and storing parity data in a dedicated parity buffer during normal operation. When disk degradation occurs, the hardware parity computation unit can immediately reconstruct lost data using the pre-stored parity information without requiring CPU intervention, achieving rapid data recovery while minimizing CPU unavailability time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables self-service by giving the hardware parity computation unit autonomous capability to perform data reconstruction operations. Upon detecting disk degradation, the system automatically triggers the hardware unit to reconstruct data using available parity information, eliminating the need for CPU involvement in the time-critical reconstruction process and allowing the CPU to remain available for other operations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7546483B1Offloading RAID functions to a graphics coprocessor
Publication Date: 2009.06.09 NVIDIA CORP
  • US7546483B1 patent drawing
  • US7546483B1 patent drawing
  • US7546483B1 patent drawing

AI summary

Systems and methods for using a graphics processor to perform RAID parity functions may improve disk access performance. A method is provided for configuring a graphics processor to perform XOR parity computations when data is written to the RAID array. Another method is provided for configuring the graphics processor to perform the XOR parity computations to restore data when a disk is damaged. Using the graphics processor as a coprocessor to offload parity computations from a central processing unit may improve disk access performance and overall system performance.