GObject is slow
- From: Alexander Larsson <alla lysator liu se>
- To: gtk-devel-list gnome org
- Cc: timj gtk org
- Subject: GObject is slow
- Date: Mon, 20 Nov 2000 09:26:33 +0100 (CET)
I've been doing some profiling of GtkFB to find out bottlenecks in the
rasterization code. But looking at the profiles show that rasterization
isn't even at the top. Instead i see a lot of functions from the GObject
type checking code.
Here is the top of a profile on a testgtk run using GtkFB @ 1024x768
16bit. glib+pango+gtk+ is compiled with -O2 -g and -DG_DISABLE_ASSERT
-DG_DISABLE_CHECKS -DGTK_NO_CHECK_CASTS.
I basically opened a few test in testgtk, scrolled some scrollbars,
clicked some buttons etc. I think i use the following tests: button,
checkbutton, clist, color selector, ctree, cursor, dialog, filesel, gamma
curve, image notebook and styles.
The last two columns are calculated by me and is % time except
g_main_poll.
Function Name calls func% func(ms) f+c% f+c(ms) f-p% f+c-p%
g_main_poll 23786 61.970 77463 62.035 77545 n/a
gdk_fb_draw_drawable_memmove 32678 6.194 7742 6.194 7742 16.3% 16.3%
g_type_check_flags 2773957 2.256 2819 4.912 6140 5.9 % 12.9%
g_type_check_instance_cast 2444663 2.227 2783 8.769 10961 5.9 % 23.1%
LOOKUP_TYPE_NODE 9563625 2.069 2586 2.069 2586 5.4 % 5.5 %
gdk_fb_draw_drawable_generic 43009 1.752 2189 3.252 4065 4.6 % 8.6 %
g_type_conforms_to 2706083 1.700 2125 2.467 3083 4.5 % 6.5 %
type_node_fundamental_info 2736730 1.440 1800 2.017 2520 3.8 % 5.3 %
call_gmon_start 2048582 1.404 1755 83.075 103845 3.7 %
g_free 1686235 0.944 1179 0.944 1179 2.5 %
gdk_fb_drawable_set_pixel_16 2015218 0.694 867 0.694 867 1.8 %
gdk_region_destroy 623334 0.610 762 1.260 1574 1.6 %
pango_fb_font_get_glyph_info 335858 0.599 748 3.685 4606 1.6 % 9.7 %
gdk_fb_drawable_get_pixel 2124696 0.596 744 0.596 744 1.6 %
pango_fb_font_set_size 629307 0.582 726 2.792 3489 1.5 % 7.3 %
miRegionOp 237907 0.577 720 1.159 1449 1.5 %
gdk_region_rectangle 583661 0.564 704 1.261 1576 1.5 %
gdk_fb_clip_region 79361 0.555 693 3.017 3771 1.5 %
pango_fb_font_get_glyph_extents 287358 0.498 622 6.015 7518 1.3 % 15.8%
list_fonts 4 0.459 574 0.461 575 1.2 %
gdk_fb_draw_drawable_3 95739 0.423 528 11.724 14655 1.1 % 30.8%
gdk_fb_fill_span_simple_16 280496 0.385 481 0.385 481 1.0 %
g_main_iterate 23786 0.363 453 98.822 123529 1.0 %
gdk_fb_fill_spans 36867 0.348 434 4.469 5585 0.9 % 11.8%
pango_fb_font_get_type 1496613 0.323 403 0.323 404
g_hash_table_lookup_node 427700 0.306 383 0.422 527
gdk_fb_drawable_get_color_16 460285 0.291 363 0.291 363
find_char 238433 0.274 342 1.131 1414
g_type_instance_conforms_to 367544 0.270 337 0.975 1218
gdk_region_intersect 272430 0.251 313 1.043 1304
g_hash_table_lookup 424545 0.209 261 0.626 783
gtk_signal_emitv 37326 0.209 260 80.773 100967
paint_ring 16 0.165 206 0.410 512
/ Alex
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]