[vdr] Vdr or driver performance dropout

Kartsa kari at kniivila.com
Sat Mar 3 21:12:21 CET 2007


Kartsa kirjoitti:
> Kartsa kirjoitti:
>> Marko Mäkelä kirjoitti:
>>>
>>> In any case, you could profile the old and new version of vdr and 
>>> see if
>>> there is any obvious difference.
>>>   
>> I'll have to take that into consideration. I'll have to download the 
>> old version and all that :)
>>
> I was unsuccesfull with setting up an environment where I could run 
> vdr-1.3.22. It just exits with exit code 2 with no other explanation 
> in. It tells me to turn off NPTL by setting  LD_ASSUME_KERNEL=2.4.1 
> and then  all I get is  "error while loading shared libraries" to 
> about any command I try. And then "cannot open shared object file: No 
> such file or directory" and depending on the command the library file 
> varies.
> So no comparison :(
>
This thread changed to talking about different issues like ati and xine 
which are actually far from the original meaning of my post. I still 
have this performance issue. I could not make the comparison with 
earlier vdr version but I did do some profiling.

I did a seven minute session where I had 5 test recordings which started 
one minute apart and ended at the same time. After each recording had 
started I tested the responce of remote by just pussing menu button. 
After three recordings there began to be delay in menu appearance and 
after fourth recording the menu came up in pieces and after fifth 
recording there were no menu or if it ever did appear after several menu 
presses it was incomplete. This can be seen in the log (timeout waiting 
in LoadBitmap). Playback of a recording started to have small problems 
after third recording started and with four and five simultaneous 
recordings you really do not want to wath a movie like that.

This is the log during the test:

Mar  3 21:34:20 localhost kernel: oprofile: using NMI interrupt.
Mar  3 21:35:00 localhost vdr: [2389] timer 1 (1 2135-2142 'TestRec1') start
Mar  3 21:35:00 localhost vdr: [2389] record /srv/vdr/TestRec1/2007-03-03.21.35.50.99.rec
Mar  3 21:35:19 localhost vdr: [2389] replay /srv/vdr/@Seabiscuit_-_amerikkalainen_legenda/2007-03-03.21.22.50.99.rec
Mar  3 21:36:01 localhost vdr: [2389] timer 2 (2 2136-2142 'TestRec2') start
Mar  3 21:36:01 localhost vdr: [2389] record /srv/vdr/TestRec2/2007-03-03.21.36.50.99.rec
Mar  3 21:37:00 localhost vdr: [2389] timer 3 (7 2137-2142 'TestRec3') start
Mar  3 21:37:00 localhost vdr: [2389] record /srv/vdr/TestRec3/2007-03-03.21.37.50.99.rec
Mar  3 21:38:00 localhost vdr: [2389] timer 4 (8 2138-2142 'TestRec4') start
Mar  3 21:38:00 localhost vdr: [2389] record /srv/vdr/TestRec4/2007-03-03.21.38.50.99.rec
Mar  3 21:39:00 localhost vdr: [2389] timer 5 (9 2139-2142 'TestRec5') start
Mar  3 21:39:00 localhost vdr: [2389] record /srv/vdr/TestRec5/2007-03-03.21.39.50.99.rec
Mar  3 21:39:21 localhost kernel: dvb-ttpci: warning: timeout waiting in LoadBitmap: 0, 1
Mar  3 21:40:19 localhost kernel: dvb-ttpci: warning: timeout waiting in LoadBitmap: 0, 1
Mar  3 21:40:59 localhost last message repeated 2 times
Mar  3 21:42:03 localhost vdr: [2389] timer 1 (1 2135-2142 'TestRec1') stop
Mar  3 21:42:03 localhost vdr: [2389] timer 2 (2 2136-2142 'TestRec2') stop
Mar  3 21:42:03 localhost vdr: [2389] timer 3 (7 2137-2142 'TestRec3') stop
Mar  3 21:42:03 localhost vdr: [2389] timer 4 (8 2138-2142 'TestRec4') stop
Mar  3 21:42:04 localhost vdr: [2389] timer 5 (9 2139-2142 'TestRec5') stop
Mar  3 21:43:04 localhost vdr: [2389] deleting timer 1 (1 2135-2142 'TestRec1')
Mar  3 21:43:04 localhost vdr: [2389] deleting timer 1 (2 2136-2142 'TestRec2')
Mar  3 21:43:04 localhost vdr: [2389] deleting timer 1 (7 2137-2142 'TestRec3')
Mar  3 21:43:04 localhost vdr: [2389] deleting timer 1 (8 2138-2142 'TestRec4')
Mar  3 21:43:04 localhost vdr: [2389] deleting timer 1 (9 2139-2142 'TestRec5')


During the test CPU idle was over 90% all the time. I used oprofiler 
during the test and these are the results:

CPU: P4 / Xeon, speed 3192.31 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) with a unit mask of 0x01 (mandatory) count 100000
GLOBAL_POWER_E...|
  samples|      %|
------------------
   145068 47.4769 vdr
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	   137420 94.7280 vdr
	     7648  5.2720 anon (tgid:2389 range:0xfa6000-0xfa7000)
    99854 32.6796 libc-2.5.so
    35565 11.6395 libpthread-2.5.so
     9336  3.0554 no-vmlinux
     2888  0.9452 libcrypto.so.0.9.8b
     2430  0.7953 oprofiled
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	     2419 99.5473 oprofiled
	       11  0.4527 anon (tgid:3372 range:0xfb9000-0xfba000)
     2269  0.7426 libqt-mt.so.3.3.7
     1544  0.5053 sshd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	     1418 91.8394 sshd
	      108  6.9948 anon (tgid:3027 range:0x2a9000-0x2aa000)
	       14  0.9067 anon (tgid:3080 range:0x4a6000-0x4a7000)
	        4  0.2591 anon (tgid:3385 range:0xac1000-0xac2000)
     1238  0.4052 libstdc++.so.6.0.8
      860  0.2815 top
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	      488 56.7442 top
	      372 43.2558 anon (tgid:3107 range:0x824000-0x825000)
      704  0.2304 libX11.so.6.2.0
      500  0.1636 libXft.so.2.1.2
      471  0.1541 bash
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	      462 98.0892 bash
	        5  1.0616 anon (tgid:3387 range:0x948000-0x949000)
	        4  0.8493 anon (tgid:3430 range:0xe91000-0xe92000)
      442  0.1447 libncurses.so.5.5
      401  0.1312 less
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	      388 96.7581 less
	       13  3.2419 anon (tgid:3412 range:0x13c000-0x13d000)
      362  0.1185 libproc-3.2.7.so
      237  0.0776 ld-2.5.so
      172  0.0563 ntpd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	      161 93.6047 ntpd
	       11  6.3953 anon (tgid:2431 range:0xec3000-0xec4000)
      152  0.0497 sendmail.sendmail
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	      144 94.7368 sendmail.sendmail
	        8  5.2632 anon (tgid:2451 range:0xd2d000-0xd2e000)
      134  0.0439 lircd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       89 66.4179 lircd
	       45 33.5821 anon (tgid:2358 range:0xbc3000-0xbc4000)
      105  0.0344 oprof_start
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       53 50.4762 anon (tgid:3116 range:0x41a000-0x41b000)
	       52 49.5238 oprof_start
      104  0.0340 httpd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       96 92.3077 httpd
	        8  7.6923 anon (tgid:2483 range:0x2f8000-0x2f9000)
       76  0.0249 libapr-1.so.0.2.7
       63  0.0206 hald
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       61 96.8254 hald
	        2  3.1746 anon (tgid:2610 range:0xdef000-0xdf0000)
       50  0.0164 libtermcap.so.2.0.8
       49  0.0160 libglib-2.0.so.0.1200.9
       37  0.0121 automount
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       23 62.1622 automount
	       14 37.8378 anon (tgid:2337 range:0xacc000-0xacd000)
       36  0.0118 libgdk_pixbuf-2.0.so.0.1000.8
       35  0.0115 init
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       32 91.4286 init
	        3  8.5714 anon (tgid:1 range:0x807000-0x808000)
       31  0.0101 libgobject-2.0.so.0.1200.9
       27  0.0088 libpango-1.0.so.0.1400.10
       27  0.0088 bluecurve.so
       24  0.0079 hald-addon-storage
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       14 58.3333 anon (tgid:2635 range:0x2f3000-0x2f4000)
	       10 41.6667 hald-addon-storage
       23  0.0075 grep
       23  0.0075 syslogd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       22 95.6522 syslogd
	        1  4.3478 anon (tgid:2136 range:0x260000-0x261000)
       22  0.0072 libevent-1.1a.so.1.0.2
       22  0.0072 libpangoft2-1.0.so.0.1400.10
       20  0.0065 gawk
       16  0.0052 Xorg
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	       15 93.7500 Xorg
	        1  6.2500 anon (tgid:2816 range:0x890000-0x891000)
       16  0.0052 libgdk-x11-2.0.so.0.1000.8
       14  0.0046 libgnomecanvas-2.so.0.1400.0
       12  0.0039 pam_unix.so
       12  0.0039 libart_lgpl_2.so.2.3.17
        8  0.0026 libpam.so.0.81.5
        7  0.0023 gdmgreeter
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	        6 85.7143 gdmgreeter
	        1 14.2857 anon (tgid:2862 range:0x368000-0x369000)
        6  0.0020 libdbus-1.so.3.2.0
        5  0.0016 libfb.so
        5  0.0016 rpc.idmapd
	GLOBAL_POWER_E...|
	  samples|      %|
	------------------
	        5 100.000 anon (tgid:2226 range:0xc4d000-0xc4e000)
        4  0.0013 libsepol.so.1
        4  0.0013 ophelp
        4  0.0013 libgtk-x11-2.0.so.0.1000.8
        4  0.0013 i810_drv.so
        3 9.8e-04 libdl-2.5.so
        3 9.8e-04 libm-2.5.so
        3 9.8e-04 libfreetype.so.6.3.10
        3 9.8e-04 libncursesw.so.5.5
        2 6.5e-04 ls
        2 6.5e-04 libselinux.so.1
        2 6.5e-04 libdri.so
        2 6.5e-04 crond
        1 3.3e-04 cat
        1 3.3e-04 libaudit.so.0.0.0
        1 3.3e-04 libnss_files-2.5.so
        1 3.3e-04 libresolv-2.5.so
        1 3.3e-04 pam_succeed_if.so
        1 3.3e-04 klogd
        1 3.3e-04 dircolors
        1 3.3e-04 expr
        1 3.3e-04 id
        1 3.3e-04 which
        1 3.3e-04 xauth
        1 3.3e-04 libXext.so.6.4.0
        1 3.3e-04 libXfont.so.1.4.1
        1 3.3e-04 libkrb5support.so.0.1
        1 3.3e-04 libpopt.so.0.0.0
        1 3.3e-04 mouse_drv.so
        1 3.3e-04 libxaa.so


I've done the test with three different settings, one with a PIII733MHz, 
one with AMD Sempron 3000+, and one with Intel Celeron D 3,2GHz and the 
results are quite similar. With PIII and AMD I used one dvb-c card (DVB: 
registering new adapter (Technotrend/Hauppauge WinTV DVB-C rev2.X)) and 
with Celeron two dvb-c cards (DVB: registering new adapter 
(TT-Budget/WinTV-NOVA-C  PCI) and DVB: registering new adapter 
(Technotrend/Hauppauge WinTV Nexus-CA rev1.X)). I use the ff cards video 
out.

I had only vdr-1.4.5-2 with no plugins or patches. I also used a 
home-brewed ir receiver with lirc.

And I used the latest firmware.

Can anybody use this data to tell me where the problem lies.

\\Kartsa



More information about the vdr mailing list