Dynamic CPU-GPU Workload Scheduler for Adaptive Task Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing devices face inefficiencies in workload distribution between central processing units (CPUs) and graphics processing units (GPUs, as they lack dynamic adaptive mechanisms to optimize task execution based on execution times and speeds, leading to suboptimal performance, especially in tasks like machine learning algorithms.

Innovation Solution

A scheduler processor dynamically divides computing tasks into subtasks for CPU and GPU execution, determines execution times and speeds, and rebalances the workload by comparing these metrics to allocate tasks efficiently between CPUs and GPUs, adjusting core usage dynamically based on internal and external conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If workload is statically distributed between CPU and GPU, then system structure is simple, but processing efficiency is suboptimal

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidworkload distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic workload distribution by continuously monitoring execution times and speeds of CPU and GPU, then adjusting task allocation in real-time based on current performance metrics rather than using static pre-defined distribution rules

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system establishes a feedback loop where the scheduler processor receives execution time and speed information from CPU and GPU, compares these metrics, and uses this feedback to dynamically adjust subsequent task allocation decisions, creating a closed-loop control system that optimizes processing efficiency

Inventive Principle:
Principle #23Feedback

2Productivity

If dynamic rebalancing is implemented, then processing efficiency is improved, but control complexity increases

Engineering Contradiction:
Improvetask execution efficiencyVSAvoidscheduler control complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the workload into multiple subtasks that can be independently allocated to CPU or GPU, allowing the scheduler to make granular allocation decisions for each subtask based on current performance metrics rather than managing the entire workload as a single unit

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes allocation parameters dynamically by adjusting the distribution of subtasks between CPU and GPU based on real-time execution time and speed measurements, transforming the allocation strategy from fixed to variable parameters that adapt to current system state

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If equal number of subtasks are assigned to CPU and GPU, then initial distribution is simple, but adaptability to performance variations is poor

Engineering Contradiction:
Improveworkload distribution adaptabilityVSAvoiddynamic allocation mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The scheduler processor implements feedback mechanisms by continuously monitoring execution times and speeds, then using this information to adaptively adjust subtask allocation ratios between CPU and GPU, enabling the system to respond to performance variations rather than maintaining fixed equal distribution

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent transforms the static equal distribution approach into a dynamic allocation system where the ratio of subtasks assigned to CPU versus GPU changes over time based on real-time performance measurements, allowing the system to adapt to varying workload characteristics and processor states

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10228972B2Computer systems and computer-implemented methods for dynamically adaptive distribution of workload between central processing unit(s) and graphics processing unit(s)
Publication Date: 2019.03.12 BANUBA FZCO
  • US10228972B2 patent drawing
  • US10228972B2 patent drawing
  • US10228972B2 patent drawing

AI summary

In some embodiments, the present invention provides an exemplary computing device, including at least: a scheduler processor; a CPU; a GPU; where the scheduler processor configured to: obtain a computing task; divide the computing task into: a first set of subtasks and a second set of subtasks; submit the first set to the CPU; submit the second set to the GPU; determine, for a first subtask of the first set, a first execution time, a first execution speed, or both; determine, for a second subtask of the second set, a second execution time, a second execution speed, or both; dynamically rebalance an allocation of remaining non-executed subtasks of the computing task to be submitted to the CPU and the GPU, based, at least in part, on at least one of: a first comparison of the first execution time to the second execution time, and a second comparison of the first execution speed to the second execution speed.