Resource Health Based Workload Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data centers face service disruptions due to resource unavailability, impacting user experience and organizational perception, as existing systems lack effective workload prioritization and resource health monitoring to manage resource overload and recovery.
Innovation Solution
A computer-implemented method and system for resource health-based scheduling that allocates threads to workloads based on classification and priority, throttles workloads during resource overload, and reallocates threads when resources recover, using a workload classification module, thread pool module, resource health module, and resource monitor module to manage resource health and workload execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If threads are allocated to multiple workloads simultaneously, then resource utilization increases, but service reliability deteriorates when resources become overloaded
Solution Approach 1:
The system dynamically adjusts thread allocation based on real-time resource health status. When resources are healthy, more threads are allocated to increase productivity. When resources become overloaded or unhealthy, the system reduces thread allocation to maintain reliability. This dynamic adaptation resolves the contradiction by making thread allocation flexible rather than static.
Solution Approach 2:
The system changes the parameter of thread allocation based on resource health conditions. By monitoring resource status and adjusting the number of allocated threads accordingly, the system optimizes both productivity and reliability. When resources are underutilized, thread allocation increases; when overloaded, allocation decreases, thus resolving the trade-off between these two parameters.
2Reliability
If workload priority differentiation is implemented, then service reliability improves during overload, but system complexity increases
Solution Approach 1:
The system segments workloads into different priority levels (high priority and low priority). During resource overload, high priority workloads continue to receive thread allocation while low priority workloads are throttled. This segmentation allows the system to maintain reliability by protecting critical services while managing complexity through clear categorization rules.
Solution Approach 2:
The resource health module acts as an intermediary that monitors resource status and mediates thread allocation decisions between competing workloads. It evaluates resource health and workload priorities, then determines appropriate thread allocation without requiring complex direct interactions between all workload components, thus managing system complexity while maintaining reliability.
3Reliability
If resource health monitoring is continuously performed, then service reliability improves, but energy consumption increases
Solution Approach 1:
The system performs resource health monitoring periodically rather than continuously. The resource health module checks resource status at intervals and adjusts thread allocation based on these periodic assessments. This approach maintains service reliability by detecting resource degradation while reducing energy consumption compared to continuous monitoring, thus resolving the contradiction between these two parameters.
Data Source
AI summary
Allocation of computing threads can include receiving a registration of a workload, the registration including a workload classification and a workload priority; monitoring statuses of a plurality of resources; identifying, by a computing device, a thread of a resource from the plurality of resources, the thread being programmed to execute a task associated with the workload; evaluating, by the computing device, the workload classification and the workload priority of the workload with workload classifications and workload priorities of other workloads requesting the thread; and allocating the thread to one of the workloads based on evaluation of the workload classification and the workload priority.


