Messages in this thread | | | From | Suleiman Souhlal <> | Subject | Re: [PATCH 1/4] vmscan: delegate pageout io to flusher thread if current is kswapd | Date | Thu, 15 Apr 2010 10:27:09 -0700 |
| |
On Apr 15, 2010, at 2:32 AM, Dave Chinner wrote:
> On Thu, Apr 15, 2010 at 01:05:57AM -0700, Suleiman Souhlal wrote: >> >> On Apr 14, 2010, at 9:11 PM, KOSAKI Motohiro wrote: >> >>> Now, vmscan pageout() is one of IO throuput degression source. >>> Some IO workload makes very much order-0 allocation and reclaim >>> and pageout's 4K IOs are making annoying lots seeks. >>> >>> At least, kswapd can avoid such pageout() because kswapd don't >>> need to consider OOM-Killer situation. that's no risk. >>> >>> Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> >> >> What's your opinion on trying to cluster the writes done by pageout, >> instead of not doing any paging out in kswapd? > > XFS already does this in ->writepage to try to minimise the impact > of the way pageout issues IO. It helps, but it is still not as good > as having all the writeback come from the flusher threads because > it's still pretty much random IO.
Doesn't the randomness become irrelevant if you can cluster enough pages?
> And, FWIW, it doesn't solve the stack usage problems, either. In > fact, it will make them worse as write_one_page() puts another > struct writeback_control on the stack...
Sorry, this patch was not meant to solve the stack usage problems.
-- Suleiman
| |