Optimized Object Trees for Multiprocessor Graphics Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multiprocessor systems face inefficiencies in graphics rendering due to the need for 'on the fly' data conversion when using specialized processing units like GPUs, which slows down the rendering process.

Innovation Solution

The creation of optimized object trees and graphics rendering trees, where data is converted into formats that maximize GPU performance, allowing for enhanced speed and efficiency by eliminating the need for real-time data conversion during rendering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is converted on the fly during rendering, then the system can handle diverse data formats, but the rendering speed decreases

Engineering Contradiction:
Improvedata format compatibilityVSAvoidrendering speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent creates optimized object trees in advance with pre-converted data formats specific to each processor type. This preliminary action eliminates the need for real-time data conversion during rendering, thereby resolving the contradiction between handling diverse formats and maintaining high rendering speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the rendering workflow into distinct phases: creating separate optimized object trees for different processor types (CPU, GPU, DSP) with processor-specific data formats. This segmentation allows each processor to operate with optimized data without requiring real-time conversion, thus maintaining both versatility and speed.

Inventive Principle:
Principle #1Segmentation

2Productivity

If optimized object trees are created for each processor type, then processing efficiency improves, but system complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal object tree creation mechanism that automatically generates processor-specific optimized object trees. This multi-functional approach allows a single system to handle multiple processor types (CPU, GPU, DSP) with their respective data formats, improving processing efficiency without requiring separate manual optimization processes for each processor type.

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

Solution Approach 2:

The patent creates copies of object trees optimized for different processor types from a single source representation. This copying mechanism allows efficient generation of processor-specific versions without manually recreating the entire object tree structure for each processor, thereby improving productivity while managing system complexity through automated duplication.

Inventive Principle:
Principle #26Copying

3Measurement precision

If real-time data conversion is performed, then data accuracy is maintained, but time consumption increases

Engineering Contradiction:
Improvedata accuracyVSAvoidconversion time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs data format conversion in advance when creating optimized object trees, rather than during real-time rendering. This preliminary conversion maintains data accuracy by allowing thorough format transformation while eliminating time consumption during the actual rendering process, as the conversion work is completed beforehand.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8933963B1Object trees for multiprocessor systems
Publication Date: 2015.01.13 MATHWORKS INC
  • US8933963B1 patent drawing
  • US8933963B1 patent drawing
  • US8933963B1 patent drawing

AI summary

A system may include a memory that stores instructions and a processor to execute the instructions to create a first set of objects, describing a graphical scene, in a first data structure based on data relating to the graphical scene. The processor may create a second set of objects in a second data structure based on the first set of objects in the first data structure, where at least one object of the first set of objects is associated with at least one object of the second set of objects and one or more properties for an object of the second set of objects is based on information associated with the first data structure. The processor may modify the second set of objects and provide the modified second set of objects to a browser for rendering the graphical scene.