GPU Network Latency Reduction via NIC Metadata Prefetching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems experience latency issues when graphics processing units (GPUs) or accelerated processing devices (APDs) issue commands to network interface controllers (NICs) due to the need to load metadata from system memory, and there is a lack of efficient prioritization of work based on anticipated network traffic.

Innovation Solution

Implementing a prefetching technique to proactively load network command buffer metadata into NIC hardware memory and prioritizing work on APDs when predicted network traffic is imminent, allowing for reduced latency and improved network performance by preparing the receiving device and adjusting execution priorities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If metadata is loaded from system memory into NIC hardware memory, then network command execution speed is improved, but latency increases due to the loading process

Engineering Contradiction:
Improvenetwork command execution speedVSAvoidlatency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The system performs preliminary actions by detecting when network commands are about to be executed and proactively loading the required metadata into NIC hardware memory before the actual network command execution begins. This advance preparation eliminates the latency that would otherwise occur during command execution, as the metadata is already in place and ready for immediate use.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If work is prioritized on APD based on predicted network traffic, then overall network performance is improved, but system complexity increases due to prediction and prioritization mechanisms

Engineering Contradiction:
Improvenetwork performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where the APD monitors and detects predicted network traffic patterns, then uses this information to dynamically adjust and prioritize work queues. The prioritization decisions are based on feedback from the prediction mechanism, allowing the system to adaptively optimize network performance without requiring complex manual configuration or intervention.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20200034195A1Network-related performance for gpus
Publication Date: 2020.01.30 ADVANCED MICRO DEVICES INC
  • US20200034195A1 patent drawing
  • US20200034195A1 patent drawing
  • US20200034195A1 patent drawing

AI summary

Techniques for improved networking performance in systems where a graphics processing unit or other highly parallel non-central-processing-unit (referred to as an accelerated processing device or “APD” herein) has the ability to directly issue commands to a networking device such as a network interface controller (“NIC”) are disclosed. According to a first technique, the latency associated with loading certain metadata into NIC hardware memory is reduced or eliminated by pre-fetching network command queue metadata into hardware network command queue metadata slots of the NIC, thereby reducing the latency associated with fetching that metadata at a later time. A second technique involves reducing latency by prioritizing work on an APD when it is known that certain network traffic is soon to arrive over the network via a NIC.