Hardware Atomic Operations for Pipe State Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In parallel computing systems, inter-task communication is hindered by race conditions that occur when multiple producers and consumers attempt to modify the state of a pipe simultaneously, leading to improper functionality due to the lack of atomic operations to manage multiple pipe state parameters.

Innovation Solution

The implementation of hardware-based atomic read-modify-write operations that modify multiple pipe state parameters in an atomic fashion, ensuring that all modifications are completed before allowing other threads or tasks to access the pipe, thereby preventing race conditions and ensuring proper inter-task communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple producers and consumers access the pipe simultaneously, then inter-task communication throughput is improved, but race conditions occur causing reliability to deteriorate

Engineering Contradiction:
Improveinter-task communication throughputVSAvoidpipe state integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent combines multiple pipe state parameters (head, tail, count) into a single atomic memory location. This merging allows all state modifications to be performed as a single atomic operation, eliminating race conditions while maintaining parallel access capability. The unified state representation enables concurrent producers and consumers to safely modify pipe state without corruption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent replaces software-based synchronization mechanisms (locks, critical sections) with hardware-based atomic operations. The compare-and-swap (CAS) instruction provides atomic read-modify-write capability at the hardware level, substituting complex software synchronization protocols with a single atomic instruction that guarantees thread-safe pipe state modification.

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

2Reliability

If atomic operations are implemented in software, then race conditions are prevented improving reliability, but execution overhead increases reducing productivity

Engineering Contradiction:
Improvepipe state integrityVSAvoidoperation execution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces software-based atomic operation implementations with hardware-based atomic instructions. The compare-and-swap (CAS) instruction executes in a single CPU cycle at the hardware level, eliminating the overhead of software lock management, memory barriers, and complex synchronization protocols while guaranteeing atomicity.

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

Solution Approach 2:

The patent changes the implementation paradigm from software-controlled atomic operations to hardware-enforced atomic operations. By leveraging CPU-level atomic instructions with built-in versioning and comparison logic, the system achieves atomicity through hardware parameter management rather than software protocol execution, dramatically reducing overhead.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If multiple pipe state parameters are modified separately, then ease of operation is improved, but race conditions occur worsening reliability

Engineering Contradiction:
Improvestate parameter modificationVSAvoidpipe state integrity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent merges multiple pipe state parameters (head pointer, tail pointer, element count) into a single atomic memory location. This consolidation allows concurrent modification of all parameters through a single atomic operation, maintaining ease of use while preventing race conditions. The unified state structure enables straightforward read-modify-write operations without complex synchronization.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP3120245B1Hardware-based atomic operations for supporting inter-task communication
Publication Date: 2020.10.21 QUALCOMM INC
  • EP3120245B1 patent drawingFigure 1
  • EP3120245B1 patent drawingFigure 2
  • EP3120245B1 patent drawingFigure 3

AI summary

This disclosure describes techniques for supporting inter-task communication in a parallel computing system. The techniques for supporting inter-task communication may use hardware-based atomic operations to maintain the state of a pipe. A pipe may refer to a First-In, First-Out (FIFO)-organized buffer that allows various tasks to interact with the buffer as data producers or data consumers. Various pipe implementations may use multiple state parameters to define the state of a pipe. The hardware-based atomic operations described in this disclosure may modify multiple pipe state parameters in an atomic fashion. Modifying multiple pipe state parameters in an atomic fashion may avoid race conditions that would otherwise occur when multiple producers and/or multiple consumers attempt to modify the state of a pipe at the same time. In this way, pipe-based inter-task communication may be supported in a parallel computing system.