Messages in this thread |  | | | Date | Mon, 8 Jun 2009 19:58:08 +0200 | | From | Johannes Weiner <> | | Subject | Re: [rfc][patch] swap: virtual swap readahead |
| |
On Mon, Jun 08, 2009 at 03:52:46PM +0800, Wu Fengguang wrote: > On Wed, May 27, 2009 at 05:05:46PM +0200, Johannes Weiner wrote: > > The current swap readahead implementation reads a physically > > contiguous group of swap slots around the faulting page to take > > advantage of the disk head's position and in the hope that the > > surrounding pages will be needed soon as well. > > > > This works as long as the physical swap slot order approximates the > > LRU order decently, otherwise it wastes memory and IO bandwidth to > > read in pages that are unlikely to be needed soon. > > > > However, the physical swap slot layout diverges from the LRU order > > with increasing swap activity, i.e. high memory pressure situations, > > and this is exactly the situation where swapin should not waste any > > memory or IO bandwidth as both are the most contended resources at > > this point. > > > > This patch makes swap-in base its readaround window on the virtual > > proximity of pages in the faulting VMA, as an indicator for pages > > needed in the near future, while still taking physical locality of > > swap slots into account. > > > > This has the advantage of reading in big batches when the LRU order > > matches the swap slot order while automatically throttling readahead > > when the system is thrashing and swap slots are no longer nicely > > grouped by LRU order. > > Hi Johannes, > > You may want to test the patch against a real desktop :) > The attached scripts can do that. I also have the setup to > test it out conveniently, so if you send me the latest patch..
Thanks a bunch for the offer! I'm just now incorporating Hugh's feedback and hope I will be back soon with the next version. I will let you know, for sure.
Hannes
|  |