Re: BFS vs. mainline scheduler benchmarks and measurements

From: Jens Axboe
Date: Thu Sep 10 2009 - 03:54:03 EST


On Thu, Sep 10 2009, Ingo Molnar wrote:
>
> * Jens Axboe <jens.axboe@xxxxxxxxxx> wrote:
>
> > On Thu, Sep 10 2009, Jens Axboe wrote:
> > > On Thu, Sep 10 2009, Peter Zijlstra wrote:
> > > > On Wed, 2009-09-09 at 14:20 +0200, Jens Axboe wrote:
> > > > >
> > > > > One thing I also noticed is that when I have logged in, I
> > > > > run xmodmap manually to load some keymappings (I always tell
> > > > > myself to add this to the log in scripts, but I
> > > > > suspend/resume this laptop for weeks at the time and forget
> > > > > before the next boot). With the stock kernel, xmodmap will
> > > > > halt X updates and take forever to run. With BFS, it
> > > > > returned instantly. As I would expect.
> > > >
> > > > Can you provide a little more detail (I'm a xmodmap n00b), how does one
> > > > run xmodmap and maybe provide your xmodmap config?
> > >
> > > Will do, let me get the notebook and strace time it on both bfs and
> > > mainline.
> >
> > Here's the result of running perf stat xmodmap .xmodmap-carl on
> > the notebook. I have attached the .xmodmap-carl file, it's pretty
> > simple. I have also attached the output of strace -o foo -f -tt
> > xmodmap .xmodmap-carl when run on 2.6.31-rc9.
> >
> > 2.6.31-rc9-bfs210
> >
> > Performance counter stats for 'xmodmap .xmodmap-carl':
> >
> > 153.994976 task-clock-msecs # 0.990 CPUs (scaled from 99.86%)
> > 0 context-switches # 0.000 M/sec (scaled from 99.86%)
> > 0 CPU-migrations # 0.000 M/sec (scaled from 99.86%)
> > 315 page-faults # 0.002 M/sec (scaled from 99.86%)
> > <not counted> cycles
> > <not counted> instructions
> > <not counted> cache-references
> > <not counted> cache-misses
> >
> > 0.155573406 seconds time elapsed
>
> (Side question: what hardware is this - why are there no hw
> counters? Could you post the /proc/cpuinfo?)

Sure, attached. It's a Thinkpad x60, core duo. Nothing fancy. The perf
may be a bit dated.

I went to try -tip btw, but it crashes on boot. Here's the backtrace,
typed manually, it's crashing in queue_work_on+0x28/0x60.

Call Trace:
queue_work
schedule_work
clocksource_mark_unstable
mark_tsc_unstable
check_tsc_sync_source
native_cpu_up
relay_hotcpu_callback
do_forK_idle
_cpu_up
cpu_up
kernel_init
kernel_thread_helper

> > Performance counter stats for 'xmodmap .xmodmap-carl':
> >
> > 8.529265 task-clock-msecs # 0.001 CPUs
> > 23 context-switches # 0.003 M/sec
> > 1 CPU-migrations # 0.000 M/sec
> > 315 page-faults # 0.037 M/sec
> > <not counted> cycles
> > <not counted> instructions
> > <not counted> cache-references
> > <not counted> cache-misses
> >
> > 11.804293482 seconds time elapsed
>
> Thanks - so we context-switch 23 times - possibly to Xorg. But 11
> seconds is extremely long. Will try to reproduce it.

There's also the strace info with timings. Xorg is definitely involved,
during those 11s things stop updating completely.

--
Jens Axboe

--
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/