Event-Driven Task Scheduler for Multiprocessor Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multiprocessor systems face challenges in efficiently managing real-time multitasking processing due to high scheduling overhead and inflexibility in configuring scheduling mechanisms and priority disciplines, which affects processor load balance and predictability.

Innovation Solution

A multiprocessor system with a task scheduler that evaluates task priorities based on events, assigns tasks to lists, and allows processors to serve these lists, enabling flexible load balancing and partial configuration of scheduling mechanisms, reducing overhead through a timer-tickless and event-driven approach.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a traditional timer-tick scheduler is used, then the system provides regular time slicing for task execution, but the scheduling overhead increases significantly due to frequent timer interrupts

Engineering Contradiction:
Improvescheduling overheadVSAvoidtask execution efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements a timer-tickless scheduler that eliminates periodic timer interrupts by using event-driven scheduling. Tasks are scheduled based on their execution requirements and events rather than fixed time periods, removing the continuous overhead of periodic timer ticks while still providing structured task management.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The scheduler allows tasks to self-manage their execution timing through event triggers. Instead of the system forcing periodic scheduling through timer interrupts, tasks are executed when specific events occur, allowing the system to operate without continuous external timing intervention and reducing scheduling overhead.

Inventive Principle:
Principle #25Self-service

2Measurement precision

If the scheduler is implemented as a timer interrupt routine executing every timer tick, then the system provides regular task switching, but the time precision is limited by the timer tick period

Engineering Contradiction:
Improvetime precisionVSAvoidscheduling overhead
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system uses event-driven scheduling where tasks are triggered by specific events rather than periodic timer interrupts. This allows the scheduler to operate without continuous timing intervention, achieving high time precision based on actual event occurrence rather than being constrained by fixed timer tick periods, while simultaneously reducing scheduling overhead.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If a fixed priority discipline is used, then the scheduling mechanism is simple and predictable, but the system lacks flexibility in adapting to dynamic runtime conditions

Engineering Contradiction:
Improvescheduling flexibilityVSAvoidscheduling mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic priority discipline where task priorities can change during runtime based on system conditions and events. The scheduler evaluates task priorities dynamically rather than using fixed assignments, allowing the system to adapt to changing runtime conditions while maintaining a relatively simple event-driven scheduling framework.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the priority parameter of tasks dynamically during execution based on events and system state. This allows the scheduling mechanism to adapt its behavior without fundamentally changing its structure, maintaining simplicity while achieving flexibility through parameter adjustment rather than structural complexity.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If global scheduling is used where all processors serve a single ready queue, then load balance is improved, but predictability decreases due to increased interactions among tasks

Engineering Contradiction:
Improveprocessor load balanceVSAvoidscheduling predictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the task queue into multiple priority-based lists rather than using a single global ready queue. Each processor can serve tasks from appropriate priority lists, maintaining load balance through distributed access while reducing unpredictable interactions by organizing tasks into structured priority segments that limit cross-processor contention.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11321126B2Multiprocessor system for facilitating real-time multitasking processing
Publication Date: 2022.05.03 CAYSSIALS RICARDO LUIS
  • US11321126B2 patent drawing
  • US11321126B2 patent drawing
  • US11321126B2 patent drawing

AI summary

Disclosed herein is a multiprocessor system for facilitating real-time multitasking processing. The multiprocessor system may include a task scheduler and a plurality of processors. Further, the task scheduler may be configured for receiving an event associated with the multiprocessor system, evaluating a plurality of task priorities associated with a plurality of tasks based on the event, determining a plurality of new task priorities for the plurality of tasks and assigning the plurality of tasks to a plurality of lists based on the determining. Further, the plurality of processors may be communicatively coupled with the task scheduler. Further, the plurality of processors serves the plurality of lists. Further, a processor of the plurality of processors may be configured for processing the plurality of tasks assigned to a list of the plurality of lists based on the plurality of new task priorities.