Network Interface Offloading Collective Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High Performance Computing (HPC) environments face performance degradation due to the need for fast execution of collective operations, which is hindered by Operating System noise and the processing burden on host processors, especially in large systems.

Innovation Solution

A Network Interface (NI) with work queues and control circuitry that offloads collective operations from the host processor by controlling the advance of work queues based on completion status, allowing conditional execution and reducing OS noise, utilizing Infiniband networks and incorporating computation units for calculations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If collective operations are executed on the host processor, then the operations can be performed with full control and flexibility, but the host processor becomes a bottleneck and performance degrades due to OS noise and processing burden

Engineering Contradiction:
Improveexecution speed of collective operationsVSAvoidprocessing burden on host processor
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the execution of collective operations from the host processor and transfers it to the network interface device. The host processor generates work requests and sends them to the NID, which then independently executes the collective operations using its own processing resources, freeing the host processor from this burden and eliminating OS noise interference.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network interface device acts as an intermediary between the host processor and the network. It receives work requests from the host, processes collective operations locally, and manages communication with peer nodes, thereby shielding the host processor from the complexity and performance degradation associated with direct execution of these operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the host processor handles all processing tasks, then system control is centralized and simple to manage, but performance degrades in large systems due to the processing burden on the host

Engineering Contradiction:
Improvesystem performance in large systemsVSAvoidcentralized control simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent segments the processing responsibilities between the host processor and the network interface device. The host processor handles high-level application logic and work request generation, while the NID handles collective operation execution and network communication. This segmentation distributes the processing burden and improves scalability in large systems.

Inventive Principle:
Principle #1Segmentation

3Speed

If work queues are advanced without conditions, then processing speed is maximized, but synchronization between multiple work queues and peer nodes becomes problematic

Engineering Contradiction:
Improvework queue processing speedVSAvoidsynchronization accuracy
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where the NID monitors the execution status of work requests and adjusts the advancement of work queues accordingly. Completion status information is fed back to control whether subsequent work requests are processed, ensuring proper synchronization while maintaining efficient processing speed.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10158702B2Network operation offloading for collective operations
Publication Date: 2018.12.18 MELLANOX TECHNOLOGIES LTD(IL)
  • US10158702B2 patent drawing
  • US10158702B2 patent drawing
  • US10158702B2 patent drawing

AI summary

A Network Interface (NI) includes a host interface, which is configured to receive from a host processor of a node one or more work requests that are derived from an operation to be executed by the node. The NI maintains a plurality of work queues for carrying out transport channels to one or more peer nodes over a network. The NI further includes control circuitry, which is configured to accept the work requests via the host interface, and to execute the work requests using the work queues by controlling an advance of at least a given work queue according to an advancing condition, which depends on a completion status of one or more other work queues, so as to carry out the operation.