nV News Forums


nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   XORG using 100% CPU Using VDPAU on Quadro FX 1800 (http://www.nvnews.net/vbulletin/showthread.php?t=152483)

EricE 06-28-10 02:49 PM

XORG using 100% CPU Using VDPAU on Quadro FX 1800
3 Attachment(s)
I am currently developing an application to decode and render multiple h264 video streams. Most of the time everything runs without any problems bu every so often, about once every 20 or so runs, the Xorg's cpu usage jumps to 100%, the display flickers and freezes. I am able to ssh from another computer and run gdb. The problem always occurs during the creation of a VdpDecoder and get following backtrace:

#0 0x0000003aac80a170 in pthread_rwlock_wrlock () from /lib64/libpthread.so.0
#1 0x00002aab08f66bc1 in ?? () from /usr/lib64/libvdpau_nvidia.so
#2 0x00002aab08f6d883 in ?? () from /usr/lib64/libvdpau_nvidia.so
#3 0x00002aab092f8668 in ?? () from /usr/lib64/libvdpau_trace.so
#4 0x00002aaafe833b38 in VDPAUManagerInternal:: DecoderCreate (this=0x5a87dbe0, profile=8, width=1920, height=1080, max_references=1, decoder=0x5af413dc) at isisvd_VDPAUManagerInternal.cc:336

The function call on line 4 is simply wrapper for VdpDecoderCreate. Usually after a few minutes I get a bunch of VDPAU Debug errors printing to the screen (I've attached this print out) and an attempt to recover through a preemption callback. The program remains stuck in the VdpDecoderCreate and I'm forced to kill the program through a kill -9. I see this on multiple version of the driver (I've tried it on 195.36.15, 195.36.24, and 256.35. I've attached the VDPAU trace output, the output from resulting from activating VDPAU_NVIDIA_DEBUG, and the Nvidia bug report.

Eric Engelson

EricE 07-01-10 03:15 PM

Re: XORG using 100% CPU Using VDPAU on Quadro FX 1800
2 Attachment(s)
I'm still having this issue. I've tried running in a different machine with a fresh Linux install. The problem seems worse on this machine as it occurs more frequently. With VDPAU_NVIDIA_DEBUG enabled I also get an error when the code does succeed:

VDPAU nvidia: Version: NVIDIA VDPAU Driver Shared Library 195.36.24 Thu Apr 22 19:52:55 PDT 2010
VDPAU nvidia: Error detected 2 195
VDPAU nvidia: Backtrace:
--: /usr/lib64/libvdpau_nvidia.so [0x7fa3d81fb000] DSO load base
00: /usr/lib64/libvdpau_nvidia.so [0x7fa3d8212696]
01: /usr/lib64/libvdpau_nvidia.so [0x7fa3d8212001]
02: /usr/lib64/libvdpau_nvidia.so [0x7fa3d8205e9a]

I've attached the nvidia bug report and the nvidia debug output.

I've been able to get around the issue by forcing a delay between the decoder creation. I force a second decoder to be created only after 5 seconds have elapsed after creating the first and I see no issues.

Eric Engelson

EricE 07-01-10 03:18 PM

Re: XORG using 100% CPU Using VDPAU on Quadro FX 1800
2 Attachment(s)
I also seem to be having a related issue where after several attempts at running, the driver reaches a state where any VDPAU application causes Xorg to go to 100%. This happens every time I run any vdpau application until I restart the comptuer, including mplayer. I've attached the debug log and nvidia bug report for that case.

Eric Engelson

Stephen Warren 07-07-10 12:01 PM

Re: XORG using 100% CPU Using VDPAU on Quadro FX 1800
EricE, Sorry for the slow response; I've been on vacation.

Are you able to reproduce this problem in a way we could reproduce at NVIDIA; e.g. by running multiple MPlayer instances, or perhaps can you create a simple test program that reproduces the issue for you?

The "2 195" error is benign; it simply means that the overlay-based presentation queue could not be created, and the blit-based presentation queue is being used instead. The driver README describes the conditions that cause this to occur.

All times are GMT -5. The time now is 11:54 AM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.