Context-Based Communication Isolation for Multi-Threaded Global Address Space Programs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional high performance computing architectures face challenges in communication performance due to destructive interference between threads in multi-threaded, shared memory programming models with a multi-node global address space, leading to resource contention and inefficient communication sequences.

Innovation Solution

Implementing a context-based communication approach that labels and isolates communication streams using an API, allowing for independent communication streams, eliminating thread interference, and enabling per-communication-stream ordering and out-of-order communications through contextualization and tracking of completion status.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a multi-threaded programming model with global address space is used, then processor utilization and communication capability are improved, but destructive interference between threads causes resource contention and communication performance degradation

Engineering Contradiction:
Improveprocessor utilizationVSAvoidthread interference
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent segments communication streams by assigning unique context identifiers to different threads or communication channels. Each context maintains separate communication state and ordering requirements, effectively dividing the shared communication infrastructure into isolated logical channels that prevent thread interference while maintaining high processor utilization.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If traditional multi-threaded communication is implemented, then communication capability is improved, but resource contention leads to inefficient communication sequences and performance loss

Engineering Contradiction:
Improvecommunication capabilityVSAvoidcommunication efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent establishes communication ordering rules and context identifiers in advance before communication operations occur. By pre-defining the ordering requirements and context associations for each communication stream, the system eliminates runtime contention and sequencing delays, allowing efficient parallel communication operations without resource conflicts.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240330084A1Isolating communication streams to achieve high performance multi-threaded communication for global address space programs
Publication Date: 2024.10.03 INTEL CORP
  • US20240330084A1 patent drawing
  • US20240330084A1 patent drawing
  • US20240330084A1 patent drawing

AI summary

Systems, apparatuses and methods may provide for detecting an outbound communication and identifying a context of the outbound communication. Additionally, a completion status of the outbound communication may be tracked relative to the context. In one example, tracking the completion status includes incrementing a sent messages counter associated with the context in response to the outbound communication, detecting an acknowledgement of the outbound communication based on a network response to the outbound communication, incrementing a received acknowledgements counter associated with the context in response to the acknowledgement, comparing the sent messages counter to the received acknowledgements counter, and triggering a per-context memory ordering operation if the sent messages counter and the received acknowledgements counter have matching values.