Relay Node Hardware Offload for Nonblocking Collective Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In parallel computer systems, the non-blocking reduction operation performance is hindered by CPU overhead and limited overlap of processing operations due to the difficulty in combining Atomic Read Modify Write (ARMW) operations with hardware offload functions, especially in relay nodes, which restricts the improvement of parallel operation performance.

Innovation Solution

The system employs a configuration where relay nodes perform a first portion of a predetermined operation using data from leaf nodes, with the root node performing a second portion using intermediate results, and utilizes a network interface card (NIC) to execute ARMW operations, allowing for overlapping of CPU tasks during ARMW operations by using hardware offload functions to reduce overhead and enable efficient data transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If non-blocking communication is used to allow CPU to return early, then parallel processing capability is improved, but CPU overhead and limited overlap of processing operations still hinder performance

Engineering Contradiction:
Improveparallel operation performanceVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces a completion notification mechanism as an intermediary between the communication operation and the CPU. The CPU initiates non-blocking communication and receives completion notifications asynchronously, allowing the CPU to perform other tasks while waiting for communication completion. This mediator approach resolves the contradiction by enabling true non-blocking behavior where the CPU is not tied up waiting for communication operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the traditional CPU-controlled communication management with a hardware-assisted completion notification system. Instead of the CPU continuously checking or waiting for communication status, the system uses event-driven notifications that automatically inform the CPU when communication operations complete. This substitution reduces CPU overhead and enables better parallel processing by freeing the CPU from communication management tasks.

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

2Productivity

If ARMW operations are combined with hardware offload functions, then CPU load is reduced, but difficulty in combining these operations restricts performance improvement

Engineering Contradiction:
Improveprocessing speedVSAvoidoperation combination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the communication operation into distinct phases: initiation by the CPU, hardware execution of ARMW operations, and completion notification. By dividing the operation into separable stages with clear interfaces, the system reduces the complexity of combining ARMW operations with hardware offload. The CPU only needs to initiate operations and handle notifications, while the hardware manages the complex ARMW execution details independently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary setup of completion notification mechanisms before ARMW operations are executed. The system pre-configures notification handlers and registration processes, so that when hardware offload operations are initiated, the completion notification framework is already in place. This preliminary action reduces the complexity of real-time operation combination by having the notification infrastructure ready in advance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10496592B2System and method to effectively overlap computation and reduction operation of nonblocking collective communication
Publication Date: 2019.12.03 FUJITSU LTD
  • US10496592B2 patent drawing
  • US10496592B2 patent drawing
  • US10496592B2 patent drawing

AI summary

A root-node is coupled to each of multiple leaf-nodes directly or via one or more relay-nodes in a hierarchical topology. A processor in a relay-node holds, in a queue, a first instruction storing first data obtained by performing a predetermined operation using second data received from downstream-nodes, which are directly coupled to the relay-node and positioned on a leaf-node side of the relay-node in the hierarchical topology. A downstream-node generates a second instruction including the second data held in the downstream-node, and transmits the generated second instruction to the relay-node. A network interface card of the relay-node performs the predetermined operation by using the first data stored in the first instruction in the queue, and the second data included in the second instruction. The root-node performs the predetermined operation by using a result of at least one relay-node directly coupled to the root-node and having performed the predetermined operation.