Is anyone else seeing performance issues with gtk2 based applications? I'm on SnowLeopard with mostly updated versions of ports (where they actually build).

xchat takes about 10 minutes to display the connections window (gtk- demo has the same issue). Here's a 30-second sample about 4 minutes into the launch (gtk-demo's sample looks the same):

Analysis of sampling xchat (pid 34607) every 1 millisecond
Call graph:
    24107 Thread_1171377   DispatchQueue_1: com.apple.main-thread  (serial)
      24107 start
        24107 main
          24107 gtk_widget_show
            24107 g_signal_emit
              24107 g_signal_emit_valist
                24107 signal_emit_unlocked_R
                  24107 g_closure_invoke
                    24107 gtk_window_show
                      24107 gtk_window_compute_configure_request
                        24107 _gtk_size_group_compute_requisition
                          24107 g_signal_emit_by_name
                            24107 g_signal_emit_valist
                              24107 signal_emit_unlocked_R
                                24107 g_closure_invoke
                                  24107 gtk_window_size_request
                                    24107 _gtk_size_group_compute_requisition
                                      24107 g_signal_emit_by_name
                                        24107 g_signal_emit_valist
                                          24107 signal_emit_unlocked_R
                                            24107 g_closure_invoke
                                              24107 gtk_box_size_request
                                                24107 
_gtk_size_group_compute_requisition
                                                  24107 g_signal_emit_by_name
                                                    24107 g_signal_emit_valist
                                                      24107 
signal_emit_unlocked_R
                                                        24107 g_closure_invoke
                                                          24107 
gtk_box_size_request
                                                            24107 
_gtk_size_group_compute_requisition
                                                              24107 
g_signal_emit_by_name
                                                                24107 
g_signal_emit_valist
                                                                  24107 
signal_emit_unlocked_R
                                                                    24107 
g_closure_invoke
                                                                      24107 
gtk_table_size_request
                                                                        24107 
_gtk_size_group_compute_requisition
                                                                          24107 
g_signal_emit_by_name
                                                                            
24107 g_signal_emit_valist
                                                                              
24107 signal_emit_unlocked_R
                                                                                
24107 g_closure_invoke
                                                                                
  24107 gtk_scrolled_window_size_request
                                                                                
    24107 _gtk_size_group_compute_requisition
                                                                                
      24107 g_signal_emit_by_name
                                                                                
        24107 g_signal_emit_valist
                                                                                
          24107 signal_emit_unlocked_R
                                                                                
            24107 g_closure_invoke
                                                                                
              24107 gtk_tree_view_size_request
                                                                                
                24107 do_validate_rows
                                                                                
                  24107 validate_row
                                                                                
                    24107 gtk_tree_view_column_cell_get_size
                                                                                
                      24107 gtk_cell_renderer_text_get_size
                                                                                
                        24107 get_size
                                                                                
                          24107 pango_layout_get_pixel_extents
                                                                                
                            24107 pango_layout_get_extents_internal
                                                                                
                              24107 pango_layout_check_lines
                                                                                
                                24107 process_item
                                                                                
                                  24107 shape_run
                                                                                
                                    24107 pango_shape
                                                                                
                                      24107 basic_engine_shape
                                                                                
                                        12145 _pango_ot_info_position
                                                                                
                                          12143 hb_ot_layout_position_lookup
                                                                                
                                            6704 hb_ot_layout_position_lookup
                                                                                
                                            5438 
PosLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, unsigned int, 
unsigned int, unsigned int, unsigned int, unsigned int) const
                                                                                
                                            1 _hb_ot_layout_check_glyph_property
                                                                                
                                          1 _pango_ot_info_position
                                                                                
                                          1 hb_font_destroy
                                                                                
                                            1 g_atomic_int_exchange_and_add
                                                                                
                                        11961 _pango_ot_info_substitute
                                                                                
                                          11961 hb_ot_layout_substitute_lookup
                                                                                
                                            6768 hb_ot_layout_substitute_lookup
                                                                                
                                            5191 
SubstLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, unsigned 
int, unsigned int, unsigned int, unsigned int, unsigned int) const
                                                                                
                                            1 _hb_buffer_clear_output
                                                                                
                                            1 _hb_ot_layout_check_glyph_property
                                                                                
                                        1 pango_ot_buffer_output
                                                                                
                                          1 
_pango_cairo_font_private_get_glyph_extents
                                                                                
                                            1 cairo_scaled_font_glyph_extents
                                                                                
                                              1 _cairo_scaled_glyph_lookup
                                                                                
                                                1 _cairo_ft_scaled_glyph_init

Total number in stack (recursive counted multiple, when >=5):
        7       g_closure_invoke
        7       g_signal_emit_valist
        7       signal_emit_unlocked_R
        6       _gtk_size_group_compute_requisition
        6       g_signal_emit_by_name

Sort by top of stack, same collapsed (when >= 5):
        hb_ot_layout_substitute_lookup        6768
        hb_ot_layout_position_lookup        6704
        PosLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, 
unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const     
   5438
        SubstLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, 
unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const     
   5191


It's fairly deep, and here are the big tickets:

Sort by top of stack, same collapsed (when >= 5):
        hb_ot_layout_substitute_lookup        6768
        hb_ot_layout_position_lookup        6704
PosLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const 5438 SubstLookupSubTable::apply(_hb_ot_layout_context_t*, _hb_buffer_t*, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) const 5191

Is anyone else experiencing this problem?



Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to