abstract |
A method for two level quality of service scheduling for latency and queue depth control in a storage system is provided. The method includes determining queue depth as input/output operations per unit time that a storage subsystem can sustain, for each of a plurality of queues corresponding to storage subsystems in the storage system and determining system capacity as total input and output operations per unit time that the storage system can sustain, based on the queue depth of each of the plurality of queues. The method includes determining whether to accept or deny an input/output request for placement onto an input/output stack, based on a comparison of credits of the input/output request to the system capacity as determined on an ongoing basis, and placing the input/output request from the input/output stack onto one of the plurality of queues based on whether doing so maintains the queue depth of the one of the plurality of queues. |