[mythtv-users] XvMC and high CPU usage

Steven Adeff adeffs.mythtv at gmail.com
Wed Mar 22 15:45:32 UTC 2006


On 3/22/06, Tom Lichti <tom at redpepperracing.com> wrote:
> Kevin Kuphal wrote:
> > Relating back to the previous threads about XvMC not reducing CPU usage,
> > could those working with XvMC post some specs.  I recently upgraded the
> > video in my frontend running FC4 to provide HD playback and I'm seeing
> > this issue now but my older, slower RH9 system has flawless XvMC.
> >
> >
> Failure, well, what I would consider failure at least, in that XvMC
> playback uses around 50% CPU, while non-XvMC uses from 40-60% CPU. My setup:
>
> root at htpc:~# uname -a
> Linux htpc 2.6.11.9-chw-2 #1 SMP Sat May 14 12:11:44 CDT 2005 i686 GNU/Linux
>
> root at htpc:~# cat /proc/cpuinfo
> processor       : 0
> vendor_id       : GenuineIntel
> cpu family      : 15
> model           : 4
> model name      : Intel(R) Celeron(R) CPU 2.93GHz
> stepping        : 1
> cpu MHz         : 2934.568
> cache size      : 256 KB
> physical id     : 0
> siblings        : 1
> fdiv_bug        : no
> hlt_bug         : no
> f00f_bug        : no
> coma_bug        : no
> fpu             : yes
> fpu_exception   : yes
> cpuid level     : 5
> wp              : yes
> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni
> monitor ds_cpl cid xtpr
> bogomips        : 5783.55
>
> AGP 6200 based video card:
> root at htpc:~# lspci -v
> 0000:01:00.0 VGA compatible controller: nVidia Corporation: Unknown
> device 0221 (rev a1) (prog-if 00 [VGA])
>         Flags: bus master, 66MHz, medium devsel, latency 248, IRQ 16
>         Memory at e4000000 (32-bit, non-prefetchable) [size=16M]
>         Memory at d0000000 (32-bit, prefetchable) [size=256M]
>         Memory at e5000000 (32-bit, non-prefetchable) [size=16M]
>         Capabilities: [60] Power Management version 2
>         Capabilities: [44] AGP version 3.0
>
>
> root at htpc:~# mythbackend --version
> Library API version: 0.19.20060226-1
> Source code version: 9406M
> Options compiled in:
>  linux debug using_v4l using_oss using_alsa using_ivtv using_lirc
> using_x11 using_xv using_xrandr using_xvmc using_opengl_vsync
> using_frontend using_backend
>
> XFree86 Version 4.3.0.1 (Debian 4.3.0.dfsg.1-10.1unichrome30.1
> 20050205195924 glaweh@)
> Release Date: 15 August 2003
> X Protocol Version 11, Revision 0, Release 6.6
> Build Operating System: Linux 2.6.10-xenU i686 [ELF]
> Build Date: 05 February 2005
>
> This version of XFree86 has been extensively modified by the Debian
> Project, and is not supported by the XFree86 Project, Inc., in any
> way.  Bugs should be reported to the Debian Bug Tracking System; see
> <URL: http://www.debian.org/Bugs/Reporting >.
>
> (II) LoadModule: "nvidia"
> (II) Loading /usr/X11R6/lib/modules/drivers/nvidia_drv.o
> (II) Module nvidia: vendor="NVIDIA Corporation"
>         compiled for 4.0.2, module version = 1.0.7676
>         Module class: XFree86 Video Driver
>
> root at htpc:/var/log# ldd /usr/local/bin/mythfrontend
>         libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb6e85000)
>         libXv.so.1 => /usr/X11R6/lib/libXv.so.1 (0xb6d29000)
>         libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0xb6d25000)
>         libXvMC.so.1 => /usr/X11R6/lib/libXvMC.so.1 (0xb6d21000)
>         libqt-mt.so.3 => /usr/lib/libqt-mt.so.3 (0xb6636000)
>         libGLU.so.1 => /usr/X11R6/lib/libGLU.so.1 (0xb65bb000)
>         libGL.so.1 => /usr/lib/libGL.so.1 (0xb653c000)
>         libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0xb6526000)
>         libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0xb6518000)
>         libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0xb6450000)
>         libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb61f7000)
>         libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0xb6161000)
>         libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb6133000)
>         libXft.so.2 => /usr/lib/libXft.so.2 (0xb6121000)
>         libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0xb6117000)
>         libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0xb6100000)
>         libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0xb5997000)
>         libnvidia-tls.so.1 => /usr/lib/tls/libnvidia-tls.so.1 (0xb5995000)
>
> root at htpc:/var/log# ls -l /usr/X11R6/lib/libXvMCNVIDIA.so.1.0.7676
> -rwxr-xr-x  1 root root 170856 Mar  8 21:57
> /usr/X11R6/lib/libXvMCNVIDIA.so.1.0.7676
>
> Strange, as my setup looks similar to your working setup, in that mine
> is not linked to any xvmc libraries.
>
> Tom

I just ran "ldd /usr/local/bin/mythfrontend"
and got

ldd /usr/local/bin/mythfrontend
        libmythtv-0.19.so.0 => /usr/local/lib/libmythtv-0.19.so.0
(0x00002aaaaabc3000)
        libmythavformat-0.19.so.0 =>
/usr/local/lib/libmythavformat-0.19.so.0 (0x00002aaaaba3d000)
        libmythavutil-0.19.so.0 =>
/usr/local/lib/libmythavutil-0.19.so.0 (0x00002aaaabbc7000)
        libmythavcodec-0.19.so.0 =>
/usr/local/lib/libmythavcodec-0.19.so.0 (0x00002aaaabcca000)
        libmyth-0.19.so.0 => /usr/local/lib/libmyth-0.19.so.0
(0x00002aaaac08c000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00002aaaac53a000)
        libmp3lame.so.0 => /usr/lib/libmp3lame.so.0 (0x00002aaaac6b4000)
        libasound.so.2 => /usr/lib/libasound.so.2 (0x00002aaaac858000)
        libdvdnav.so.4 => /usr/lib/libdvdnav.so.4 (0x00002aaaaca2e000)
        libXinerama.so.1 => /usr/X11R6/lib64/libXinerama.so.1
(0x00002aaaacb53000)
        libXv.so.1 => /usr/X11R6/lib64/libXv.so.1 (0x00002aaaacc55000)
        libXxf86vm.so.1 => /usr/X11R6/lib64/libXxf86vm.so.1 (0x00002aaaacd5b000)
        libXrandr.so.2 => /usr/X11R6/lib64/libXrandr.so.2 (0x00002aaaace60000)
        libXvMC.so.1 => /usr/X11R6/lib64/libXvMC.so.1 (0x00002aaaacf63000)
        libqt-mt.so.3 => /usr/lib/libqt-mt.so.3 (0x00002aaaad067000)
        libXext.so.6 => /usr/X11R6/lib64/libXext.so.6 (0x00002aaaadb53000)
        libX11.so.6 => /usr/X11R6/lib64/libX11.so.6 (0x00002aaaadc64000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00002aaaade45000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00002aaaadf5a000)
        libm.so.6 => /lib/libm.so.6 (0x00002aaaae157000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaae2de000)
        libc.so.6 => /lib/libc.so.6 (0x00002aaaae3eb000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00002aaaae629000)
        libdl.so.2 => /lib/libdl.so.2 (0x00002aaaae740000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00002aaaae843000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00002aaaae94d000)
        libaudio.so.2 => /usr/lib/libaudio.so.2 (0x00002aaaaea8c000)
        libXt.so.6 => /usr/X11R6/lib64/libXt.so.6 (0x00002aaaaeba4000)
        libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00002aaaaed06000)
        libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00002aaaaee28000)
        libXi.so.6 => /usr/X11R6/lib64/libXi.so.6 (0x00002aaaaef4c000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00002aaaaf055000)
        libXft.so.2 => /usr/lib/libXft.so.2 (0x00002aaaaf15f000)
        libSM.so.6 => /usr/X11R6/lib64/libSM.so.6 (0x00002aaaaf273000)
        libICE.so.6 => /usr/X11R6/lib64/libICE.so.6 (0x00002aaaaf37e000)
        /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00002aaaaf499000)

when I look at   /usr/X11R6/lib64/ it shows  libXvMC.so.1 and the
symlinking of it as being seperate from libXvMCNVIDIA.so

Which may be why my Myth doesn't show any noticeable improvement when
using XvMC. So the question is, can I remove the  libxvmc1 and
libxvmc-dev packages from my debian install and still compile with
libXvMCNVIDIA? I don't think I can because if I remove libxvmc-dev
make does not seem capable of finding the appropriate files needed to
build with xvmc, or do I need to tell configure where the NVIDIA
headers,etc are?

--
Steve


More information about the mythtv-users mailing list