Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge "enhance the I/O Scheduler with bandwidth and throughput limits…
…" from Glauber " This is my new proposal for the I/O Scheduler concurrency determination, addressing a series of shortcomings that the current design was shown over the years to display. Not yet included in this series is a version of iotune that calculates the new parameters that are used in setting up the disk in this new proposal. But that will follow shortly after we agree on this. Also not included, but a natural next step for this work, is to allow for all all shards to dispatch I/O, reducing the inter-shard latency for the remote dispatchers. For now, I think we can take the next step with the same --num-io-queues parameters we have, and later handle that issue. We can do that by allowing a good old fashioned lock, or a lock-free priority queue. That deserves a separate investigation on its own, and I am positive that what is delivered here will already yield strong latency benefits, while still allowing us to adjust the number of io queues manually. " * 'iosched-v2-v3' of github.com:glommer/seastar: io_queue: determine concurrency based on the disk's visible throughput utils: adjust identation utils: allow parse_memory_size to interpret unitless numbers reactor: extend the fair queue with size and iops limits io_queues: move capacity planning out of resource manager io_queue: accept a configuration struct fair_queue: allow for passing more complex parameters fair_queue: encapsulate properties in a request descriptor reactor: pass a descriptor pointer to submit_io
- Loading branch information
Showing
8 changed files
with
321 additions
and
96 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.