Job Scheduling for Mixed-Scale Workloads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In large-scale information processing systems, the scheduling of mixed-scale jobs often results in significant waiting time disparities between small-scale and large-scale jobs, with early execution of small-scale jobs potentially causing delays for large-scale jobs, leading to undesirable waiting times and fairness issues among users.
Innovation Solution
An information processing apparatus that divides nodes into separate groups for small-scale and large-scale jobs, calculates load values for each category, and combines small-scale jobs into 'combined jobs' when necessary to balance load, ensuring that large-scale jobs are executed without delay by assigning them to a dedicated node group, thereby reducing waiting time differences and improving fairness.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If small-scale jobs are executed early in a mixed scheduling system, then the utilization of idle nodes is improved, but the waiting time for large-scale jobs increases
Solution Approach 1:
The patent segments the job set into small-scale jobs and large-scale jobs based on a threshold, allowing different scheduling strategies to be applied to each segment. This segmentation enables the system to execute small-scale jobs early when nodes are idle while preserving nodes for large-scale jobs, thus resolving the contradiction between node utilization and waiting time for large-scale jobs.
Solution Approach 2:
The patent dynamically adjusts the scheduling strategy based on the current state of the system. When idle nodes are available, small-scale jobs are executed early; when nodes are busy, the system waits for large-scale jobs. This dynamic adjustment allows the system to optimize node utilization without causing excessive waiting time for large-scale jobs.
2Loss of time
If nodes are divided into separate groups for small-scale and large-scale jobs, then the waiting time for large-scale jobs is reduced, but the flexibility of node allocation decreases
Solution Approach 1:
The patent segments nodes into first node groups for small-scale jobs and second node groups for large-scale jobs. This segmentation ensures that large-scale jobs have dedicated nodes available, reducing their waiting time, while small-scale jobs can utilize the first node groups. The segmentation maintains flexibility by allowing jobs to be scheduled according to their scale requirements.
Solution Approach 2:
The patent applies different scheduling characteristics to different node groups. The first node groups are optimized for small-scale jobs with faster scheduling, while the second node groups are optimized for large-scale jobs with more stable allocation. This local quality approach allows each node group to excel at its specific function while maintaining overall system flexibility.
3Device complexity
If a single scheduling algorithm is used for all jobs, then the scheduling process is simplified, but the fairness of waiting time among different job scales is worsened
Solution Approach 1:
The patent segments the scheduling process into two parts: a first scheduling algorithm for small-scale jobs and a second scheduling algorithm for large-scale jobs. This segmentation allows each algorithm to be optimized for its specific job type, improving waiting time fairness while keeping each individual algorithm relatively simple.
Solution Approach 2:
Instead of using a single complex algorithm that tries to handle all job types equally, the patent inverts the approach by using multiple simple algorithms specialized for different job types. This inversion simplifies the overall scheduling process while improving fairness, as each algorithm can focus on optimizing for its specific job category.
Data Source
AI summary
An information processing apparatus calculates a first load value indicating the load of a plurality of first jobs whose used node counts are less than or equal to a threshold among jobs waiting for execution, and a second load value indicating the load of a plurality of second jobs whose used node counts exceed the threshold among the waiting jobs. If load conditions including one where the first load value exceeds the second load value are satisfied, the information processing apparatus combines two or more first jobs among the plurality of first jobs to create a combined job whose used node count exceeds the threshold. The information processing apparatus causes a first node group to execute the remaining first jobs among the plurality of first jobs and causes a second node group to execute the combined job and the plurality of second job.


