PDA

View Full Version : NVIDIA VDPAU Benchmarks


phoronix
11-14-2008, 09:00 PM
Phoronix: NVIDIA VDPAU Benchmarks

Earlier today we shared that NVIDIA is bringing PureVideo features to Linux through a major update in their binary display driver. The NVIDIA 180.06 driver adds VDPAU support on Linux, Solaris, and FreeBSD operating systems, with VDPAU being a set of APIs designed by NVIDIA to accelerate video decoding, provide post-processing capabilities, timstamp-based presentation of video frames, and compositing of sub-picture elements. We have now had the time to benchmark the Video Decode and Presentation API for Unix and have seen the benefits of PureVideo features finally arriving on alternative platforms.

http://www.phoronix.com/vr.php?view=13109

korpenkraxar
11-14-2008, 09:37 PM
Bye bye plans for expensive HTPC box with cooling and noise problems! Hello plans for silent $35 video card!

cruiseoveride
11-15-2008, 12:23 AM
Nvidia's driver just keeps getting better and better, great! i should have gone with the 9800gx2 instead of the 4870

jeffro-tull
11-15-2008, 01:20 AM
holy crap! from the looks of things, as soon as the video got loaded the CPU just sat there and twiddled its thumbs!

Seriously. AMD. I want to love you. I really do. But now you're back to playing catch up.

korpenkraxar
11-15-2008, 02:58 AM
holy crap! from the looks of things, as soon as the video got loaded the CPU just sat there and twiddled its thumbs!


Yes. It would be great if Phoronix tried a few different cards as well to give us a feeling about how powerful the GPU needs to be. How does the much simpler integrated GeForce 8200 compare?

curaga
11-15-2008, 03:11 AM
What I want to know that is this API usable without the blob, with either nv or vesa?

Dragoran
11-15-2008, 03:16 AM
What I want to know that is this API usable without the blob, with either nv or vesa?

no... you need the binary driver for this.

curaga
11-15-2008, 03:31 AM
So what the hell is the benefit? Nada. The fact it's opensource means nothing when the driver side could be damn complicated, so good luck Intel and others trying to use this as the standard.

Yfrwlf
11-15-2008, 04:13 AM
So what the hell is the benefit? Nada. The fact it's opensource means nothing when the driver side could be damn complicated, so good luck Intel and others trying to use this as the standard.

Wait, what? Open standards are indeed nice, but at least competition will still occur, but not as well, which is the point of closing things up (which then sometimes backfires). Instead of programs adopting just XV and XVMC and such, now they have to add on this new one that only Nvidia cards are able to utilize because the API is closed? If so that does indeed suck for developers. Just as I was starting to feel comfy that XVMC was going to be the next big and powerful standard...

But, at least something is there and exists, so that's good at least. :)

I was about to replace my 8600 in our HTPC with an AMD card of some sort because of this issue of horrible lag while playing really intensive/big movies, but now I may not have to, tho still probably will since AMD is more open-sourcey. =D

deanjo
11-15-2008, 05:07 AM
And the hammer falls once again, bitch all you want about not being a FOSS solution, end result once again is Nvidia delivers while the rest show roadmaps. In the end, if you want working solutions look to nvidia.

hdas
11-15-2008, 06:33 AM
A new driver always gets me excited.

My little nice experience. I have a Dell Vostro 1400 notebook with Core 2 Duo T5270 @ 1.4GHz and NVidia 8400M GS. Running Ubuntu 8.10 with nvidia 180.06. Installed mplayer-vdpau using the source package as announced in nvnews linux forums (just downloaded mplayer-vdpau-3076399.tar.bz2 and ran the script checkout-patch-build.sh as said in readme). Running a 1080i hdtv video with normal mplayer (from medibuntu) with vo=xv, cpu usage is 50-55%, with mplayer-vdpau and *only* vo=vdpau (software accel) is 60% and looks blocky, and with vo=vdpau, vc=ffmpeg12vdpau is 35-40%. So its quite a big drop in cpu usage :). Quality seems to be a little better with xv.

Great start, god speed :D.

bash
11-15-2008, 07:39 AM
I still wish the three main vendors of graphic cards, AMD, Nvidia and Intel would sit down together and work on one standard to implement video decoding. Guess I'll have to keep wishing as for the moment it looks like everyone is coming up with their own solutions. :(

Uber
11-15-2008, 01:47 PM
holy crap! from the looks of things, as soon as the video got loaded the CPU just sat there and twiddled its thumbs!

Seriously. AMD. I want to love you. I really do. But now you're back to playing catch up.

Amen.. But at least fix the worst bugs for the remaining Linux ATI/AMD users..

tbroderick
11-15-2008, 02:17 PM
Yes. It would be great if Phoronix tried a few different cards as well to give us a feeling about how powerful the GPU needs to be. How does the much simpler integrated GeForce 8200 compare?

I would also like to know if a cheap a CPU, like a Sempron LE-1150, can still be capable of smooth playback.

deanjo
11-15-2008, 02:59 PM
I would also like to know if a cheap a CPU, like a Sempron LE-1150, can still be capable of smooth playback.

No reason it wouldn't be able too.

Kano
11-15-2008, 03:35 PM
Well I would not call it "working", it is a first step in the right direction, maybe could be used by commericial blue ray players, don't know if the driver already supports hdcp and macrovision - which is also a requirement for official players I think. A free way to play blue ray would be also cool. It is right now very restricted in the h264 support, I highly doubt that you easly find suited media in the wild besides some test videos.

echs
11-15-2008, 04:03 PM
A new driver always gets me excited.

My little nice experience. I have a Dell Vostro 1400 notebook with Core 2 Duo T5270 @ 1.4GHz and NVidia 8400M GS. Running Ubuntu 8.10 with nvidia 180.06. Installed mplayer-vdpau using the source package as announced in nvnews linux forums (just downloaded mplayer-vdpau-3076399.tar.bz2 and ran the script checkout-patch-build.sh as said in readme). Running a 1080i hdtv video with normal mplayer (from medibuntu) with vo=xv, cpu usage is 50-55%, with mplayer-vdpau and *only* vo=vdpau (software accel) is 60% and looks blocky, and with vo=vdpau, vc=ffmpeg12vdpau is 35-40%. So its quite a big drop in cpu usage :). Quality seems to be a little better with xv.

Great start, god speed :D.

could you test h264 playback?

i tried this on a X2-4200+/1GB/8600GT system with the h264 testfile from mplayerhq (grey.ts) and i got around 5-6% cpu usage for mplayer (total about 10-12). i didnt test mpeg2 yet but i'd think if h264 runs that good mpeg2 should not produce such a "high" load.

it may also be of interest to everyone that none of the h264/aac matroska videos i tried worked. all i got was a green picture and in some cases my system just crashed.. seems to me the beta status is no understatement :(


but i'm very happy that this finally happened. and with intel following soon i really look forward to a bright linux-mce future :D
this will surely be a boost for Linux adoptation.

if AMD can get the same thing working with their XvBA AND release proper drivers i might buy an AMD card next time. they are clearly more efficient per watt. it seems like nvidia forgot efficiency in their arms race.. 280 watt? wtf?
with about 10 Systems running all day it makes a big difference if the graphics card uses 20 watt (HD4350) or 40 watt (8400GS).
i still find it very interesting that the geforce7 series still is the most efficient when it comes to power usage. if high end and dx10 gaming is not of interest to you a 28 watt 7600GS seems much better to me than a 48 watt 8600GS even if performance is not exactly the same.. who needs DX10 features when you're using linux? ok ok wine will be there sometime, but until then a 7600GS would do.. if it weren't for that VDPAU.. damn you nvidia :)

sloggerKhan
11-15-2008, 05:30 PM
I'm hungry for more information...
Using this do you get better upscaling and less video tearing and other playback problems?

echs
11-15-2008, 05:51 PM
I'm hungry for more information...
Using this do you get better upscaling and less video tearing and other playback problems?

actually upscaling is not implemented yet but it can be done, you'll just have to wait for the developers to catch up :)

video tearing (vsync) is still a problem but this could be fixed in time for the final release. we'll see..

Moustacha
11-15-2008, 07:06 PM
So will we see a finalised version by the time they release non-beta 180.xx drivers for linux, or will it be an ongoing effort that will stay beta WITHIN the drivers?

Goga777
11-16-2008, 04:00 AM
ffmpeg-devellopers already have noticed this patch and commented it
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-November/056065.html

bugmenot
11-17-2008, 09:29 AM
Why couldn't thy use open standard for video acceleration like VA-API or something like this? Proprietary stuff is wrong in the linux world...

_txf_
11-17-2008, 01:50 PM
Why couldn't thy use open standard for video acceleration like VA-API or something like this? Proprietary stuff is wrong in the linux world...

at the moment VA-API is just a document dumped somewhere on freedesktop and inside some peoples brains. They might have used vaapi if it existed...

bugmenot
11-17-2008, 02:24 PM
at the moment VA-API is just a document dumped somewhere on freedesktop and inside some peoples brains. They might have used vaapi if it existed...
For VA-API there is a plan. For their new acceleration mode there was no plan. They had to create it from the scratch. They could have use VA-API and improve it maybe. But they did not, because they don't want to help others.

deanjo
11-17-2008, 03:09 PM
For VA-API there is a plan. For their new acceleration mode there was no plan. They had to create it from the scratch. They could have use VA-API and improve it maybe. But they did not, because they don't want to help others.

More like they can't be bothered to wait for the others to get their act together.

_txf_
11-17-2008, 05:08 PM
More like they can't be bothered to wait for the others to get their act together.

exactly. Not to mention the fact that whatever changes they would request to vaapi would end up being discussed back and forth and probably go nowhere fast.

Trying to implement an api which is currently quite nebulous, would inevitably require them to refactor/redesign again later, so why bother? Just design their own. Maybe later they can move to vaapi or create a wrapper lib (vid acceleration pipelines seem to generally be quite homogenous)...

linuxjacques
11-18-2008, 01:07 PM
Can someone please point me to a list of exactly which NVidia hardware
is supported by the new VDPAU feature?

Thanks.

deanjo
11-18-2008, 01:17 PM
Can someone please point me to a list of exactly which NVidia hardware
is supported by the new VDPAU feature?

Thanks.
Here is the official list

The API is called VDPAU (Video Decode and Presentation API for Unix). It provides a
large subset of PureVideo HD functionality for NVIDIA Linux, Solaris, and FreeBSD
users.

The current API documentation is here:

ftp://download.nvidia.com/XFree86/vd...tml/index.html (ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/index.html)

Some highlights of VDPAU:


Defines an API for GPU-accelerated decode of MPEG-1, MPEG-2, H.264, and
VC-1 bitstreams.
Defines an API for post-processing of decoded video, including
temporal and spatial deinterlacing, inverse telecine, and noise
reduction.
Defines an API for timestamp-based presentation of final video
frames.
Defines an API for compositing sub-picture, on-screen display,
and other UI elements.



Note that VDPAU does not address content protection.

Some highlights/limitations of NVIDIA's current implementation:


Supported on NVIDIA GPUs with the NVIDIA second generation video processors
(see the end of this announcement for a complete GPU list).
Currently, only one video stream can be decoded at a time; we hope to lift this
restriction eventually.
Available in the 180.06 NVIDIA public beta release:
http://www.nvidia.com/object/linux_d...32_180.06.html (http://www.nvidia.com/object/linux_display_ia32_180.06.html)
http://www.nvidia.com/object/linux_d...64_180.06.html (http://www.nvidia.com/object/linux_display_amd64_180.06.html)
http://www.nvidia.com/object/freebsd_180.06.html
http://www.nvidia.com/object/solaris...ay_180.06.html (http://www.nvidia.com/object/solaris_display_180.06.html)


The VDPAU support in the NVIDIA 180.06 beta release is still very
preliminary. We are aware of cases of visual corruption and in some
cases GPU hangs. We will be working on these issues over the next
several NVIDIA driver releases.

While NVIDIA's VDPAU implementation is not ready for end user use yet,
it should be far enough along that interested application developers (http://www.nvnews.net/vbulletin/showthread.php?t=123091#)
can begin working with it.

Additionally, NVIDIA has developed patches to ffmpeg and MPlayer to
demonstrate a video player using VDPAU:

ftp://download.nvidia.com/XFree86/vd...076399.tar.bz2 (ftp://download.nvidia.com/XFree86/vdpau/mplayer-vdpau-3076399.tar.bz2)

These patches include changes against libavcodec, libavutil, ffmpeg,
and MPlayer itself; they may serve as an example of how to use VDPAU.

Once we do some further testing, bugfixing, and cleanup, we will
contribute the MPlayer patches to the MPlayer developers.


If other hardware (http://www.nvnews.net/vbulletin/showthread.php?t=123091#) vendors are interested, they are welcome to also
provide implementations of VDPAU. The VDPAU API was designed to allow
a vendor backend to be selected at run time.



VDPAU is currently supported on the following NVIDIA GPUs:

Desktop GPUs:
GeForce 200 Series
GeForce 9 Series
GeForce 86xx Series
GeForce 85xx Series
GeForce 84xx Series
GeForce 8300 GS
GeForce 8800 GTS 512
GeForce 8800 GT
GeForce 8800 GS

Mobile GPUs:
GeForce 98xxM
GeForce 9700M
GeForce 96xxM
GeForce 9500M
GeForce 9300M
GeForce 9200M
GeForce 8800M
GeForce 8800M GTS
GeForce 8800M GTX
GeForce 8600M
GeForce 8400M

Motherboard GPUs:
GeForce 9400
GeForce 9300
GeForce 9100
GeForce 8300
GeForce 8200

VC-1 support in NVIDIA's VDPAU implementation currently requires GeForce
9300 GS, GeForce 9200M GS, GeForce 9300M GS, or GeForce 9300M GS.
__________________
Andy Ritger
Manager, NVIDIA Linux Graphics Driver
http://www.nvnews.net/vbulletin/images/statusicon/user_offline.gif

linuxjacques
11-18-2008, 03:44 PM
Here is the official list

deanjo, thank you very much!

npcomplete
11-18-2008, 10:45 PM
Can you still use post-decode filters with this?

tuke81
11-23-2008, 07:43 PM
...
If other hardware vendors are interested, they are welcome to also
provide implementations of VDPAU. The VDPAU API was designed to allow
a vendor backend to be selected at run time.
...


Err.. Does this mean that this api is open and other graphics card manufacturers can use the code in their own hw(is that even possible). Or am I completely missed something...

some-guy
11-23-2008, 09:16 PM
API doesn't mean code ;)
It's just a header file, assuming it was legally possible, implementing it with gallium would allow all the gallium drivers to use it.

deanjo
11-24-2008, 07:31 PM
If you guys are interested in profiles that work with VDPAU a good place to start to find compatible profiles can be found here:

http://www.avsforum.com/avs-vb/showthread.php?t=972503

Although it uses windows software in the howto, it can be used for setting up other software like handbrake or your favorite encoding software as well.

Forge
11-26-2008, 10:27 AM
If you guys are interested in profiles that work with VDPAU a good place to start to find compatible profiles can be found here:

http://www.avsforum.com/avs-vb/showthread.php?t=972503

Although it uses windows software in the howto, it can be used for setting up other software like handbrake or your favorite encoding software as well.

I don't even have to go read that, I can sum it up much more succinctly:

MPEG4 High Profile @ Level 4.1 for HD
MPEG4 High Profile @ Level 3.1 for SD

All lower levels accelerable as well.

deanjo
11-28-2008, 03:24 PM
There is a new set of mplayer patches on nvidia's ftp:

ftp://download.nvidia.com/XFree86/vdpau/mplayer-vdpau-3139462.tar.bz2

Cuppa-Chino
11-28-2008, 03:29 PM
Here is the official list
...

VDPAU is currently supported on the following NVIDIA GPUs:

Desktop GPUs:
GeForce 200 Series
GeForce 9 Series
GeForce 86xx Series
GeForce 85xx Series
GeForce 84xx Series
GeForce 8300 GS
GeForce 8800 GTS 512
GeForce 8800 GT
GeForce 8800 GS

Mobile GPUs:
GeForce 98xxM
GeForce 9700M
GeForce 96xxM
GeForce 9500M
GeForce 9300M
GeForce 9200M
GeForce 8800M
GeForce 8800M GTS
GeForce 8800M GTX
GeForce 8600M
GeForce 8400M

Motherboard GPUs:
GeForce 9400
GeForce 9300
GeForce 9100
GeForce 8300
GeForce 8200

VC-1 support in NVIDIA's VDPAU implementation currently requires GeForce
9300 GS, GeForce 9200M GS, GeForce 9300M GS, or GeForce 9300M GS.



I am reading this CURRENTLY as a other will support in future? what about MGPU geforce 8x00 and 9x00 series to supprt VC-1 going forward?

deanjo
11-28-2008, 03:44 PM
I am reading this CURRENTLY as a other will support in future? what about MGPU geforce 8x00 and 9x00 series to supprt VC-1 going forward?
Only cards that support pure VC-1 hardware acceleration support. 8xxxx and 9xxxx series is a no go as they do not have that support.

Cuppa-Chino
11-28-2008, 04:01 PM
Only cards that support pure VC-1 hardware acceleration support. 8xxxx and 9xxxx series is a no go as they do not have that support.

sorry still confused, taken straight from the nvidia webpage here:

http://www.nvidia.com/object/product_geforce_9300_mgpu_us.html

Breathtaking High Definition Video Playback
Experience full-spec playback of your favorite Blu-ray titles. PureVideo HD offloads 100% of movie playback for all HD video formats (H.264, VC1, MPEG-2), delivering stunning, stutter-free video with outstanding audio fidelity.

so the intel mgpu can supposedly do the vc-1

similarly on this page:
http://www.nvidia.com/object/product_geforce_8200_mgpu_us.html

HD at 1080p for Everyone
Experience astounding Blu-ray and HD-DVD movie picture quality (supported formats include H.264, VC1 and MPEG2) with PureVideo HD technology.Enjoy enhanced system performance, reduced power consumption and quieter operation with minimal CPU utilization.

so I am taking your answer as a will not rather than cannot, just trying to understand...?

deanjo
11-28-2008, 05:14 PM
From what I've been able to make out is that VC1 (VLD_VC1_MODE_D) is only supported in 8400GS, 8200/8300, and 9300/9400 series. That's not to say though however older, previous versions of Purevideo HD will not be supported in the future. This stuff is still pretty new.

http://www.expreview.com/img/review/g98_8400gs/purehd_vc1_s2.jpg

Cuppa-Chino
11-29-2008, 03:40 AM
thanks I do not want to appear obnoxius, I am just trying to piece together an HTPC and want to make sure I cover all the bases.....

deanjo
11-29-2008, 10:30 AM
thanks I do not want to appear obnoxius, I am just trying to piece together an HTPC and want to make sure I cover all the bases.....

I never got the impression you were being obnoxious. I can fully appreciate how difficult it is sometimes trying to sort the chaff from the wheat when it comes to getting answers to some of this stuff.

deanjo
11-29-2008, 10:42 AM
BTW, nvidia seems to be dedicated and working pretty hard to get this going. They now even posted special instructions for reporting bugs with vppau.

http://www.nvnews.net/vbulletin/showthread.php?t=123819

speedsix
12-07-2008, 08:49 AM
Any idea why VC-1 on the 9300 IGP isn't supported?

deanjo
12-07-2008, 10:05 AM
Any idea why VC-1 on the 9300 IGP isn't supported?

It is. In fact it's even listed.

VC-1 support in NVIDIA's VDPAU implementation currently requires GeForce
9300 GS, GeForce 9200M GS, GeForce 9300M GS, or GeForce 9300M GS.

speedsix
12-07-2008, 10:08 AM
It is. In fact it's even listed.

The motherboard integrated 9300 chip is different from those listed isn't it?

There are posts from people with the 9300 gpu on their motherboard and VC-1 support doesn't seem to work.

deanjo
12-07-2008, 10:37 AM
The motherboard integrated 9300 chip is different from those listed isn't it?

There are posts from people with the 9300 gpu on their motherboard and VC-1 support doesn't seem to work.

Might be a bug in the current drivers. Other then power consumption the 9300 should be identical to their mobile parts in which VC-1 works. Best thing to do would be to ask the nvidia guys at nvnews in the vdpau thread.

Yfrwlf
12-07-2008, 02:32 PM
Might be a bug in the current drivers. Other then power consumption the 9300 should be identical to their mobile parts in which VC-1 works. Best thing to do would be to ask the nvidia guys at nvnews in the vdpau thread.

Not that most users need to care about it yet any way since the latest MPlayer that supports vdpau doesn't come in easy-to-install-and-run packages yet. >.>

Glad it's coming tho!

Linux: "Baby steps to 21st centuryyyy baaabyyyysteeeeeps..."

Goga777
12-16-2008, 03:18 PM
right now developers have announced new project - xine-vdpau

Source repository: svn://jusst.de/xine-vdpau

Mailing-list: http://lists.kafic.ba/mailman/listinfo/xine-vdpau
(xine-vdpau@kafic.ba)

irc channel #xine-vdpau on freenode.net

deanjo
12-16-2008, 03:54 PM
Not that most users need to care about it yet any way since the latest MPlayer that supports vdpau doesn't come in easy-to-install-and-run packages yet. >.>

Glad it's coming tho!

Linux: "Baby steps to 21st centuryyyy baaabyyyysteeeeeps..."

Several distro's have experimental packages of mplayer already with vdpau.

Yfrwlf
12-16-2008, 06:56 PM
Several distro's have experimental packages of mplayer already with vdpau.

Cool, just wish it was available for everyone easily is all.

katon
12-21-2008, 01:49 AM
I HAVe question, with Quad core proccesor i;m playing high definition movies but with some ...."lines" in action frames...you know not very high definition .

is it a problem of the driver? with Purevideo it will be a solution? or maybe know i can use all my multithread procesors to open those movies?
i use MPLAYER on Ubuntu intrepid.

Kano
12-21-2008, 05:42 AM
What you see is tearing, most likely caused by compiz. Disable it and try again.

Betel
12-31-2008, 10:00 AM
With my athlon X2 4000+ and nvidia 8800GS, full HD h264 plays at about 5-10 FPS and 100% CPU. With VDPAU in mplayer it plays at full 60 FPS and 5% CPU. Not bad at all. :)

popper
02-02-2009, 07:49 AM
I don't even have to go read that, I can sum it up much more succinctly:

MPEG4 <-AVC>High Profile @ Level 4.1 for HD
MPEG4 High Profile @ Level 3.1 for SD

All lower levels accelerable as well.

and try and avoid useing "B-pyramids" in your Encodes as it causes smooth playback and decode problems on many hardware players.

its also wise to keep in mind today, the basic choices to keep HD Widescreen ratios when you get the choice to Encode your content are 848x480 (16:9) ,1280x720 (16:9) , 1360x768 (16:9) , and OC 1920x1080

stop typing "Mpeg4" were AVC or the long version "Mpeg4-part10" H.264 with it's lossless Encodeing/Decoding modes is ment, its confusing, (and just feeds into the worlds salesman/woman tactic to confuse and mislead your average person into buying old DivX HW) as they doesnt realise that "Mpeg4" was more in common with the old original Mpeg4-part2, divX, H.263 that was included in the spec first.

the main basic fact missing in these video assisted threads, seems to be that all these APIs are using their own special inbuilt seperate HW video decode ASIC, if your GFX card has the VDPAU ASIC inside , it will work at some point, if it doesnt have the ASIC ,it wont ever.

ATI and their UVD ASIC inside the X1xxx ?,HD2xxx,HD3xxx,and HD4xxx could be made to also work one day if AMD give out the currently closed UVD API for their UVD(2) ASIC sometime in the next few months if and when the UVD code review takes place over the next few Months as BM said they might, or NOT OK it.

any Intel HW assisted video ASIC seems to be far less talked about, do they infact have some HW assisted video ASIC inside their chips, if so ,what and which chips/SOC ?