Work Distribution Unit Balancing GPC Load via Counter Metrics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer systems face reduced processing throughput due to unequal processing capabilities among processing units and varying batch processing times, leading to stalled work distribution units and inefficient workload balancing.

Innovation Solution

A method for distributing batches of processing tasks to general processing clusters (GPCs) by updating counter values based on the number of enabled parallel processing units and distributing tasks proportionally, along with load signals, to balance workload across GPCs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If work batches are distributed to processing units using round-robin policy, then workload distribution is simplified, but processing throughput is reduced due to stalls caused by unequal processing capabilities

Engineering Contradiction:
Improvework distribution simplicityVSAvoidprocessing throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent changes the distribution parameter from simple round-robin ordering to a weighted distribution mechanism that incorporates processing capability metrics. Each processing unit is assigned a weight based on its capabilities (number of processors, memory bandwidth, storage speed), and work batches are distributed proportionally to these weights, eliminating stalls while maintaining systematic distribution.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The work distribution mechanism transitions from a static round-robin sequence to a dynamic allocation system that continuously monitors and adjusts based on processing unit capabilities and current workload status. The system dynamically calculates optimal distribution ratios and adapts to changing conditions, preventing stalls before they occur.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If work batches are distributed without considering processing unit capabilities, then distribution mechanism is simpler, but processing throughput is reduced due to disproportionate completion times

Engineering Contradiction:
Improvedistribution mechanism complexityVSAvoidprocessing throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent introduces capability-based parameters (processor count, memory bandwidth, storage speed) into the distribution decision-making process. These parameters are used to calculate weighted shares of work batches for each processing unit, ensuring that units with higher capabilities receive proportionally more work and complete tasks faster, thereby increasing throughput without excessive complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system incorporates feedback mechanisms where processing units report their completion status and capability metrics to the work distribution unit. This feedback loop enables the distribution unit to adjust future allocations based on actual performance data and capability variations, optimizing throughput while managing complexity through automated adaptive control.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If work distribution unit waits for all processing units to finish before distributing next batch, then workload balancing is achieved, but processing throughput is reduced due to sequential dependency

Engineering Contradiction:
Improveworkload balanceVSAvoidprocessing throughput
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent implements preliminary action by calculating and preparing work batch allocations in advance based on predicted processing times and capability metrics. The work distribution unit proactively schedules batches for multiple processing units simultaneously rather than sequentially waiting for completion, maintaining workload balance while enabling parallel progress and increasing throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the timing and sequencing of work batch distributions based on real-time status information from processing units. Instead of rigid sequential waiting, the system flexibly schedules batches to arrive at processing units at optimal moments, maintaining balance while maximizing parallel processing efficiency and throughput.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9594599B1Method and system for distributing work batches to processing units based on a number of enabled streaming multiprocessors
Publication Date: 2017.03.14 NVIDIA CORP
  • US9594599B1 patent drawing
  • US9594599B1 patent drawing
  • US9594599B1 patent drawing

AI summary

A work distribution unit distributes work batches to general processing clusters (GPCs) based on the number of streaming multiprocessors included in each GPC. Advantageously, each GPC receives an amount of work that is proportional to the amount of processing power afforded by the GPC. Embodiments include a method for distributing batches of processing tasks to two or more general processing clusters (GPCs), including the steps of updating a counter value for each of the two or more GPCs based on the number of enabled parallel processing units within each of the two or more GPCs, and distributing a batch of processing tasks to a first GPC of the two or more GPCs based on a counter value associated with the first GPC and based on a load signal received from the first GPC.