Relaxed Remote Atomics for Scalable Graph Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-node system-on-chip (SoC) architectures, synchronizing updates across multiple computing threads leads to high overhead due to long latencies, particularly in operations like the Weakly Connected Components graph algorithm, where irregular all-to-all communication becomes a bottleneck, limiting system scalability.

Innovation Solution

A memory controller with a command queue, arbiter, vector arithmetic logic unit (VALU), read buffer, and atomic memory operation scheduler is used to perform scattered atomic memory operations with commutative and associative properties, allowing for synchronization-free updates to data structures through scatter-add operations and relaxed atomics, leveraging a cache-centric architecture and content-addressable memory for efficient data management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional synchronization methods are used for parallel thread operations, then data consistency is maintained, but system latency increases and scalability is limited

Engineering Contradiction:
Improvedata consistencyVSAvoidsynchronization latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent changes the consistency model parameter from strict sequential consistency to relaxed consistency, allowing out-of-order execution and eliminating synchronization barriers. This enables parallel threads to operate without waiting for synchronization, dramatically reducing latency while maintaining eventual data consistency through the use of commutative atomic operations.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent extracts the synchronization overhead from the critical execution path by removing traditional lock mechanisms and barrier synchronizations. Instead, it uses a store buffer and commutative atomic operations that can be executed independently, taking out the time-consuming synchronization step from the parallel computation flow.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If irregular all-to-all communication is used for graph algorithms, then computation flexibility is maintained, but communication overhead becomes a bottleneck

Engineering Contradiction:
Improvealgorithm flexibilityVSAvoidsystem scalability
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the communication pattern into structured broadcast and gather operations instead of irregular all-to-all communication. By dividing the graph algorithm into phases that use regular communication patterns, the system achieves better scalability while maintaining the ability to execute flexible graph workloads through the structured communication framework.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal communication infrastructure that handles both regular and irregular communication patterns through a unified interface. The broadcast and gather operations serve multiple algorithmic purposes, allowing the same communication mechanism to support various graph algorithms and workloads, thereby improving scalability without sacrificing algorithmic flexibility.

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

3Productivity

If multiple writer operations are performed on shared memory, then parallelism is increased, but memory access conflicts increase

Engineering Contradiction:
Improveparallel throughputVSAvoidmemory conflict management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a store buffer as an intermediary between writers and memory. Multiple writers can independently store values in the buffer without conflicts, and the buffer manages the actual memory writes in a conflict-free manner. This intermediary layer decouples the writers from each other and from the memory system, enabling high parallel throughput while simplifying conflict management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses commutative atomic operations that are self-service in nature, where each writer operation can proceed independently without needing to coordinate with other writers. The operations are designed to be inherently conflict-free through their commutative properties, allowing parallel writers to service themselves without external arbitration or complex conflict resolution mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12105957B2Accelerating relaxed remote atomics on multiple writer operations
Publication Date: 2024.10.01 ADVANCED MICRO DEVICES INC
  • US12105957B2 patent drawing
  • US12105957B2 patent drawing
  • US12105957B2 patent drawing

AI summary

A memory controller includes an arbiter, a vector arithmetic logic unit (VALU), a read buffer and a write buffer both coupled to the VALU, and an atomic memory operation scheduler. The VALU performs scattered atomic memory operations on arrays of data elements responsive to selected memory access commands. The atomic memory operation scheduler is for scheduling atomic memory operations at the VALU; identifying a plurality of scattered atomic memory operations with commutative and associative properties, the plurality of scattered atomic memory operations on at least one element of an array of data elements associated with an address; and commanding the VALU to perform the plurality of scattered atomic memory operations.