Messages in this thread | | | Date | Sun, 25 Jun 2006 15:10:36 +0800 | From | Fengguang Wu <> | Subject | [PATCH 0/7] [RFC] iosched: make a difference between read/readahead requests |
| |
Hi Jens,
This patchset does two jobs: 1) do io schedule differently on READ/READA requests. - to help improve I/O latency and throughput 2) do notification/action on READA => READ events - to make the elevators better informed - to prevent the priority inversion problem - also brings some CPU overheads(*)
(*) Most overheads should be in functions deadline_kick_page() and deadline_add_drq_fifo(). Optimizations should be possible.
The features are required when one is doing a lot of fadvise(WILLNEED) calls, and do not want to interfere with normal I/Os. Servers that serve lots of concurrent clients would benifit a lot, too.
The patches come in two groups:
1) explicitly schedule READA requests Note: currently only the deadline elevator is touched.
[PATCH 1/7] iosched: introduce WRITEA [PATCH 2/7] iosched: introduce parameter deadline.reada_expire [PATCH 3/7] iosched: introduce deadline_add_drq_fifo() [PATCH 4/7] iosched: submit READA requests on possible readahead code path
2) notify/act on pending reads Naming issue: how about pending_read/need_page/... for kick_page?
[PATCH 5/7] iosched: introduce elv_kick_page() [PATCH 6/7] iosched: run elv_kick_page() on sync read [PATCH 7/7] iosched: introduce deadline_kick_page()
Any comments are welcome, thanks.
Fengguang Wu -- Dept. Automation University of Science and Technology of China - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |