Storage Controller Command Prioritization via Channel Adapter
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage subsystems, time-critical control commands often face processing delays due to high loads from I/O commands, leading to potential timeouts and system stalls, while existing solutions fail to effectively prioritize commands based on their attributes, resulting in compromised system performance.
Innovation Solution
A storage subsystem with a channel adapter that extracts priority commands from received commands based on defined attributes, executing them with high priority until a guaranteed number of activations is reached, while enqueuing non-priority commands to prevent system deterioration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If control commands are processed with high priority, then response time for control commands is improved, but I/O processing is delayed and system performance deteriorates
Solution Approach 1:
The patent implements dynamic priority adjustment where the channel processor changes the execution priority of commands based on real-time system conditions. When a control command is detected, its priority is elevated above I/O commands for processing, but this priority adjustment is temporary and adaptive rather than fixed, allowing the system to balance control responsiveness with I/O throughput based on actual operational needs
Solution Approach 2:
The patent segments the command processing into distinct priority levels by separating control commands from I/O commands in the execution queue. The channel processor identifies and isolates control commands (such as device recognition commands) from regular I/O commands, creating separate processing streams where control commands can be executed with elevated priority without completely blocking I/O processing, thus resolving the contradiction between control responsiveness and I/O throughput
2Productivity
If I/O commands are processed continuously, then system productivity is maintained, but control commands experience delays causing timeouts and system stalls
Solution Approach 1:
The channel processor incorporates feedback mechanisms to monitor the execution status and timing of control commands. When control commands are detected in the command queue, the system adjusts processing priorities based on this feedback, ensuring that control commands receive timely execution while maintaining overall system productivity. This feedback-driven priority adjustment prevents control command timeouts while avoiding complete I/O processing suspension
Solution Approach 2:
The system dynamically adjusts command execution priorities based on real-time detection of control commands in the queue. Rather than maintaining a fixed priority scheme, the channel processor adaptively shifts processing focus between control and I/O commands based on actual system needs, ensuring control commands are executed reliably without permanently sacrificing I/O throughput
Data Source
AI summary
A storage subsystem capable of processing time-critical control commands while suppressing deterioration of the system performance to a minimum. When various commands are received in a multiplex manner via the same port from plural host devices, the channel adapter of the storage subsystem extracts commands of a first kind from the received commands. Then, the adapter executes the extracted commands of the first kind with high priority within a given unit time until a given number of guaranteed activations is reached. At the same time, commands of a second kind are enqueued in a queue of commands. After the commands of the first kind are executed as many as the number of guaranteed activations, the commands of the second kind are executed in the unit time.


