主权项 |
1. A computing system for managing outstanding I/O operations for entities to a storage device, the system comprising:
a de-randomizer, wherein the de-randomizer comprises a plurality of slots, each slot comprising a queued list for listing I/O operations to be dispatched to a storage device, wherein the slots are organized based on the storage device size and offsets into the storage device such that operations grouped together adjacent to each other in a queued list in the same slot are treated as sequential I/O operations to the storage device to determine I/O cost, but I/O operations from different queued lists in different slots are treated as random I/O operations to the storage device to determine operation cost; a plurality of entity queues coupled to the de-randomizer, the entity queues being configured to queue I/O operations to the storage device; a budget data structure coupled to the de-randomizer, wherein the budget data structure is configured to track budgets credits for entities used to determine if entities have sufficient budget to be allowed to have I/O operations dispatched to the storage device; and wherein the system is configured to use the de-randomizer and budget data structure to, based on a most recently and/or currently dispatched I/O operation dispatched to a storage device, where the I/O operation has just completed or is currently actively being performed on the storage device, identify a comparatively low cost, as compared to other I/O operations, including a cost for seek time, next operation for a first entity to dispatch to the storage device when the first entity has sufficient budget to have the I/O operation performed on its behalf and to identify an I/O operation for a second entity to dispatch to the storage device when there is insufficient budget for the first entity. |