Messages in this thread | | | Date | Sun, 29 Jul 2007 12:33:53 -0700 | From | Paul Jackson <> | Subject | Re: RFT: updatedb "morning after" problem [was: Re: -mm merge plans for 2.6.23] |
| |
Ray wrote: > a log structured scheme, where the writeout happens to sequential spaces > on the drive instead of scattered about.
If the problem is reading stuff back in from swap quickly when needed, then this likely helps, by reducing the seeks needed.
If the problem is reading stuff back in from swap at the *same time* that the application is reading stuff from some user file system, and if that user file system is on the same drive as the swap partition (typical on laptops), then interleaving the user file system accesses with the swap partition accesses might overwhelm all other performance problems, due to the frequent long seeks between the two.
In that case, swap layout and swap i/o block size are secondary. However, pre-fetching, so that swap read back is not interleaved with application file accesses, could help dramatically.
===
Perhaps we could have a 'wake-up' command, analogous to the various sleep and hibernate commands. The 'wake-up' command could do whatever of the following it knew to do, in order to optimize for an anticipated change in usage patterns: 1) pre-fetch swap 2) clean (write out) dirty pages 3) maximize free memory 4) layout swap nicely 5) pre-fetch a favorite set of apps
Stumble out of bed in the morning, press 'wake-up', start boiling the water for your coffee, and in another ten minutes, one is ready to rock and roll.
In case Andrew is so bored he read this far -- yes this wake-up sounds like user space code, with minimal kernel changes to support any particular lower level operation that we can't do already.
-- I won't rest till it's the best ... Programmer, Linux Scalability Paul Jackson <pj@sgi.com> 1.925.600.0401 - 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/
| |