Postcards from the Fridge

Thursday, June 22, 2006

We're hunting wabbits

I've been trying to track down the variability that I mentioned in the last blog entry. It is beginning to feel like a threading/scheduling/race problem.

When gnome is starting up, everything is competing for the CPU. 'gnome-panel' and 'nautilus' (among other things) are both trying to initialize at the same time.

So, I've noticed two different things.
  1. The first call to g_signal_connect in 'nautilus_application_instance_init' is fast in the fast case, and slow in the slow case.

    In particular, this call: 'g_signal_connect_object (gnome_vfs_get_volume_monitor (), "volume_unmounted", G_CALLBACK (volume_unmounted_callback), application, 0);'
    takes a long time (1.3 sec) when things are going slowly, but is very quick (0.2) secs when things are fast. This functions appears to add one or more threads that do a bunch of work.

    I've instrumented various functions in the file containing 'gnome_vfs_get_volume_monitor', and I can see that they are running, but I am not sure why. (I have yet to trace the execution from the signal connect to these functions actually running)

  2. In the fast case, gnome-panel runs the code AFTER nautilus startsup. In the slow case, the gnome-panel execution is interspersed with the nautilus execution.
Like I said above, this feels like a locking/scheduling problem. I suspect it is something like:
In the slow case: nautlius needs to do some work, but somebody else (gnome-panel?) holds the lock, so nautlius sleeps a LONG time after it realizes this.

In the fast case: nautilus grabs the lock, and keeps going until it is ready to run. Another possibility: For the fast case, it also might be that the gnome-volume-monitor stuff has already been initialized before nautilus needs it. However, my instrumentation shows that in the fast case, nautilus is the FIRST thing to call the gnome-volume-monitor code, so that wouldn't explain things.

3 Comments:

  • Keto Gedeon United States with multivitamin mineral supplements being the biggest product category-and with an average of 500 new products launched each year. They're sold in many forms-for example, powders, and bars.

    By Blogger Edward, at 1:19 AM  

  • United States with multivitamin/mineral supplements being the biggest product category-and with an average of 500 new products launched each year. They're sold in many forms-for example, tablets, capsules, softgels, gelcaps, liquids, powders, and bars.Super Fast Keto Boost

    By Blogger Edward, at 5:31 AM  

  • There is a key component in your working out at the gym that affects your body to choose to burn fat or sugar as you are working out. The body gets energy in two forms one is sugar and the other is fat, to be burned during your work out and how the body picks and develops that choice will be base on how you breathe during your work out.Keto Trim 800

    By Blogger Lara, at 7:11 AM  

Post a Comment

<< Home