Multi-Core Task Scheduling via Linear Priority Weights

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current priority-based task scheduling methods in mobile devices face inefficiencies, particularly in managing tasks with real-time requirements, leading to performance degradation and load imbalance, as high-priority tasks may preempt lower-priority tasks, causing starvation and increased power consumption.

Innovation Solution

A scheduling method that converts task priorities into linear priority weights, calculates preemption compare indexes based on core load states, and assigns tasks to candidate cores, considering both real-time and fair-class tasks, to optimize resource allocation and balance load across multiple CPU cores.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If priority-based task scheduling is used, then real-time response is improved, but service quality of lower priority tasks deteriorates

Engineering Contradiction:
Improvereal-time responseVSAvoidservice quality
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent transforms the discrete priority parameter into a continuous linear priority weight through mathematical conversion formulas. This allows for fine-grained scheduling decisions that balance real-time response requirements with fair resource distribution to lower-priority tasks, resolving the contradiction between speed and reliability

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The scheduling system dynamically adjusts task allocation based on real-time core load states and preemption compare indexes. Instead of static priority-based assignment, the system adapts to changing system conditions, allowing high-priority tasks to be scheduled when appropriate while ensuring lower-priority tasks receive adequate service quality when system load permits

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If high priority tasks are increased, then UI/UX requirements are satisfied, but resource allocation efficiency decreases

Engineering Contradiction:
ImproveUI/UX requirementsVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system calculates preemption compare indexes that reflect the current load state of each core, creating a feedback mechanism that informs scheduling decisions. This feedback loop enables the system to satisfy UI/UX requirements by prioritizing relevant tasks while maintaining overall resource allocation efficiency through load-aware scheduling

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

By converting priority to linear priority weights and calculating preemption compare indexes, the system creates a nuanced scheduling metric that goes beyond simple priority values. This parameter transformation enables more efficient resource allocation even when handling increased numbers of high-priority tasks for UI/UX requirements

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If priority-based scheduling is used, then task scheduling simplicity is maintained, but load balance deteriorates

Engineering Contradiction:
Improvescheduling simplicityVSAvoidload balance
Core Design Contradiction:
Device complexityVSStability of the object's composition

Solution Approach 1:

The system dynamically selects candidate cores based on load state and uses preemption compare indexes to determine optimal task placement. This dynamic approach improves load balance across cores while maintaining scheduling simplicity through automated decision-making algorithms that don't require complex manual configuration

Inventive Principle:
Principle #15Dynamics

4Speed

If strict priority scheduling is applied, then real-time task response is improved, but core utilization efficiency decreases

Engineering Contradiction:
Improvereal-time task responseVSAvoidcore utilization efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system dynamically determines whether to schedule a task on a specific core based on the preemption compare index comparison. This dynamic decision-making process ensures real-time tasks are responded to promptly while maximizing core utilization by selecting the most appropriate target core from multiple candidates, rather than strictly following priority-based assignment rules

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11243806B2System on chip including a multi-core processor and task scheduling method thereof
Publication Date: 2022.02.08 SAMSUNG ELECTRONICS CO LTD
  • US11243806B2 patent drawing
  • US11243806B2 patent drawing
  • US11243806B2 patent drawing

AI summary

A scheduling method of a system on chip including a multi-core processor includes receiving a schedule-requested task, converting a priority assigned to the schedule-requested task into a linear priority weight, selecting a plurality of candidate cores, to which the schedule-requested task will be assigned, from among cores of the multi-core processor, calculating a preemption compare index indicating a current load state of each of the plurality of candidate cores, comparing the linear priority weight with the preemption compare index of the each of the plurality of candidate cores to generate a comparison result, and assigning the schedule-requested task to one candidate core of the plurality of candidate cores depending on the comparison result.