Load Balancer Steering Service Requests to Acceleration Components

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large data centers, communication among computer servers can cause network congestion, leading to poor performance due to non-uniform behavior of acceleration components, such as FPGAs, which can result in varying processing speeds and thermal throttling, making it difficult to manage service requests effectively.

Innovation Solution

A load-balancer system that monitors input buffer occupancy and processing rates of acceleration components, generates penalty values based on occupancy, and dynamically updates availability values to steer service requests to healthy components, ensuring efficient message transmission and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If service requests are sent to acceleration components without monitoring buffer occupancy, then message transmission is simple, but network congestion causes poor performance

Engineering Contradiction:
Improveservice request transmission reliabilityVSAvoidbuffer occupancy monitoring and steering complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The load-balancer monitors input buffer occupancy of acceleration components and uses this feedback information to dynamically steer service requests. When buffer occupancy exceeds a threshold, the system generates penalty values and redirects requests to healthier components, creating a closed-loop feedback mechanism that prevents network congestion and improves transmission reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

A load-balancer component is introduced as an intermediary between the host and acceleration components. This intermediary monitors buffer occupancy, calculates penalty values, and makes intelligent routing decisions, thereby managing the complexity of buffer monitoring while improving overall system reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If acceleration components operate independently without coordination, then component autonomy is maintained, but non-uniform behavior causes varying processing speeds

Engineering Contradiction:
Improveprocessing speed consistencyVSAvoidcomponent coordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system continuously monitors acceleration component performance metrics including buffer occupancy and processing rates, using this feedback to identify healthier components for receiving service requests. This feedback mechanism ensures more consistent processing speeds by dynamically adapting to component performance variations.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The load-balancing strategy is dynamic rather than static. The system adapts its routing decisions in real-time based on monitored performance metrics, steering requests to components with better available resources and lower penalty values, thereby maintaining productivity despite component variability.

Inventive Principle:
Principle #15Dynamics

3Reliability

If thermal throttling occurs in acceleration components, then component protection is activated, but processing rate decreases

Engineering Contradiction:
Improvecomponent thermal protectionVSAvoidprocessing rate
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The load-balancer monitors performance metrics of acceleration components and detects thermal throttling conditions. When throttling is detected, the system redirects service requests from affected components to healthier components, maintaining overall processing throughput while preserving thermal protection mechanisms.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system proactively monitors component health metrics and preemptively redirects requests before thermal throttling significantly impacts performance. By anticipating and responding to thermal conditions, the system maintains processing rates while protecting components from thermal damage.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS10922250B2Monitoring and steering service requests to acceleration components
Publication Date: 2021.02.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10922250B2 patent drawing
  • US10922250B2 patent drawing
  • US10922250B2 patent drawing

AI summary

Systems and methods for monitoring and steering service requests to acceleration components are provided. An example method in a system comprising a host configured to send messages, corresponding to a service, to any of a set of acceleration components may include tracking an input buffer occupancy corresponding to each of the set of acceleration components. The method may further include, upon a first input buffer occupancy of a first acceleration component from among the set of the acceleration components meeting a predetermined criterion, generating a first penalty value for the first acceleration component based at least on the first input buffer occupancy associated with the first acceleration component, and comparing a second value indicative of an availability of the second acceleration component to receive messages from the host to a second dynamically updated value to determine whether the host can send a next message to the second acceleration component.