On Thu, May 16, 2013 at 01:34:27PM -0700, Dave Hansen wrote: > These are an update of Tim Chen's earlier work: > > http://lkml.kernel.org/r/1347293960.9977.70.camel@schen9-DESK > > I broke the patches up a bit more, and tried to incorporate some > changes based on some feedback from Mel and Andrew. > > Changes for v2: > * use page_mapping() accessor instead of direct access > to page->mapping (could cause crashes when running in > to swap cache pages. > * group the batch function's introduction patch with > its first use > * rename a few functions as suggested by Mel > * Ran some single-threaded tests to look for regressions > caused by the batching. If there is overhead, it is only > in the worst-case scenarios, and then only in hundreths of > a percent of CPU time. > > If you're curious how effective the batching is, I have a quick > and dirty patch to keep some stats: > > https://www.sr71.net/~dave/intel/rmb-stats-only.patch > Didn't do any performance comparison but did a kernel build with 2 make threads per core in a memory constrained situation w/ zswap add got an average batch size of 6.6 pages with the batch being empty on ~10% of calls. rmb call: 423464 rmb pages: 2790332 rmb empty: 41408 The WARN_ONCE only gave me one stack for the first empty batch and, for what it's worth, it was from kswapd. Tested-by: Seth Jennings <sjenning@xxxxxxxxxxxxxxxxxx> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>