Graphic Stream Load Balancing via Dispatcher

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for processing 2D/3D graphics operations in fully virtualized data centers either overburden the server with increased cost and power consumption or underutilize the client device's processing capacity, necessitating a method for load balancing graphic streams between server and client devices.

Innovation Solution

A system and method that involves a server device with a virtual machine and dispatcher, which receives graphic objects and capability information, dispatching them to either the server or client GPU for processing, transforming them into video streams, and rendering them, thereby optimizing processing between the two devices based on capability and bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all 2D/3D graphics operations are processed by the server device, then the processing capacity is sufficient, but the cost and power consumption of the engine room are increased

Engineering Contradiction:
Improveprocessing capacityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

The patent segments the graphics processing workload by dividing graphic objects into multiple groups and distributing them to different processing units (server GPU and client GPU) based on capability information. This segmentation allows the system to process graphics operations across multiple devices rather than concentrating all processing on the server, thereby reducing server power consumption while maintaining sufficient processing capacity.

Inventive Principle:
Principle #1Segmentation

2Use of energy by stationary object

If all 2D/3D graphics operations are processed by the client device, then the power consumption is reduced, but the processing capacity of the client device must be sufficient

Engineering Contradiction:
Improvepower consumptionVSAvoidprocessing capacity
Core Design Contradiction:
Use of energy by stationary objectVSReliability

Solution Approach 1:

The patent applies local quality by assigning different processing responsibilities to different devices based on their specific capabilities. The server device handles graphic objects that require high processing capacity while the client device handles objects matching its capabilities. This differentiated assignment ensures that each device operates within its optimal performance range, preventing client device overload while still reducing overall power consumption compared to server-only processing.

Inventive Principle:
Principle #3Local quality

3Use of energy by stationary object

If graphic operations are distributed between server and client devices, then power consumption is optimized, but the system complexity increases

Engineering Contradiction:
Improvepower consumptionVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by stationary objectVSDevice complexity

Solution Approach 1:

The patent introduces a dispatcher as an intermediary component that manages the distribution of graphic objects between server and client devices. The dispatcher receives graphic capability information, determines appropriate device assignments, and routes graphic objects accordingly. This intermediary layer simplifies the overall system architecture by centralizing the decision-making logic for load distribution, thereby reducing the complexity that would otherwise be distributed across multiple coordination points.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9479570B2System and method for processing load balancing of graphic streams
Publication Date: 2016.10.25 WIWYNN CORP
  • US9479570B2 patent drawing
  • US9479570B2 patent drawing
  • US9479570B2 patent drawing

AI summary

A method for processing load balancing of graphic streams is provided. The method is used in a system, wherein the system includes a server device and a client device, and the method includes the steps of: receiving, by a virtual machine, a graphic with a plurality of objects and graphic capability information; dispatching, by a dispatcher, the plurality of objects according to the graphic capability information; receiving, by a server GPU, a first group of objects dispatched by the dispatcher, and transforming the first group of objects into a first video stream; receiving, by a virtual desktop viewer, a second group of objects dispatched by the dispatcher; transforming, by a client GPU, the second group of objects into a second video stream; and rendering, by a virtual desktop viewer, the first video stream and the second video stream.