Processor Selection for Graphic Primitives via Performance Benchmarking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computing devices with multiple processor types face challenges in efficiently selecting the most suitable processor for generating graphic primitives, as the relative performance of processors like CPUs and GPUs depends on various parameters such as the size of the graphic primitives.

Innovation Solution

The system employs performance benchmarking to select a processor for generating graphic primitives by determining threshold parameter values at which different processor types demonstrate substantially equal performance, allowing for optimal processor selection based on specific graphic primitive characteristics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If CPU is used for generating graphic primitives, then latency is reduced, but throughput decreases

Engineering Contradiction:
ImprovelatencyVSAvoidthroughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system dynamically selects between CPU and GPU processors based on the size of graphic primitives being generated. For small primitives, CPU is selected to minimize latency. For large primitives, GPU is selected to maximize throughput. This dynamic adaptation resolves the contradiction by choosing the optimal processor type depending on the specific workload characteristics.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the selection parameter from fixed processor type to variable processor type based on graphic primitive size. By monitoring the size parameter of graphic primitives and adjusting processor selection accordingly, the system optimizes performance for different scenarios, resolving the latency-throughput tradeoff.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If GPU is used for generating graphic primitives, then throughput is improved, but latency increases

Engineering Contradiction:
ImprovethroughputVSAvoidlatency
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system dynamically switches between CPU and GPU based on real-time analysis of graphic primitive characteristics. When small primitives are detected, the system switches to CPU to reduce latency. When large primitives are detected, it switches to GPU to improve throughput, thus dynamically resolving the contradiction between these two performance metrics.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention uses the size parameter of graphic primitives as the basis for changing processor selection. By monitoring this parameter and adjusting processor type accordingly, the system optimizes both latency and throughput for different graphic primitive sizes, resolving the performance contradiction.

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If processor selection is based on fixed rules, then implementation is simple, but performance optimization is limited

Engineering Contradiction:
Improveimplementation simplicityVSAvoidperformance optimization
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The invention transitions from fixed processor selection rules to parameter-based dynamic selection. By monitoring the size of graphic primitives and adjusting processor selection based on this parameter, the system achieves performance optimization while maintaining relatively simple implementation through automated threshold-based decision making.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12314726B2Performance benchmarking-based selection of processor for generating graphic primitives
Publication Date: 2025.05.27 COREL CORP
  • US12314726B2 patent drawing
  • US12314726B2 patent drawing
  • US12314726B2 patent drawing

AI summary

Systems and methods for performance benchmarking-based selection of processor for generating graphic primitives. An example method comprises: initializing, by a computer system comprising a plurality of processors of a plurality of processor types, a current value of a graphic primitive parameter; for each processor type of the plurality of processor types, computing a corresponding value of a performance metric by generating, using at least one processor of a currently selected processor type, a corresponding graphic primitive of a specified graphic primitive type, wherein the graphic primitive is characterized by the current value of the graphic primitive parameter; and estimating, based on the computed performance metric values, a threshold value of the graphic primitive parameter.