Peter Zijlstra
1cde2930e1
sched/preempt: Add static_key() to preempt_notifiers
Avoid touching the curr->preempt_notifier cacheline when not needed.
Provides a small improvement on pipe-bench:
taskset 01 perf stat --repeat 10 -- perf bench sched pipe
before:
Performance counter stats for 'perf bench sched pipe' (10 runs):
12385.016204 task-clock (msec) # 1.001 CPUs utilized ( +- 0.34% )
2,000,023 context-switches # 0.161 M/sec ( +- 0.00% )
0 cpu-migrations # 0.000 K/sec
175 page-faults # 0.014 K/sec ( +- 0.26% )
41,376,162,250 cycles # 3.341 GHz ( +- 0.11% )
17,389,139,321 stalled-cycles-frontend # 42.03% frontend cycles idle ( +- 0.25% )
<not supported> stalled-cycles-backend
68,788,588,003 instructions # 1.66 insns per cycle
# 0.25 stalled cycles per insn ( +- 0.02% )
13,449,387,620 branches # 1085.940 M/sec ( +- 0.02% )
20,880,690 branch-misses # 0.16% of all branches ( +- 0.98% )
12.372646094 seconds time elapsed ( +- 0.34% )
after:
Performance counter stats for 'perf bench sched pipe' (10 runs):
12180.936528 task-clock (msec) # 1.001 CPUs utilized ( +- 0.33% )
2,000,077 context-switches # 0.164 M/sec ( +- 0.00% )
0 cpu-migrations # 0.000 K/sec
174 page-faults # 0.014 K/sec ( +- 0.27% )
40,691,545,577 cycles # 3.341 GHz ( +- 0.06% )
16,446,333,371 stalled-cycles-frontend # 40.42% frontend cycles idle ( +- 0.18% )
<not supported> stalled-cycles-backend
68,570,100,387 instructions # 1.69 insns per cycle
# 0.24 stalled cycles per insn ( +- 0.01% )
13,389,740,014 branches # 1099.237 M/sec ( +- 0.01% )
20,175,440 branch-misses # 0.15% of all branches ( +- 0.52% )
12.169253010 seconds time elapsed ( +- 0.33% )
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-06-19 10:06:45 +02:00
..
2015-04-27 23:11:49 -04:00
2014-08-08 16:30:24 -07:00
2015-02-19 12:39:03 -06:00
2015-05-08 11:59:40 +02:00
2015-04-17 09:04:08 -04:00
2015-04-24 20:57:06 +02:00
2015-04-13 23:57:20 +02:00
2015-06-19 10:03:12 +02:00
2015-04-10 12:01:59 +02:00
2015-04-21 09:33:10 -07:00
2015-04-14 19:33:59 -07:00
2015-06-19 10:06:45 +02:00
2015-06-02 08:05:42 +02:00
2015-05-06 23:03:23 -04:00
2015-04-11 22:27:55 -04:00
2014-10-09 22:26:04 -04:00
2015-04-26 17:22:07 -07:00
2015-04-15 15:06:55 -04:00
2015-04-26 17:22:07 -07:00
2015-04-22 14:49:23 -07:00
2015-02-11 20:07:47 -08:00
2015-04-26 17:22:07 -07:00
2014-08-08 15:57:18 -07:00
2015-04-15 16:35:22 -07:00
2014-07-15 11:05:09 -04:00
2015-04-15 16:35:25 -07:00
2015-02-12 18:54:12 -08:00
2015-03-09 15:43:00 +01:00
2015-04-14 13:36:04 -07:00
2015-04-14 16:49:03 -07:00
2014-08-25 15:42:19 -07:00
2015-04-15 16:35:22 -07:00
2014-07-23 10:18:06 -07:00
2015-04-12 21:03:31 +02:00
2015-04-12 20:58:24 +02:00
2014-11-19 15:25:26 -05:00
2015-05-19 08:39:13 +02:00
2014-10-21 23:44:20 +02:00
2015-05-08 12:21:40 +02:00
2015-04-15 16:35:22 -07:00
2015-04-15 16:35:22 -07:00
2014-10-29 11:18:18 -04:00
2014-10-14 02:18:16 +02:00
2014-09-10 15:42:12 -07:00
2015-01-14 15:07:32 +01:00
2015-04-23 16:52:01 +02:00
2014-12-10 17:41:17 -08:00
2015-02-13 21:21:42 -08:00
2014-10-09 22:25:51 -04:00
2015-04-30 09:35:41 -07:00
2015-05-09 03:29:24 +09:30
2015-01-06 11:04:29 -08:00
2014-12-04 14:34:54 -05:00
2015-02-13 21:21:38 -08:00
2014-12-22 15:40:48 +01:00
2015-04-15 13:31:23 +09:30
2014-12-16 15:53:03 -08:00
2015-04-17 09:04:06 -04:00
2015-02-13 21:21:38 -08:00
2015-04-17 09:04:06 -04:00
2015-01-17 10:02:23 +13:00
2015-04-15 16:35:23 -07:00
2015-04-15 15:06:55 -04:00
2015-04-15 16:35:22 -07:00
2015-02-17 14:34:55 -08:00
2015-05-08 12:04:36 +02:00
2015-04-19 13:19:23 -07:00
2015-03-11 13:20:25 -07:00
2015-02-09 15:24:03 -08:00
2014-12-13 12:42:48 -08:00
2015-06-19 10:03:12 +02:00
2015-04-15 16:35:22 -07:00
2015-04-17 09:04:07 -04:00
2014-12-10 17:41:10 -08:00
2015-04-17 09:04:08 -04:00
2014-07-17 09:35:17 -04:00
2015-01-18 01:03:45 -05:00
2014-08-08 15:57:18 -07:00
2014-09-16 13:41:06 -07:00
2014-07-23 10:18:05 -07:00
2014-12-05 17:19:27 -06:00
2014-12-17 12:31:40 -08:00
2014-08-26 13:45:45 -04:00
2014-12-17 12:31:40 -08:00
2014-12-04 14:34:47 -05:00
2015-05-19 10:57:03 -07:00
2015-04-06 11:16:04 -04:00