KAMEZAWA Hiroyuki
34e55232e5
mm: avoid false sharing of mm_counter
...
Considering the nature of per mm stats, it's the shared object among
threads and can be a cache-miss point in the page fault path.
This patch adds per-thread cache for mm_counter. RSS value will be
counted into a struct in task_struct and synchronized with mm's one at
events.
Now, in this patch, the event is the number of calls to handle_mm_fault.
Per-thread value is added to mm at each 64 calls.
rough estimation with small benchmark on parallel thread (2threads) shows
[before]
4.5 cache-miss/faults
[after]
4.0 cache-miss/faults
Anyway, the most contended object is mmap_sem if the number of threads grows.
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Minchan Kim <minchan.kim@gmail.com>
Cc: Christoph Lameter <cl@linux-foundation.org>
Cc: Lee Schermerhorn <lee.schermerhorn@hp.com>
Cc: David Rientjes <rientjes@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-03-06 11:26:24 -08:00
..
2010-03-05 15:04:42 -06:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:25:10 -05:00
2010-03-03 14:07:54 -05:00
2010-02-07 03:06:21 -05:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:25:52 -05:00
2010-02-20 10:06:35 -05:00
2010-03-04 08:15:33 -08:00
2009-11-18 08:37:40 -08:00
2010-01-14 09:05:42 -05:00
2010-02-08 14:38:36 -05:00
2009-12-11 15:18:05 -08:00
2010-02-26 12:15:54 -06:00
2010-01-19 22:36:06 -06:00
2010-03-05 13:25:52 -05:00
2009-10-27 19:34:04 -04:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:25:52 -05:00
2009-12-16 07:20:13 -08:00
2010-03-03 08:08:21 -08:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:25:52 -05:00
2010-03-03 14:07:58 -05:00
2010-03-03 14:08:00 -05:00
2009-12-16 12:16:47 -05:00
2009-12-16 10:43:34 -08:00
2010-03-05 00:20:26 +01:00
2010-02-24 12:11:20 -05:00
2009-12-16 12:04:02 -08:00
2010-03-05 13:20:53 -08:00
2009-12-16 10:43:34 -08:00
2010-03-05 13:25:52 -05:00
2009-12-04 15:39:55 +01:00
2010-03-05 15:46:18 -05:00
2010-03-05 13:20:53 -08:00
2010-03-04 08:15:33 -08:00
2009-09-30 09:31:14 -07:00
2010-02-19 03:35:12 -05:00
2010-03-05 13:25:52 -05:00
2010-03-06 11:26:23 -08:00
2010-03-05 13:25:52 -05:00
2010-01-11 14:30:09 +01:00
2010-03-06 11:26:23 -08:00
2009-12-16 07:20:18 -08:00
2010-03-05 00:20:31 +01:00
2010-01-16 12:15:40 -08:00
2010-03-05 13:20:53 -08:00
2010-01-26 22:22:26 -05:00
2009-09-24 07:47:42 -04:00
2010-03-05 15:35:35 +00:00
2010-02-16 15:42:42 -08:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:25:52 -05:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:20:53 -08:00
2010-03-05 13:20:53 -08:00
2009-12-16 07:20:13 -08:00
2009-12-22 12:27:34 -05:00
2010-03-05 00:20:28 +01:00
2010-01-29 08:22:01 -08:00
2010-01-29 08:22:01 -08:00
2010-01-29 08:22:01 -08:00
2010-01-29 08:22:01 -08:00
2010-01-29 08:22:01 -08:00
2010-01-30 20:28:19 +01:00
2010-03-02 19:17:34 +01:00
2010-02-07 03:06:21 -05:00
2009-09-25 09:27:30 -07:00
2009-09-24 07:21:03 -07:00
2010-02-11 14:05:55 -08:00
2009-12-14 18:12:10 -05:00
2010-03-03 14:13:08 -05:00
2009-12-17 04:52:13 -05:00
2009-09-24 07:21:04 -07:00
2010-01-25 12:26:38 -02:00
2009-12-22 12:27:34 -05:00
2010-03-06 11:26:24 -08:00
2010-02-07 10:26:01 -08:00
2010-02-07 03:07:29 -05:00
2010-02-25 10:34:48 +01:00
2010-03-05 13:25:52 -05:00
2009-12-16 12:16:49 -05:00
2010-03-05 00:20:30 +01:00
2010-03-03 14:07:59 -05:00
2009-11-12 07:26:01 -08:00
2009-12-17 13:23:24 -08:00
2010-03-03 13:00:17 -05:00
2010-03-03 13:00:21 -05:00
2010-03-06 10:54:48 -08:00
2010-03-03 14:08:00 -05:00
2010-03-03 13:00:21 -05:00
2010-03-05 13:20:53 -08:00
2009-12-17 10:51:40 -05:00
2010-03-03 13:00:22 -05:00
2010-03-03 14:07:55 -05:00
2009-11-04 09:09:52 +01:00
2009-10-04 15:05:10 -07:00
2010-02-22 15:45:54 -08:00
2009-12-22 12:27:34 -05:00
2009-11-04 09:09:52 +01:00
2009-12-17 10:58:17 -05:00
2009-12-23 13:33:54 +01:00
2010-03-03 14:08:00 -05:00
2010-03-05 00:20:24 +01:00
2009-12-22 12:27:34 -05:00
2009-12-03 11:48:07 +00:00
2009-12-16 12:16:49 -05:00