Distributed Plane Equation Calculation for Graphics Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics processing pipelines face scalability issues due to the need for a wide data bus to transmit plane equation coefficients to multiple shading multiprocessors, limiting the ability to add more processing units without increasing the data bus size.

Innovation Solution

A distributed system where vertex data is divided into batches and processed by multiple general processing clusters, each with shader-primitive-controller units that calculate plane equation coefficients independently, reducing the data bus size and increasing processing throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If all plane equation coefficients are transmitted together across the data bus to multiple shading multiprocessors, then each SM receives complete data for processing, but the data bus size must be increased to an impractical width to support additional SMs

Engineering Contradiction:
Improvegraphics processing throughputVSAvoiddata bus size
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the set of plane equation coefficients into multiple batches, where each batch contains coefficients for a subset of triangles. Each shading multiprocessor SM receives only the batch relevant to its processing workload, rather than all coefficients simultaneously. This segmentation allows the data bus width to remain constant while supporting an increasing number of SMs, as each SM processes one batch at a time in a round-robin fashion.

Inventive Principle:
Principle #1Segmentation

2Productivity

If the number of shading multiprocessors is increased to improve processing capabilities, then graphics throughput is enhanced, but the data bus bit width must be increased to an impractical size

Engineering Contradiction:
Improveprocessing throughputVSAvoiddata bus bit width
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the total set of plane equation coefficients into multiple batches distributed across different SMs. Each SM processes one batch at a time, receiving data through a fixed-width data bus. This allows the system to scale the number of SMs without increasing data bus width, as the bus only needs to accommodate the data volume for a single batch, not the entire coefficient set.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic batch assignment where SMs receive different batches at different times in a round-robin fashion. The system dynamically manages which batch is assigned to which SM based on current processing needs, allowing flexible scaling of SM count while maintaining a fixed data bus width. This dynamic allocation enables throughput scaling without proportional increases in bus complexity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8310482B1Distributed calculation of plane equations
Publication Date: 2012.11.13 NVIDIA CORP
  • US8310482B1 patent drawing
  • US8310482B1 patent drawing
  • US8310482B1 patent drawing

AI summary

A system for distributed of plane equation calculations. A work distribution unit is configured to receive a set of vertex data that includes meta data associated with each vertex in a modeled three-dimensional scene, to divide the set of vertex data into a plurality of batches of vertices, and to distribute the plurality of batches of vertices to one or more general processing clusters (GPCs). A processing cluster array includes the one or more (GPCs), where each GPC includes one or more shader-primitive-controller units (SPMs), and each SPM is configured to calculate plane equation coefficients for a subset of the vertices included in a batch of vertices. Advantageously, a distributed configuration of multiple plane equation calculation units decreases the size of the data bus that carries plane equation coefficients and increases overall processing throughput.