lkml.org 
[lkml]   [2006]   [Apr]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ia64_do_page_fault shows 19.4% slowdown from notify_die.
On Wed, Apr 19, 2006 at 02:30:35AM +0200, Andi Kleen wrote:
> Robin Holt <holt@sgi.com> writes:
>
> > 499 nSec/fault ia64_do_page_fault notify_die commented out.
> > 501 nSec/fault ia64_do_page_fault with nobody registered.
> > 533 nSec/fault notify_die in and just kprobes.
> > 596 nSec/fault notify_die in and kdb, kprobes, mca, and xpc loaded.
> >
>
> With kdb some slowdown is expected.

kdb does not register a die notifier. It only does the notify_die
callouts. Sorry for the confusion. mca handler and xpc both register
notifiers and both have very early exits.

>
> But just going through kprobes shouldn't be that slow. I guess
> there would be optimization potential there.
>
> Do you have finer grained profiling what is actually slow?
>
>
> > Having the notify_page_fault() without anybody registered was only a
> > 0.4% slowdown. I am not sure that justifies the optimize away, but I
> > would certainly not object.
>
> Still sounds far too much for what is essentially a call + load + test + return
> Where is that overhead comming from? I know IA64 doesn't like indirect
> calls, but there shouldn't any be there for this case.

I think each registered notifier is adding approx 32 nSec. Actually,
the noise on these samples was about +-9nSec which I assumed was processor
stalls on cacheline load.

I think it looks like a lot of time when viewed as nSec, but when viewed
as a percentage of process run time, it is probably not that great of
an issue which is why it has been allowed to creep by for so long.

I can not think of an easy way to diagnose this slowdown any further.
I could run through this code on the simulator so you can see which
instructions actually got executed. Would that be helpful?

Thanks,
Robin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-04-19 13:13    [W:0.052 / U:0.236 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site