Multi-Node System Reset Using Generation Number Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

During a reset of a multi-node processing system, if one node resets and restarts from an earlier checkpoint before another node, the node that has reset may receive packets from nodes that have not yet reset, containing data from an earlier generation of the application, which can interfere with the processing of the new application generation.

Innovation Solution

Each processing node in the system maintains a generation number that is updated during a global reset. Before resetting, each node sends its current generation number in data frames to other nodes. Upon reset, the node checks the generation number in received data frames against its own stored generation number, discarding frames with a mismatched number to prevent interference from earlier application generations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of stationary object

If nodes reset at different times during a global reset event, then system continuity is maintained, but data integrity is compromised due to reception of outdated packets

Engineering Contradiction:
Improvesystem continuityVSAvoiddata integrity
Core Design Contradiction:
Duration of action of stationary objectVSReliability

Solution Approach 1:

The patent applies preliminary action by including the generation number in data frames before transmission. This allows the receiving node to verify the validity of incoming data frames by comparing the embedded generation number with its own current generation number, preventing acceptance of outdated data from nodes that have reset.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through the generation number verification mechanism. Each node provides feedback about its current generation state through the embedded number in transmitted frames, and uses this feedback to determine whether to accept or discard incoming data, ensuring consistency across the distributed system.

Inventive Principle:
Principle #23Feedback

2Productivity

If nodes send data frames continuously during reset, then communication efficiency is maintained, but harmful interference occurs from mismatched generation data

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidinterference from outdated data
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent extracts the generation number as a separate identifying element within each data frame. This extracted information is used to filter out harmful outdated data while allowing continuous transmission of valid data, thus maintaining communication efficiency while eliminating interference from mismatched generation packets.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent converts the potentially harmful continuous transmission during reset into a beneficial mechanism by using the embedded generation numbers to automatically identify and filter out outdated data. The continuous transmission itself becomes useful as it ensures no valid data is lost, while the generation number verification eliminates the harmful interference from reset nodes.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS12242860B2Reset of a multi-node system
Publication Date: 2025.03.04 GRAPHCORE LTD
  • US12242860B2 patent drawing
  • US12242860B2 patent drawing
  • US12242860B2 patent drawing

AI summary

Each of the nodes stores a number, referred to herein as a generation number, which is updated whenever the respective node undergoes a reset and restart from checkpoint. Since the nodes of the system participate in the same reset event, at most times, each generation number held by a node will be the same across the system. However, in some cases, when one node resets before another node, the generation numbers between those two nodes will differ. The data frames sent between the nodes each comprise a generation number of the sending node, which is checked by the recipient and only accepted if the generation number in the frames matches the generation number of the recipient node.