Re: [patch 00/16] CFS Bandwidth Control v7

From: Ingo Molnar
Date: Tue Jul 05 2011 - 04:53:22 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

>
> * Hu Tao <hutao@xxxxxxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/