Dynamic Task Dispatching in Multi-Processor Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Manual task dispatching in multi-processor computing environments is labor-intensive, error-prone, and inflexible, leading to undesirable dispatching sequences, while automated dispatching rules are inflexible and require human intervention for changes.
Innovation Solution
A method where a dispatcher in a multi-processor environment receives job properties, employs an initial dispatching rule, monitors system status, and dynamically selects and applies alternative dispatching rules to optimize task assignment based on changing system conditions, ensuring efficient task distribution and system performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If automated dispatching rules (e.g., FIFO, round robin) are used, then automation level increases and manual intervention decreases, but flexibility to system changes deteriorates
Solution Approach 1:
The dispatching rule is made dynamic by allowing it to change automatically in response to system state changes. The system monitors processor utilization and job queue characteristics, and dynamically switches between different dispatching rules (e.g., from FIFO to priority-based) to adapt to changing conditions, thus resolving the contradiction between automation and flexibility.
Solution Approach 2:
The system implements feedback mechanisms where performance metrics (processor utilization, job completion rates, queue depth) are continuously monitored and fed back to the dispatching decision logic. This feedback loop enables the automated system to adjust its behavior based on actual system performance, maintaining flexibility despite high automation.
2Adaptability or versatility
If manual task dispatching is used, then adaptability to system changes improves, but labor intensity and error rate increase
Solution Approach 1:
The system performs self-service by automatically monitoring its own state and making dispatching decisions without human intervention. The dispatcher continuously evaluates system conditions and autonomously selects appropriate tasks for processors, eliminating manual labor while maintaining adaptability through automated decision-making algorithms.
Solution Approach 2:
The patent replaces the mechanical manual dispatching process with an automated computational system. Human operators are substituted by a software-based dispatcher that uses algorithms to analyze system state and make task assignment decisions, thereby eliminating labor intensity while preserving adaptability through intelligent automation.
3Ease of operation
If fixed automated dispatching rules are used, then ease of operation improves, but system performance deteriorates under changing conditions
Solution Approach 1:
The dispatching rule transitions from fixed to dynamic, automatically adapting to changing system conditions such as processor utilization patterns and job characteristics. This dynamic adjustment maintains ease of operation while significantly improving system performance by optimizing task assignment in real-time based on actual system state.
Solution Approach 2:
The system changes operational parameters (dispatching rule selection, priority thresholds, allocation ratios) based on monitored system conditions. By adjusting these parameters dynamically, the system maintains optimal performance across varying workloads while preserving the simplicity of automated operation.
Data Source
AI summary
An embodiment of a method of dispatching tasks in a multi-processor computing environment begins with a step of a dispatcher within the multi-processor computing environment receiving job properties for a plurality of jobs to be processed in the multi-processor computing environment. Each job comprises at least one task. In a second step, the dispatcher employs an initial dispatching rule to assign an initial subset of tasks to processors within the multi-processor computing environment. The method continues with a third step of the dispatcher monitoring system status of the multi-processor computing environment. In a fourth step, the dispatcher selects a second dispatching rule from a plurality of dispatching rules in response to a change in the system status. In a fifth step, the dispatcher employs the second dispatching rule to assign a second subset of tasks to the processors.


