VM Workload Scheduling via Resource Profile Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Information handling devices often face underutilization or overutilization of resources during workload execution, leading to inefficient use of hardware resources.
Innovation Solution
An apparatus and method for workload execution timing that includes a job determination module, comparison module, scheduling module, and execution module to identify, compare, and schedule jobs based on their resource usage profiles, ensuring that resource utilization remains below a maximum threshold while maximizing utilization above a target threshold.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If jobs are scheduled without considering execution profiles, then resource utilization may exceed maximum thresholds causing overutilization, but scheduling complexity increases
Solution Approach 1:
The system performs preliminary analysis of job execution profiles before scheduling, determining the resource usage patterns of each job in advance. This allows the scheduler to make informed decisions about job placement and timing, ensuring resource utilization remains within thresholds while avoiding the need for complex real-time adjustments during execution.
Solution Approach 2:
The system creates simplified representations (copies) of job execution profiles that capture essential resource usage characteristics. These profile copies are used for comparison and matching operations during scheduling, reducing the complexity of analyzing full job specifications while maintaining effective resource utilization control.
2Productivity
If jobs are scheduled to maximize resource utilization above target threshold, then resource efficiency improves, but risk of exceeding maximum threshold increases
Solution Approach 1:
The scheduling system incorporates feedback mechanisms that continuously monitor resource utilization levels and adjust job scheduling decisions accordingly. When utilization approaches the maximum threshold, the system automatically modifies scheduling to prevent exceeding limits, while still maximizing efficiency by utilizing resources fully up to the threshold during normal operation.
Solution Approach 2:
The system dynamically adjusts scheduling parameters based on current resource utilization states. By changing scheduling decisions in response to utilization levels, the system can push resources to their maximum efficient use without violating threshold constraints, thus improving productivity while maintaining reliability.
3Measurement precision
If execution profiles are determined based on prior execution, then scheduling accuracy improves, but time for profile determination increases
Solution Approach 1:
Instead of analyzing complete execution histories, the system creates simplified profile copies that capture the essential resource usage patterns from prior executions. These condensed profiles enable accurate scheduling decisions while requiring significantly less processing time to generate and analyze compared to full execution data.
4Productivity
If multiple jobs are scheduled concurrently, then system throughput increases, but resource utilization control becomes more difficult
Solution Approach 1:
The system segments the scheduling problem by analyzing and managing individual job execution profiles separately, then combining them through systematic comparison and matching. This segmentation approach allows multiple jobs to be scheduled concurrently while maintaining control over overall resource utilization, as each job's resource requirements are independently evaluated and coordinated.
Data Source
AI summary
An apparatus for workload execution timing is disclosed. A method and a computer program product also perform the functions of the apparatus. The apparatus includes a job determination module that determines jobs to be executed by a computer system. The apparatus includes a comparison module that compares an execution profile of each job with a resource of a device of the computer system. The execution profile of each job includes an amount of a resource of a device used by the respective job over time. The apparatus includes a scheduling module that determines a schedule that indicates a time to execute each job on the device based on the comparison. Each job is scheduled to maintain a utilization of the resource of the device of the computer system below a maximum threshold. The apparatus includes an execution module that submits the jobs for execution based on the schedule.


