Gnome login performance



=========================================
Gnome Login Performance Analysis
By: Brian Cameron (Brian Cameron sun com)
Last updated: October 4, 2002
=========================================

I did a performance analysis of how long it takes the various Gnome
programs to startup on a Solaris system.  It seems that the functions
that are using the most time are fairly system indepentant, so I
suspect that the performance ratios are similar for all distributions.

I generated the reports with the Forte performance analysis tools.  This 
identified a number of functions which are taking the bulk of time.
I'm interested in any feedback/opinions regarding whether there are
speedup opportunities in the functions identified.

I am happy to provide further details about where the time is being
spent if there are any questions.

Results
=======

This report specifies how much user/system time was spent in each
program, and my analysis of what functions were the most significant
CPU users (including as much of the stack as I could reasonably
deduce).  I analyzed the runs that included Nautilus at startup more
closely than the ones that did not include Nautilus, except as
indicated.  This seemed reasonable since the timings were fairly
similar for most programs regardless of whether Nautilus was running
at startup or not.

nautilus: 3.210 seconds user, 30.850 seconds system

   5.620 system seconds
      gnome_vfs_module_callback_use_stack_info
         g_hash_table_foreach
            static function
               g_strdup
                  g_malloc

   3.90 system seconds
       nautilus_application_startup
          nautilus_application_open_desktop
             gtk_widget_realize

   3.680 system seconds
      gdk_window_new
         gdk_utf8_to_string_target
            g_convert_with_fallback
               g_convert
                  static function
                     iconv_open
                        iconv_search_alias
                            iconv_open_private
                               dlopen

   3.070 system seconds
      eel_background_draw
         gdk_pixbuf_render_to_drawable
            [...]
               _writev

   2.370 system seconds
      nautilus_directory_get_internal
         static function
            gnome_vfs_uri_new_private
               gnome-vfs_transform_get
                  gnome_vfs_configuration_get_module_path
                     stat64

   1.1 system seconds
      nautilus_directory_monitor_add_internal
         nautilus_monitor_file
            nautilus_volume_monitor_get_volume_for_path
               stat

   1 system second
      gnome_vfs_uri_get_scheme
         open64

   0.8 system seconds
      nautilus_metafile_get
         mkdir

gconfd-2:
  w/  Nautilus: 1.160 seconds user, 8.720 seconds system
  w/o Nautilus: 1.090 seconds user, 6.730 seconds system

    6.73 system seconds with Nautilus and 5.030 seconds without Nautilus.
       gconf_sources_sync_all
          cache_sync
             g_slist_foreach
                static function
                   dir_sync
                      _rename
       
gnome-settings-daemon:
  w/  Nautilus: 1.350 seconds user, 1.200 seconds system
  w/o Nautilus: 1.280 seconds user, 1.320 seconds system

   0.76 user seconds
      gnome_settings_daemon_new
         gnome_settings_background_load
            bg_applier_apply_prefs
               gdk_pixbuf_scale
                  pixops_scale
                     static function

gnome-session:
  w/  Nautilus: 0.680 seconds user, 2.370 seconds system
  w/o Nautilus: 0.740 seconds user, 1.200 seconds system

   0.31 system seconds
      pango_map_get_engine
         g_module_open
            dlopen

gnome-panel:
  w/  Nautilus: 1.360 seconds user, 1.870 seconds system
  w/o Nautilus: 1.350 seconds user, 1.200 seconds system

   0.12 system seconds
      bonobo_activation_activate_shlib_server
         g_module_open
            dlopen

   0.06 system seconds
      gdk_pixbuf_new_from_file
         g_module_open
            dlopen

[Note: The following programs had no obvious opportunities for speedup]

metacity: 
  w/  Nautilus: 0.420 seconds user, 1.040 seconds system
  w/o Nautilus: 0.360 seconds user, 0.940 seconds system

gnome-smproxy:
  w/  Nautilus: 0.050 seconds user, 1.050 seconds system
  w/o Nautilus: 0.090 seconds user, 1.050 seconds system

bonobo-activation-server:
  w/  Nautilus: 0.370 seconds user, 0.780 seconds system
  w/o Nautilus: 0.340 seconds user, 0.820 seconds system

esd: 
  w/  Nautilus: did not run with Nautilus
  w/o Nautilus: 0.000 seconds user, 0.240 seconds system

gconf-sanity-check:
  w/  Nautilus: 0.090 seconds user, 0.440 seconds system
  w/o Nautilus: did not run w/o Nautilus




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]