All of lore.kernel.org
 help / color / mirror / Atom feed
* Please revert [PATCH] user of the jiffies rounding patch: Slab
@ 2007-04-28 21:12 Christoph Lameter
       [not found] ` <4633D1A2.6010002@linux.intel.com>
  0 siblings, 1 reply; 6+ messages in thread
From: Christoph Lameter @ 2007-04-28 21:12 UTC (permalink / raw)
  To: arjan; +Cc: akpm, linux-kernel

The slab reaper takes global locks. If one makes all cache reapers fire at 
the same time as this patch does then there will be a lot of contention 
that may result lots of interrupt holdoffs since some locks are taken
with interrupts disabled. The vm statistics counters are updated
and will content for global cachelines if this is done.

The approach is fine up to 2 cpus. With 2 cpus we can schedule one cache 
reaper on each cpu each second. So I guess that this was not noticed.

For 16 cpus we are already scheduling 8 parallel cache reapers every 
second. In a 512 cpu system desaster strikes with 256 cache reapers being 
fired off at the same time each second

Git commit 
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=2b2842146cb4105877c2be51d3857ec61ebd4ff9

This is in 2.6.20 / 2.6.21.

I'd suggest to use a staggered per cpu approach instead that runs multiple 
per cpu timers at once. But every batch of these timers must be run at an 
offset from each other. Not at the same time please.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2007-04-30 19:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-28 21:12 Please revert [PATCH] user of the jiffies rounding patch: Slab Christoph Lameter
     [not found] ` <4633D1A2.6010002@linux.intel.com>
2007-04-28 23:35   ` Christoph Lameter
2007-04-28 23:40     ` Arjan van de Ven
2007-04-30 17:43       ` Christoph Lameter
2007-04-30 19:14         ` Arjan van de Ven
2007-04-30 19:28           ` Christoph Lameter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.