Context-Aware Scheduler Job Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional schedulers lack dynamic optimization based on application state and user context, leading to suboptimal resource utilization and increased response times in computing devices.

Innovation Solution

Implementing a context-aware scheduler that uses attribution tags to prioritize jobs based on changes in application context, reordering the queue to execute higher-priority jobs first, ensuring efficient resource allocation and quicker response to user input.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a conventional scheduler uses a simple queue with first-come-first-served execution, then the device complexity is low and ease of operation is maintained, but the productivity is reduced and loss of time increases due to inability to prioritize context-critical jobs

Engineering Contradiction:
Improvejob execution efficiencyVSAvoidscheduler complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduler dynamically adjusts job priority based on real-time application context changes. When context changes are detected, the scheduler reorders the job queue to prioritize jobs associated with the changed context, transforming a static FIFO queue into a dynamic priority-based queue that adapts to changing system conditions

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduler implements feedback mechanisms by monitoring application context changes and using this information to adjust job execution priority. The system continuously observes context state and feeds this information back into the scheduling decision process, enabling priority adjustments based on actual system needs rather than fixed rules

Inventive Principle:
Principle #23Feedback

2Loss of time

If a conventional scheduler processes jobs in queue order without context awareness, then the device complexity remains low, but the loss of time increases due to delayed execution of high-priority jobs related to user input

Engineering Contradiction:
Improveresponse time to user inputVSAvoidscheduler mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by detecting context changes before executing related jobs. When a context change is detected (such as user input), the scheduler proactively identifies and prioritizes jobs associated with that context before they would naturally queue up, ensuring faster response without waiting for the standard queue processing order

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The scheduler transforms from a static queue-processing system to a dynamic priority-adjusting system that responds to context changes. Jobs are reordered in real-time based on their relevance to detected context changes, enabling the system to dynamically prioritize time-critical operations while maintaining flexibility in the scheduling mechanism

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11347554B1Context-aware job prioritization
Publication Date: 2022.05.31 SNAP INC
  • US11347554B1 patent drawing
  • US11347554B1 patent drawing
  • US11347554B1 patent drawing

AI summary

Systems and methods are provided for a context-aware scheduler. In one example embodiment, the context-aware scheduler accesses a stored application context to determine that the stored application context corresponds to a change in application context from a first application context according to which a queue of jobs for execution for an application is currently prioritized, to a second application context. The context-aware scheduler determines a list of attributions comprising assigned priority categories for the second application context and uses the list of attributions for the second application context to re-prioritize the plurality of jobs in the queue based on a job attribution tag for each job in the queue. The context-aware scheduler sets a first job in the re-prioritized queue as the next job for execution for the application.