Parallel Primitive Distribution to Multiple Rasterizers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional graphics processors struggle to maintain API primitive ordering while processing multiple triangles per clock, leading to potential visual artifacts and inefficiencies in rendering.

Innovation Solution

A system and method for parallel distribution of primitives to multiple rasterizers, where multiple independent geometry units perform concurrent geometry processing and distribute primitives to multiple rasterizers, maintaining API primitive ordering through destination masks and a crossbar fabric, enabling concurrent rasterization of multiple primitives per clock.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple geometry units process primitives concurrently to increase throughput, then processing speed improves, but maintaining API primitive ordering becomes difficult

Engineering Contradiction:
Improveprocessing throughputVSAvoidprimitive ordering
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the rendering pipeline into multiple independent geometry processing units (GPUs 0-3) that can concurrently process different primitives. Each GPU unit operates independently on its assigned primitives, enabling parallel processing while maintaining overall system coordination through the crossbar fabric and rasterizer units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The crossbar fabric acts as an intermediary communication medium that connects multiple geometry processing units to multiple rasterizer units. This intermediary enables coordinated data exchange and maintains primitive ordering by routing primitives through a structured communication path that preserves the API-specified processing sequence across parallel units.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If primitives are distributed to multiple rasterizers for parallel rendering, then rendering speed increases, but system complexity increases

Engineering Contradiction:
Improverendering speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The crossbar fabric provides a universal communication infrastructure that handles multiple functions: routing primitives between geometry units and rasterizers, maintaining data integrity, and coordinating parallel operations. This multi-functional component reduces the need for separate control mechanisms for each parallel operation, managing complexity through consolidation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system transitions from sequential single-unit processing to a two-dimensional parallel architecture with multiple geometry units and multiple rasterizer units operating simultaneously. This dimensional expansion enables concurrent primitive distribution and rendering, increasing throughput while the crossbar fabric manages the added complexity through structured routing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9536341B1Distributing primitives to multiple rasterizers
Publication Date: 2017.01.03 NVIDIA CORP
  • US9536341B1 patent drawing
  • US9536341B1 patent drawing
  • US9536341B1 patent drawing

AI summary

One embodiment of the present invention sets forth a technique for parallel distribution of primitives to multiple rasterizers. Multiple, independent geometry units perform geometry processing concurrently on different graphics primitives. A primitive distribution scheme delivers primitives from the multiple geometry units concurrently to multiple rasterizers at rates of multiple primitives per clock. The multiple, independent rasterizer units perform rasterization concurrently on one or more graphics primitives, enabling the rendering of multiple primitives per system clock.