Non-blocking Hardware Function Retries for Latency Variability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face performance degradation due to hardware functions with variable response latencies, which exceed strict fixed-latency response requirements, leading to blocked requests and decreased system throughput, as existing solutions either delay all requests to match the worst-case latency or introduce complexity with token-based mechanisms.

Innovation Solution

The implementation of a computer-implemented method that splits hardware functions into a main function with average response latency and a retry function with a shorter latency, allowing non-blocking retries and maintaining system performance by processing subsequent requests while handling long tail latencies in the background.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system waits for the worst-case latency before processing the next request, then the response latency is predictable and reliable, but the system throughput decreases significantly

Engineering Contradiction:
Improveresponse latency predictabilityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The hardware function is segmented into two independent components: a main hardware function that processes requests with average-case latency, and a retry hardware function that handles long-tail latency cases. This segmentation allows the system to return responses based on average latency expectations while handling exceptional cases separately, thereby improving throughput without sacrificing reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A retry mechanism acts as an intermediary between the main hardware function and the requesting program. When the main function exceeds its latency budget, the retry mechanism takes over to complete the operation, allowing the system to maintain predictable average latency while handling variable worst-case scenarios without blocking subsequent requests.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If the system uses a single hardware function with variable latency, then the device complexity is low, but the response latency becomes unpredictable and blocks subsequent requests

Engineering Contradiction:
Improvehardware function structureVSAvoidrequest blocking time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The single hardware function is divided into a main hardware function and a retry hardware function. The main function handles the common case with predictable latency, while the retry function handles the exceptional long-tail cases. This segmentation eliminates request blocking by allowing the system to proceed with the next request after the main function returns, even if the retry function is still completing its operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The main hardware function is designed to complete the majority of operations within a predictable latency budget. By optimizing the main function for average-case performance and preparing a retry mechanism in advance, the system ensures that most requests complete without blocking, while having a pre-prepared fallback for exceptional cases.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the system delays all requests to match the worst-case latency, then the response latency is bounded and predictable, but the overall system performance degrades

Engineering Contradiction:
Improvelatency boundingVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments latency handling into two paths: a fast path through the main hardware function for average-case requests, and a slow path through the retry hardware function for long-tail cases. This allows the system to bound latency for each path separately rather than delaying all requests to the worst-case scenario, thereby maintaining high performance for the majority of requests while still providing latency guarantees.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The main hardware function is optimized to complete operations within a shorter latency budget than the worst-case scenario. By accepting that some requests may exceed this budget and requiring retries, the system achieves better average performance while still providing bounded latency guarantees for the main path, rather than uniformly delaying all requests to the worst-case latency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12061521B1Non-blocking hardware function request retries to address response latency variabilities
Publication Date: 2024.08.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12061521B1 patent drawing
  • US12061521B1 patent drawing
  • US12061521B1 patent drawing

AI summary

Managing hardware function requests incurring variable response latencies is provided. A request for a hardware function is received from a requesting program. The requested hardware function is expected to incur a variable response latency and is implemented as a main hardware function and a retry hardware function. The main hardware function is executed. It is determined whether a fixed response latency of the main hardware function has been exceeded. A response is returned with a retry flag to the requesting program. The retry flag directs the requesting program to issue a request for the retry hardware function after an interval of time. A unique identifier corresponding to the main hardware function is provided to the requesting program.