Decentralized Data Processing Architecture Using DPU Array

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computing techniques face limitations due to the back-and-forth transfer of data between volatile and persistent storage, leading to bottlenecks in data processing, especially with the increasing demands of big data and complex processing tasks, which traditional centralized approaches cannot efficiently address.

Innovation Solution

A decentralized data processing approach using a Data Processing Unit (DPU) array with multiple DPUs, each equipped with dedicated non-volatile memory, allowing data and executable code to be stored and processed independently without transferring data to volatile memory, thereby reducing bottlenecks and enhancing throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is transferred back and forth between persistent storage and volatile memory for processing, then data can be processed using traditional computing techniques, but processing speed and efficiency are limited due to transfer bottlenecks

Engineering Contradiction:
Improvedata processing speedVSAvoidtime for data transfer
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent merges persistent storage and processing capabilities into a unified architecture where DPUs can directly access and process data in non-volatile memory without transferring to volatile memory, eliminating the performance bottleneck caused by repeated data transfers between storage and memory systems

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces DPUs as intermediary processing units that sit between persistent storage and the host system, enabling data to be processed in-place within non-volatile memory without requiring transfer to volatile memory, thus acting as a mediator that eliminates the transfer bottleneck

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data and executable code are copied to volatile memory before processing, then traditional computing operations can be performed, but volatile memory resources are consumed and processing throughput is reduced

Engineering Contradiction:
Improvedata processing throughputVSAvoidvolatile memory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts the processing capability from the traditional volatile memory-dependent architecture and places it directly at the persistent storage level through DPUs, allowing data to be processed in-place without being extracted/copied to volatile memory, thus eliminating the need for volatile memory allocation for processing

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If a centralized processing approach is used with traditional computing systems, then data can be processed sequentially, but complex big data processing tasks cannot be efficiently addressed

Engineering Contradiction:
Improvecapability to handle complex processing tasksVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the processing architecture into multiple independent DPUs distributed across the persistent storage system, allowing complex big data processing tasks to be divided and executed in parallel across multiple DPUs, thereby enhancing adaptability to complex tasks while maintaining manageable system complexity through modular design

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11327808B2Decentralized data processing architecture
Publication Date: 2022.05.10 SANDISK TECHNOLOGIES LLC
  • US11327808B2 patent drawing
  • US11327808B2 patent drawing
  • US11327808B2 patent drawing

AI summary

A system and method for decentralized data processing includes receiving, by a first data processing unit of a data processing unit array, a user request and sending, by the first data processing unit, the user request to at least one of other data processing units of the data processing unit array. Each of the first data processing unit and the other data processing units include a dedicated non-volatile memory. The system and method also include receiving, by the first data processing unit, a code of execution results from each of the other data processing units that execute the user request, combining, by the first data processing unit, the code of execution results from the each of the other data processing units that execute the user request, and responding, by the first data processing unit, to the user request by transmitting the combined code of execution results.