Multiprocessor Memory Synchronization via Point-to-Point Links

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-processor systems with weak consistency models, existing memory synchronization methods burden data pathways with synchronization-related information, leading to inefficiencies as the number of nodes increases, particularly in systems like the IBM BluGene, where broadcast buses become overwhelmed with communication demands.

Innovation Solution

Implementing a multiprocessor system with a special memory synchronization unit that uses point-to-point communication and a central synchronization controller to manage memory access requests, including a global generation unit and an OR-reduce tree for aggregating generation information, allowing for flexible and efficient memory synchronization without relying on buses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If broadcast bus is used for memory synchronization communication, then system-wide synchronization can be achieved, but data pathways become burdened and communication efficiency deteriorates as the number of nodes increases

Engineering Contradiction:
Improvesynchronization correctnessVSAvoidcommunication efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the system-wide broadcast communication into localized point-to-point communications between processor units and a synchronization controller. Each processor unit independently communicates its generation information to the controller via dedicated point-to-point links, segmenting the monolithic broadcast bus traffic into manageable individual transactions that do not contend for shared bandwidth.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The synchronization controller acts as an intermediary that collects generation information from all processor units through point-to-point links, aggregates this information using an OR-reduce tree, and manages the synchronization state. This intermediary consolidates communication demands and eliminates the need for processor units to directly broadcast to all other units, reducing pathway burden.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If point-to-point communication is used for memory synchronization, then data pathway burden is reduced and communication efficiency improves, but system complexity increases due to multiple communication links

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidcommunication infrastructure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple point-to-point communication links into a centralized synchronization controller that aggregates generation information from all processor units. The OR-reduce tree structure combines individual generation status signals into a unified system-wide synchronization state, managing the complexity of multiple links through logical aggregation rather than requiring each processor to handle individual connections to all other processors.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The synchronization controller serves multiple functions: it receives generation information from all processor units via point-to-point links, performs OR-reduction to determine system-wide synchronization state, manages the generation counter, and provides synchronization decisions back to processors. This multi-functional design consolidates what would otherwise require separate dedicated components for each communication task.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If generation information is broadcast to all processors, then all processors can synchronize their memory accesses, but the broadcast pathway becomes overwhelmed with synchronization traffic

Engineering Contradiction:
Improvememory access synchronizationVSAvoidsynchronization traffic volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the synchronization traffic from the general-purpose data pathways by implementing a dedicated synchronization controller that handles generation information collection and management separately from normal memory access traffic. Generation information is gathered through specialized point-to-point links rather than being embedded in the general memory bus, extracting synchronization overhead from the data pathways and preventing them from becoming overwhelmed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Each processor unit independently determines its own generation information and sends it to the synchronization controller without requiring the controller to query each processor. The processors self-serve by autonomously tracking their local generation counters and proactively reporting their status, reducing the communication burden on the synchronization infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9733831B2Generation-based memory synchronization in a multiprocessor system with weakly consistent memory accesses
Publication Date: 2017.08.15 GLOBALFOUNDRIES US INC
  • US9733831B2 patent drawing
  • US9733831B2 patent drawing
  • US9733831B2 patent drawing

AI summary

In a multiprocessor system, a central memory synchronization module coordinates memory synchronization requests responsive to memory access requests in flight, a generation counter, and a reclaim pointer. The central module communicates via point-to-point communication. The module includes a global OR reduce tree for each memory access requesting device, for detecting memory access requests in flight. An interface unit is implemented associated with each processor requesting synchronization. The interface unit includes multiple generation completion detectors. The generation count and reclaim pointer do not pass one another.