Multi-Node Processing System Parallel Compute Data Exchange

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processing nodes face inefficiencies due to limited memory capacity, leading to substantial wait times for loading and unloading data during multi-stage processes, which hinders computational performance.

Innovation Solution

A data processing system utilizing multiple processing nodes that alternate between computational and data exchange phases, allowing one node to perform calculations while another handles data loading and unloading from storage, thereby minimizing wait times and maximizing computational efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a single processing node performs multi-stage computations with external storage, then data can be loaded and unloaded, but the processing node spends substantial time on load/unload operations and cannot perform computations during this time

Engineering Contradiction:
Improvedata storage capacityVSAvoidcomputational throughput
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system divides the processing function into separate nodes: one node (or multiple nodes) dedicated to computations and another node dedicated to data loading and unloading operations. This segmentation allows computational tasks and data management tasks to occur in parallel without interfering with each other, thereby maintaining high computational throughput while adequately managing data storage requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A specialized data management node acts as an intermediary between the external storage and the computational nodes. This intermediary node handles all data loading and unloading operations, freeing the computational nodes from waiting on I/O operations. The intermediary coordinates data transfer to ensure computational nodes receive required data promptly while maintaining continuous computational work.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a processing node alternates between compute phases and data load/unload phases, then external storage can be accessed, but the processing node remains occupied for substantial periods unable to perform computations

Engineering Contradiction:
Improvemulti-stage process capabilityVSAvoidwait time for data operations
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system ensures continuous useful action by having multiple nodes operating in parallel: while one node performs data loading and unloading operations, another node continuously performs computations. This eliminates idle time in the overall system, as the computational node never waits for data operations to complete. The pipeline architecture maintains continuous computational flow across multiple stages.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The data management node performs preliminary data loading and preparation in advance of when computational nodes need the data. By anticipating data requirements and pre-loading data during periods when computational nodes are processing other data, the system minimizes wait time and ensures computational nodes always have required data available immediately.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If a processing node has limited memory capacity, then hardware requirements are reduced, but the node cannot store all variables required to evaluate each stage of the process

Engineering Contradiction:
Improvememory capacityVSAvoidprocess implementation simplicity
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The system transitions from a single-node architecture to a multi-node distributed architecture, adding the dimension of spatial distribution. By distributing data storage and processing across multiple nodes, the system achieves effectively unlimited memory capacity while maintaining ease of operation through standardized node interfaces and automated data management protocols.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11886982B2Control of processing node operations
Publication Date: 2024.01.30 GRAPHCORE LTD
  • US11886982B2 patent drawing
  • US11886982B2 patent drawing
  • US11886982B2 patent drawing

AI summary

In a data processing system, at least one processing node is configured to perform computations for a multi-stage process whilst at least one other processor performs the load/unload operations required to calculate a subsequent stage of the multi stage process. An exchange of data then occurs between the processing nodes. At a later time, at least one processing node performs calculations using the data loaded from storage, whilst at least one other processor performs the load/unload operations required to calculate a subsequent stage of the multi stage process.