Hardware Barrier Circuit for Multi-Node Process Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current approaches to synchronization across multiple nodes in computer systems, particularly in multi-node computing, face challenges with serialization and latency due to software-based solutions like MPICH, which are inefficient for large numbers of processes participating in barriers.

Innovation Solution

A hardware-accelerated system and method implementing a barrier network within a coordination namespace extended memory architecture, utilizing a tree structure to efficiently scale the number of processes through hardware barriers, where a controller manages setup and notification messages for participating processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software-based solutions like MPICH are used for synchronization across multiple nodes, then portability and compatibility are improved, but latency and efficiency deteriorate due to serialization overhead

Engineering Contradiction:
ImproveportabilityVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent replaces software-based synchronization mechanisms (MPICH libraries) with hardware-based barrier synchronization circuits. The hardware barrier circuit directly manages synchronization states and process coordination in the coordination namespace, eliminating the need for software serialization overhead while maintaining multi-node compatibility and portability.

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

2Productivity

If software algorithms like trees are used to spread out barrier accumulation, then scalability is improved, but device complexity and latency increase due to additional software involvement

Engineering Contradiction:
ImprovescalabilityVSAvoidsoftware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The hardware barrier circuit autonomously manages the synchronization process by automatically tracking process completion states and coordinating barriers across multiple nodes. The circuit self-manages the accumulation and release mechanisms without requiring external software algorithms, thereby reducing software complexity while maintaining scalability through hardware-based process coordination.

Inventive Principle:
Principle #25Self-service

3Quantity of substance

If a large number of processes participate in a barrier using software approaches, then coordination capability is improved, but serialization issues and latency worsen

Engineering Contradiction:
Improvenumber of processesVSAvoidserialization latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent replaces software-based process coordination with hardware barrier circuits that directly manage large numbers of processes in parallel. The hardware circuit maintains individual state tracking for each process using dedicated flip-flops and coordination registers, enabling simultaneous barrier participation without software serialization overhead, thus supporting large process quantities with minimal latency.

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

Data Source

PatentUS11513867B2Synchronization between processes in a coordination namespace
Publication Date: 2022.11.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11513867B2 patent drawing
  • US11513867B2 patent drawing
  • US11513867B2 patent drawing

AI summary

A system and method of supporting point-to-point synchronization among processes/nodes implementing different hardware barriers in a tuple space/coordinated namespace (CNS) extended memory storage architecture. The system-wide CNS provides an efficient means for storing data, communications, and coordination within applications and workflows implementing barriers in a multi-tier, multi-nodal tree hierarchy. The system provides a hardware accelerated mechanism to support barriers between the participating processes. Also architected is a tree structure for a barrier processing method where processes are mapped to nodes of a tree, e.g., a tree of degree k, to provide an efficient way of scaling the number of processes in a tuple space/coordination namespace.