Processor Share Allocation for Multi-Process Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Scheduling algorithms face complexity in efficiently allocating system resources among multiple processes and processors in multi-processor computer systems, especially when constraints like minimum and maximum resource allocations are involved, leading to computational challenges in achieving optimal solutions.
Innovation Solution
Defining a minimum processor share and a maximum processor share for each executable process, using an optimizer to determine target share allocations, and a scheduler to assign processes based on these allocations, which involves scaling and redistributing excess processor time to achieve efficient processor utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If optimal solutions are sought for multi-dimensional scheduling problems with multiple processes and processors, then resource allocation efficiency is improved, but computational time and complexity increase considerably
Solution Approach 1:
The patent segments the complex scheduling problem into two distinct phases: an optimization phase that determines target share allocations using linear programming, and a scheduling phase that assigns processes to processors based on those allocations. This segmentation allows each phase to be solved independently and efficiently, avoiding the need to solve the entire multi-dimensional problem optimally at once.
Solution Approach 2:
The patent extracts the optimization component (target share allocation) from the scheduling component (process-to-processor assignment). By separating these functions, the system can use efficient linear programming algorithms for optimization while using simpler scheduling algorithms for assignment, significantly reducing overall computational complexity.
2Ease of operation
If minimum and maximum resource allocation constraints are imposed on each process, then resource allocation fairness is improved, but scheduling problem complexity increases
Solution Approach 1:
The patent transforms the constrained scheduling problem into an unconstrained linear programming problem by changing the parameters from hard minimum and maximum constraints to soft target share allocations. The optimizer determines allocations that respect these targets while the scheduler handles the actual assignment, converting a complex constrained optimization problem into two simpler problems.
3Quantity of substance
If the number of processes exceeds the number of processors, then system capacity is improved, but processor utilization efficiency decreases
Solution Approach 1:
The patent introduces dynamic share allocations that allow the system to adaptively distribute processor time among more processes than physical processors. The target share allocations and scheduling assignments are dynamically adjusted based on process priorities and current system state, enabling efficient utilization of processors even when handling a larger number of concurrent processes.
Data Source
AI summary
A system and method is provided for assigning a plurality of executable processes to a plurality of physical processors in a multi-processor computer system using a minimum processor share and a maximum processor share defined for each executable process. In an embodiment, the method can include allocating shares of total processor time to each executable process in proportion to the minimum processor shares up to the maximum processor shares to form target share allocations. The target share allocations can be used to map processes to the physical processors.


