Task Scheduler for Multi-Core Processor Rescheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core processor systems, existing task scheduling methods fail to optimally assign tasks across processing cores, leading to inefficiencies and potential system degradation due to non-optimal task distribution, especially in systems with heterogeneous cores and unpredictable workloads.

Innovation Solution

A method and apparatus for rescheduling tasks based on the states of processing cores and task queues, using a scheduler to determine and execute task rescheduling by moving tasks from one queue to another, optimizing task distribution and preventing system efficiency degradation by predicting and addressing bottlenecks early on.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tasks are assigned to processing cores using existing scheduling methods, then tasks can be executed, but optimal task distribution is not achieved leading to system inefficiency

Engineering Contradiction:
Improvesystem efficiencyVSAvoidscheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduler dynamically adjusts task distribution by monitoring processing core states and executing rescheduling operations when suboptimal conditions are detected. The system transitions from static initial scheduling to dynamic adaptive scheduling, allowing task queues to be reassigned based on real-time core performance states, workload characteristics, and system conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduling system implements feedback mechanisms by continuously monitoring processing core states and using this information to determine whether rescheduling should be executed. The scheduler evaluates system state metrics and uses this feedback to make intelligent decisions about task redistribution, creating a closed-loop control system that adapts to changing conditions.

Inventive Principle:
Principle #23Feedback

2Productivity

If tasks are statically assigned to processing cores, then scheduling is simple, but task distribution becomes suboptimal causing system degradation

Engineering Contradiction:
Improvetask distribution efficiencyVSAvoidscheduling decision time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs rescheduling only partially - not continuously or for all tasks, but selectively based on detected suboptimal conditions. The scheduler executes rescheduling operations only when specific criteria are met, such as when processing core states indicate suboptimal task distribution, thereby reducing unnecessary scheduling overhead while still achieving optimal task placement when needed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The scheduler performs preliminary evaluation of processing core states and task characteristics before executing rescheduling operations. By assessing system conditions in advance and determining whether rescheduling is warranted, the system avoids impulsive scheduling decisions and ensures that rescheduling actions are taken only when they will improve overall system efficiency.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If rescheduling is executed frequently, then optimal task distribution is maintained, but system overhead increases

Engineering Contradiction:
Improvetask assignment optimalityVSAvoidscheduling overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system takes preliminary anti-action by detecting suboptimal scheduling conditions and executing rescheduling before significant performance degradation occurs. By monitoring processing core states and identifying suboptimal distributions early, the system prevents efficiency loss rather than continuously correcting it, thereby reducing the frequency and overhead of rescheduling operations.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The scheduler changes system parameters by adjusting task queue assignments based on processing core states and workload characteristics. Rather than maintaining a fixed scheduling configuration, the system dynamically modifies task-to-core mappings in response to changing system conditions, achieving adaptability without requiring continuous rescheduling.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20230043222A1Method and apparatus for scheduling tasks in multi-core processor
Publication Date: 2023.02.09 SAMSUNG ELECTRONICS CO LTD
  • US20230043222A1 patent drawing
  • US20230043222A1 patent drawing
  • US20230043222A1 patent drawing

AI summary

An apparatus includes a plurality of processing cores, and a memory including a plurality of task queues corresponding to the plurality of processing cores, respectively, wherein at least one processing core of the plurality of processing cores is configured, by executing a scheduler, to determine execution of task rescheduling, based on states of the plurality of processing cores, tasks stored in the plurality of task queues, and at least one reference value, and, when the task rescheduling is executed, move a first task stored in a first task queue to a second task queue.