[gst-devel] bus problems

Stefan Kost ensonic at hora-obscura.de
Wed Aug 31 16:29:05 CEST 2005


another follow up. when using the gtk-version of my app, it jumps to
100% CPU when running (on a AMD64 3000+). The commandline version of it
uses abou 30% CPU. I'Ve done some oprofiling. It looks like as if the
bus is consuming lots of cycles. On the other hand it doe not account
for the imense cpu usage.

GTK-version:

# opreport -l
samples  %        app name                 symbol name
51247    59.6020  vmlinux                  tty_ldisc_deref
4854      5.6454  libglib-2.0.so.0.600.5   (no symbols)
2069      2.4063  libpthread-0.10.so       __pthread_alt_lock
2064      2.4005  libpthread-0.10.so       __pthread_alt_unlock
1988      2.3121  vmlinux                  get_offset_pmtmr
1952      2.2702  libc-2.3.5.so            (no symbols)
1360      1.5817  libgobject-2.0.so.0.600.5 (no symbols)
1078      1.2538  libgdk-x11-2.0.so.0.600.10 (no symbols)
1033      1.2014  libpthread-0.10.so       pthread_mutex_lock
932       1.0839  libpthread-0.10.so       pthread_mutex_unlock
854       0.9932  libfb.so
fbCompositeSolidMask_nx8888x0565C
531       0.6176  vmlinux                  syscall_trace_entry
501       0.5827  libgstreamer-0.9.so.6.0.0 gst_debug_log_valist
478       0.5559  libfontconfig.so.1.0.4   (no symbols)
477       0.5548  sis_drv.so               SiSSync
441       0.5129  libgstreamer-0.9.so.6.0.0 gst_bus_have_pending
440       0.5117  ld-2.3.5.so              do_lookup_x

# opreport -l /usr/lib/libgstreamer-0.9.so;
CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
samples  %        symbol name
501      13.3493  gst_debug_log_valist
441      11.7506  gst_bus_have_pending
409      10.8979  gst_bus_peek
384      10.2318  gst_bus_source_dispatch
302       8.0469  gst_debug_log
294       7.8337  gst_debug_log_default
247       6.5814  __i686.get_pc_thunk.bx
183       4.8761  gst_debug_category_get_threshold
178       4.7429  gst_message_get_type
156       4.1567  gst_mini_object_unref
135       3.5971  gst_bus_get_type
128       3.4106  .plt
128       3.4106  gst_mini_object_ref
107       2.8511  gst_bus_source_prepare
92        2.4514  gst_mini_object_get_type
33        0.8793  gst_bus_source_check

Cmdline-Version:
# opreport -l
58612    56.6431  vmlinux                  tty_ldisc_deref
3455      3.3389  libglib-2.0.so.0.600.5   (no symbols)
3334      3.2220  libc-2.3.5.so            (no symbols)
3030      2.9282  libgdk-x11-2.0.so.0.600.10 (no symbols)
2706      2.6151  libgobject-2.0.so.0.600.5 (no symbols)
1939      1.8739  libfb.so                 fbBlt
1854      1.7917  libvte.so.4.4.0          (no symbols)
1601      1.5472  libfb.so
fbCompositeSolidMask_nx8888x0565C
855       0.8263  sis_drv.so               SiSSync
7

# opreport -l /usr/lib/libgstreamer-0.9.so
CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
samples  %        symbol name
27       10.5469  gst_debug_log
24        9.3750  gst_debug_category_get_threshold
22        8.5938  gst_debug_log_valist
15        5.8594  __i686.get_pc_thunk.bx
8         3.1250  gst_bin_iterate_elements
8         3.1250  gst_debug_log_default
8         3.1250  gst_structure_free
7         2.7344  gst_bin_query
7         2.7344  gst_pad_query
6         2.3438  gst_iterator_next
4         1.5625  .plt
4         1.5625  filter_next
4         1.5625  gst_bin_iterate_sinks
4         1.5625  gst_iterator_filter
4         1.5625  gst_object_ref
4         1.5625  gst_object_unref
4         1.5625  gst_pad_get_internal_links_default
4         1.5625  gst_query_get_structure
4         1.5625  gst_structure_set_valist
3         1.1719  bin_element_is_sink
3         1.1719  gst_element_get_random_pad
3         1.1719  gst_iterator_new
3         1.1719  gst_pad_dispatcher
3         1.1719  gst_query_set_position
3         1.1719  gst_structure_get_type
3         1.1719  gst_structure_get_value

> hi wim,
> 
> what is different regarding the main_loop, if a pipeline is in
> STATE_NULL or not? As soon as the pipeline-state is!=NULL (means READY,
> PAUSE or PLAYING) my gtk-app does no  redraws).
> 
> Stefan
> >hi,
> >
> >I still fight with main_loop problems. I have the bad feeling the my
> >usage of the bugs might be related. Still the bus is a bit a mystery as
> >it is not well documented and has no test suite. Furthermore I get
> >warnings as the one below (after stopping the pipeline). Is this serious?
> >
> >Stefan
> >
> >GStreamer-CRITICAL **: gst_bus_source_dispatch: assertion `message !=
> >NULL' failed
> >aborting...
> >
> >Program received signal SIGABRT, Aborted.
> >[Switching to Thread 1085735200 (LWP 28530)]
> >0xffffe410 in ?? ()
> >(gdb) bt
> >#0  0xffffe410 in ?? ()
> >#1  0xbfffe158 in ?? ()
> >#2  0x00000006 in ?? ()
> >#3  0x00006f72 in ?? ()
> >#4  0x4087c2c1 in raise () from /lib/tls/libc.so.6
> >#5  0x4087db75 in abort () from /lib/tls/libc.so.6
> >#6  0x40801f25 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0
> >#7  0x40801f56 in g_log () from /opt/gnome/lib/libglib-2.0.so.0
> >#8  0x408020ac in g_return_if_fail_warning () from
> >/opt/gnome/lib/libglib-2.0.so.0
> >#9  0x4053595d in gst_bus_source_dispatch (source=0x82e1700,
> >callback=0x404777c0 <bus_handler>, user_data=0x83891c8) at gstbus.c:529
> >#10 0x407f8967 in g_main_context_dispatch () from
> >/opt/gnome/lib/libglib-2.0.so.0
> >#11 0x407face2 in g_main_context_acquire () from
> >/opt/gnome/lib/libglib-2.0.so.0
> >#12 0x407fbcf7 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
> >#13 0x401bbbe3 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
> >#14 0x08055019 in bt_main_window_run (self=0x80f7550) at main-window.c:243
> >#15 0x08052aa5 in bt_edit_application_run_ui (self=0x80b63d8) at
> >edit-application.c:72
> >#16 0x08053857 in bt_edit_application_load_and_run (self=0x80b63d8,
> >input_file_name=0x80a9960 "../share/buzztard/songs/buzz4.xml") at
> >edit-application.c:330
> >#17 0x08052262 in main (argc=1, argv=0xbfffea64) at bt-edit.c:81
> >
> >
> >
> >-------------------------------------------------------
> >SF.Net email is Sponsored by the Better Software Conference & EXPO
> >September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
> >Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
> >Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
> >_______________________________________________
> >gstreamer-devel mailing list
> >gstreamer-devel at lists.sourceforge.net
> >https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >  
> 





More information about the gstreamer-devel mailing list