Adaptive Partition Scheduler for Multiprocessing Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing process scheduling systems in operating systems face challenges in real-time systems, particularly with long latencies for low-priority threads and vulnerability to malicious software, and lack responsiveness in multiprocessing environments.
Innovation Solution
A symmetric multiprocessing system employs an adaptive partition processing scheduler that allocates processing units based on merit function values, considering available CPU budgets and global budgets, to manage and prioritize threads across multiple processing units, ensuring fair share and responsiveness.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If per-thread scheduling systems are used with priority levels, then design flexibility is provided, but very long latencies occur for low-priority threads
Solution Approach 1:
The system segments the scheduling mechanism into per-thread priority levels and per-partition budget control. Threads are grouped into partitions that have guaranteed CPU time budgets, while individual threads within partitions maintain priority levels for ordering. This segmentation allows low-priority threads to receive guaranteed execution time through partition budget allocation, preventing indefinite postponement while preserving design flexibility.
2Adaptability or versatility
If per-thread scheduling systems are used with priority assignment, then design flexibility is provided, but coordination complexity increases between software designers
Solution Approach 1:
The partition acts as an intermediary layer between software designers and the scheduling system. Designers assign threads to partitions with budget parameters rather than directly configuring complex scheduling interactions. The partition scheduler mediates resource allocation based on budget constraints, automatically managing coordination between multiple threads and partitions without requiring designers to manually resolve scheduling conflicts.
3Reliability
If global fair-share scheduling systems are used, then malicious software interference is prevented, but responsiveness is reduced in real-time systems
Solution Approach 1:
The system applies different scheduling qualities to different partitions: real-time partitions with strict budget guarantees provide responsive, deterministic execution for critical threads, while other partitions use fair-share scheduling for non-critical workloads. This local differentiation allows the system to maintain responsiveness for time-sensitive operations while still providing fair resource distribution and protection against malicious software in non-real-time partitions.
4Device complexity
If CPU time is allocated based on priority levels only, then simple scheduling is maintained, but long latencies occur for low-priority threads
Solution Approach 1:
The system dynamically adjusts scheduling behavior based on partition budget status. When a partition has available budget, threads are scheduled according to their priority levels maintaining simple ordering. When budget is exhausted, the scheduler dynamically switches to blocking further allocations to that partition, ensuring other partitions can execute. This dynamic adaptation prevents long latencies for low-priority threads while maintaining scheduling simplicity through priority-based ordering within active partitions.
Data Source
AI summary
A symmetric multiprocessing system includes multiple processing units and corresponding instances of an adaptive partition processing scheduler. Each instance of the adaptive partition processing scheduler selectively allocates the respective processing unit to run process threads of one or more adaptive partitions based on a comparison between merit function values of the one or more adaptive partitions. The merit function for a particular partition of the one or more adaptive partitions may be based on whether the adaptive partition has available budget on the respective processing unit. The merit function for a particular partition associated with an instance of the adaptive partition scheduler also, or in the alternative, may be based on whether the adaptive partition has available global budget on the symmetric multiprocessing system.


