Job Scheduling via Periodicity Segmentation and Priority Ordering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cloud-based computing, generating optimal schedules for computation jobs while preserving periodicity constraints is challenging due to computational complexity and resource allocation inefficiencies, particularly in managing batch jobs and handling changes in job priorities and execution durations.
Innovation Solution
A computer system that categorizes and prioritizes computation jobs based on their periodicity constraints and execution characteristics, using ordered arrangements to generate schedules efficiently, ensuring that resources are allocated effectively and maintaining job periodicity through a scheduler that populates resulting ordered arrangements and evaluates potential schedules for implementation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If dedicated servers are used to ensure computing resources are available for batch jobs, then reliability is improved, but device complexity and resource utilization efficiency worsen
Solution Approach 1:
The system segments computation jobs into different priority levels (first priority, second priority, etc.) and processes them in a structured sequence. This segmentation allows the scheduler to systematically manage resource allocation without requiring dedicated servers for each job type, reducing overall system complexity while maintaining reliability through organized job handling
Solution Approach 2:
The scheduler performs preliminary actions by pre-establishing priority levels and periodicity constraints for computation jobs before execution. This preliminary organization enables efficient resource allocation during runtime, ensuring that high-priority jobs are handled first while maintaining system reliability without needing complex dedicated server infrastructure
2Adaptability or versatility
If more computing resources are allocated to handle job modifications and scheduling changes, then adaptability is improved, but resource wastage increases
Solution Approach 1:
The scheduling system dynamically adjusts resource allocation based on current job priorities and periodicity constraints. When job modifications occur, the scheduler adaptively reorders the computation job queue and reallocates resources in real-time, ensuring high adaptability to changes while avoiding resource wastage by only allocating resources when and where needed
Solution Approach 2:
The system changes scheduling parameters (priority levels, periodicity constraints, execution order) based on job characteristics and system state. This parameter-based approach allows the system to adapt to job modifications efficiently, allocating resources only according to current needs rather than maintaining fixed resource allocations that would lead to wastage
3Productivity
If complex scheduling algorithms are used to generate optimal schedules, then productivity is improved, but computing time and complexity increase
Solution Approach 1:
The system performs preliminary actions by pre-defining priority levels and periodicity constraints for all computation jobs before scheduling begins. This preliminary structuring enables the scheduler to generate optimized schedules quickly using simple sequential logic rather than complex algorithms, improving productivity while minimizing the time lost to schedule generation
Solution Approach 2:
The scheduling system serves itself by automatically maintaining the ordered arrangement of computation jobs based on their inherent priority levels and periodicity constraints. This self-organizing approach eliminates the need for complex external scheduling algorithms, achieving optimal schedule generation with minimal computing time and complexity
4Manufacturing precision
If strict periodicity constraints are enforced for all computation jobs, then manufacturing precision is improved, but device complexity and scheduling difficulty increase
Solution Approach 1:
The system segments computation jobs into priority levels and processes periodicity constraints sequentially for each segment. This segmentation allows strict periodicity enforcement for high-priority jobs while using more flexible approaches for lower-priority jobs, maintaining manufacturing precision where needed without unnecessarily complicating the overall scheduling system
Solution Approach 2:
The scheduler applies different scheduling qualities to different job segments based on their priority levels. High-priority jobs receive strict periodicity enforcement with precise timing control, while lower-priority jobs use more relaxed scheduling. This local differentiation maintains necessary precision without adding uniform complexity across the entire system
Data Source
AI summary
Various techniques are used to schedule computing jobs for execution by a computing resource. In an example method, a schedule is generated by selecting, for a first slot in the schedule, a first computing job based on a first priority of the first computing job with respect to a first characteristic. A second computing job is selected for a second slot in the schedule based on a second priority of the second computing job with respect to a second characteristic. The second slot occurs after the first slot in the schedule, and the second characteristic is different than the first characteristic. The first characteristic or the second characteristic includes an execution frequency. The computing jobs are executed based on the schedule.


