Dynamic Task Dispatching for CPU-GPU Image Processing Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cooperative computing methods between CPU and GPU lead to inefficient resource utilization due to uneven load distribution, resulting in idle or wasted computing resources, as they often rely excessively on one processor over the other.

Innovation Solution

A cooperative computing device and method that includes a task dispatching module dynamically allocating image frames between CPU and GPU based on their respective computing capabilities and load conditions, ensuring balanced load distribution and optimal hardware performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If CPU and GPU are used to perform number crunching simultaneously, then calculation speed is improved, but resource utilization becomes unbalanced causing one processor to be excessively idle

Engineering Contradiction:
Improvecalculation speedVSAvoidresource waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements dynamic task dispatching where the system continuously monitors the computing capabilities and load conditions of both CPU and GPU, then adjusts the distribution of image frames in real-time. This dynamic adjustment ensures that computing tasks are always allocated according to the current state of each processor, preventing idle resources while maximizing calculation speed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs a feedback mechanism where the computing results and load status from both CPU and GPU are fed back to the task dispatching module. Based on this feedback, the system optimizes the distribution of subsequent computing tasks, ensuring that each processor receives an appropriate workload that matches its current capacity, thereby eliminating resource waste while maintaining high productivity.

Inventive Principle:
Principle #23Feedback

2Productivity

If CPU performs logic operations and GPU performs rendering operations, then operation efficiency is improved, but the system cannot adapt to varying computing capabilities and load conditions

Engineering Contradiction:
Improveoperation efficiencyVSAvoidadaptability to load conditions
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent transforms the static task division (CPU for logic, GPU for rendering) into a dynamic system where the task dispatching module continuously evaluates the actual computing capabilities and load conditions of both processors. This allows the system to adaptively adjust task distribution based on real-time conditions, maintaining high operation efficiency while gaining flexibility to handle varying workloads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameters of task distribution by considering multiple factors including computing capabilities, load conditions, and processing speeds of both CPU and GPU. Instead of fixed task assignment, the system dynamically modifies task allocation parameters based on current system state, enabling both high efficiency and adaptability to different operating conditions.

Inventive Principle:
Principle #35Parameter changes

3Speed

If image frames are distributed to CPU and GPU for processing, then real-time processing capability is improved, but uneven load distribution causes time delays

Engineering Contradiction:
Improvereal-time processing capabilityVSAvoidtime delay
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent implements dynamic load balancing where the task dispatching module continuously monitors the processing speed and load status of CPU and GPU. Based on this real-time information, the system dynamically adjusts the distribution of image frames to ensure that both processors are kept busy with appropriate workloads, preventing idle time and maximizing real-time processing capability without causing time delays.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent performs preliminary evaluation of the computing capabilities and current load conditions of CPU and GPU before distributing image frames. This preliminary action allows the system to pre-determine the optimal task distribution strategy, ensuring that image frames are assigned to the most suitable processor in advance, thereby maintaining real-time processing capability while avoiding time delays caused by load imbalance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12026543B2Cooperative computing device and cooperative computing method thereof
Publication Date: 2024.07.02 AVERMEDIA TECH
  • US12026543B2 patent drawing
  • US12026543B2 patent drawing
  • US12026543B2 patent drawing

AI summary

The present invention discloses a cooperative computing device, wherein a task dispatching module receives a plurality of original image frames and dynamically dispatches the original image frames as a first amount of original image frames and a second amount of original image frames based on a loading result. A first computing module and a second computing module, which are of different types, respectively receive the first amount and the second amount of original image frames and respectively generate a first amount and a second amount of processed image frames. An image sorting module receives the first amount and the second amount of processed image frames, sorts and recovers the processed image frames based on a first timing sequence, and generating the loading result. The present invention also discloses a cooperative computing method which corresponds to the cooperative computing device.