[haiku-development] Re: Reproducing system pauses.

  • From: Stephan Assmus <superstippi@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Wed, 29 Jul 2009 17:27:55 +0200

On 2009-07-29 at 17:12:03 [+0200], Fredrik Holmqvist 
<fredrik.holmqvist@xxxxxxxxx> wrote:
> 2009/7/29 Bruno Albuquerque <bga@xxxxxxxxxxxxx>:
> > Fredrik Holmqvist wrote:
> >> A sidenote: I noticed while building and using ActivityMonitor. It 
> >> seems that the two cpu-graphs most of the time is the inverse of each 
> >> other (tested with -j2 and -j8) which may either be poor buildscripts 
> >> for Mozilla, or hinting at something else.
> >> Bruno, you havn't noticed anything peculiar on your multicore machine, 
> >> like one with high cpu and three low?
> >> It's probably nothing, but just thought I'd check.
> >
> > What I noticed is that our scheduler tends to underutilize the CPUs. In 
> > Linux If i do jam -j4, almost all the time the 4 cores are pegged to 
> > 100% usage. In Haiku the cores oscillate a lot from 0 to 100% usage 
> > (even with
> > -j8, that still happens).It could just be that we are waiting a lot 
> > more in
> > IO in Haiku than in Linux tough.
> 
> Yes, that is a thing I've noticed as well.

That is a known problem, though, and the whole reason why Ingo is working 
so hard on all these debugging tools, most notably the command line 
"scheduling_recorder" and the graphical analysis tool "DebugAnalyzer".

To see it in action, you could open a Terminal and run this command (if you 
have those tools installed, they are not on the image by default):

scheduling_recorder outputFile commandLineToRun

Then you can launch DebugAnalyzer with the outputFile as parameter to get 
some graphical view on what was going on. Before you ask, no there is no 
documentation on what you are looking at there... :-) Just so much: on the 
last tab (Scheduling) for example, green color means "running", orange 
means "preemted by another thread", red means "wants to run but has to 
wait" (latency). But it is all work in progress, of course.

Best regards,
-Stephan

Other related posts: