Messages in this thread | | | Date | Tue, 5 Jul 2011 10:52:52 +0200 | From | Ingo Molnar <> | Subject | Re: [patch 00/16] CFS Bandwidth Control v7 |
| |
* Ingo Molnar <mingo@elte.hu> wrote:
> > * Hu Tao <hutao@cn.fujitsu.com> wrote: > > > perf diff output: > > > > # Baseline Delta Shared Object Symbol > > # ........ .......... ................. ........................... > > # > > 0.00% +10.07% [kernel.kallsyms] [k] __lock_acquire > > 0.00% +5.90% [kernel.kallsyms] [k] lock_release > > 0.00% +4.86% [kernel.kallsyms] [k] trace_hardirqs_off_caller > > 0.00% +4.06% [kernel.kallsyms] [k] debug_smp_processor_id > > 0.00% +4.00% [kernel.kallsyms] [k] lock_acquire > > 0.00% +3.81% [kernel.kallsyms] [k] lock_acquired > > 0.00% +3.71% [kernel.kallsyms] [k] lock_is_held > > 0.00% +3.04% [kernel.kallsyms] [k] validate_chain > > 0.00% +2.68% [kernel.kallsyms] [k] check_chain_key > > 0.00% +2.41% [kernel.kallsyms] [k] trace_hardirqs_off > > 0.00% +2.01% [kernel.kallsyms] [k] trace_hardirqs_on_caller > > Oh, please measure with lockdep (CONFIG_PROVE_LOCKING) turned off. No > production kernel has it enabled and it has quite some overhead (as > visible in the profile), skewing results. > > > 2.04% -0.09% pipe-test-100k [.] main > > 0.00% +1.79% [kernel.kallsyms] [k] add_preempt_count > > I'd also suggest to turn off CONFIG_PREEMPT_DEBUG.
The best way to get a good 'reference config' to measure scheduler overhead on do something like:
make defconfig make localyesconfig
The first step will configure a sane default kernel, the second one will enable all drivers that are needed on that box. You should be able to boot the resulting bzImage and all drivers should be built-in and are easily profilable.
Thanks,
Ingo
| |