February 1st, 2010

[Review] NVdia video decode API (Vdpau) and comparison performance

Computer Hardware & Software, Software review, by brigs.

VDPAU or Video Decode Pre­sen­ta­tion API for UNIX or Linux. The big name “Nvidia” was the behind sch­ene with devel­op­ing this API for X-Windows sys­tem library for using by UNIX ( Linux), BSD and Solaris oper­at­ing sys­tem. VDPAU allow­ing video pro­gram to offload decode and  post pro­cess­ing process to GPU Video hard­ware based or the same like what we see­ing in DxVA (DirectX Video Accel­er­a­tion) in Win­dows based. This time the process being capa­ble to offload by VDPAU to GPU are motion com­po­si­tion (mo comp), inverse Descrete Cosine Trans­form (iDCT), Vari­able Lenght Decod­ing (VLD) for MPEG-1, MPEG-2, MPEG-4 ASP (Mpeg 4 part 2), MPEG-4 AVC (H.264 Divx 6), VC-1, WMV3/WMV9, Xvid and Divx encoded video.

For hard­ware sup­port­ing by Nvidia GPU with fea­tured Sec­ond Gen­er­a­tion Pure Video only capa­ble offload accel­er­a­tion decode video. X11 and video dri­vers are some basic envi­ron­ment require­ment. Nvidia Geforce 8 series and later  has sup­port since first beta dri­ver released for sup­port­ing VDPAU. The excep­tion in Geforce 8 fam­ily are Geforce 8800 GTS 320/640Mb and Geforce 8800GTX/Ultra. Later card Geforce 9 card with G92 core like Geforce 8400GS and Geforce 8800GTS 512mb are sup­ported. No com­pro­mis­ing for Nvidia for release sup­port for non sup­ported GPU at rightnow.

In oth­er­hand video card from Intel and ATI this time not sup­ported VDPAU. Intel is still look­ing for new chance for devel­op­ment API-VA or VDPAU and ATI GPU card since released ATI 4000 series have UVD (Uni­fied Video Decode) that part of ATI AVIVO HD for sup­port­ing video decode accel­er­a­tion in DxVA (WIn­dows) and Xbox 360 plat­form that sup­port­ing H.264 and VC-1 builtin decoder. In the future AMD still devel­op­ing XvBA or X Video Bit­stream Accel­er­a­tion for suport­ing X WIn­dows sys­tem in UVD hard­ware accel­er­a­tion for those plat­form. You can see and com­pare NVIDIA GPU that sup­port­ing VDPAU or not in chart below.

Nvidia GPU that capable acceleration decode

Nvidia GPU that capa­ble accel­er­a­tion decode

Plat­form Testing

For test­ing pur­pose i using 2 dif­fer­ent proces­sor and plat­form for com­par­ing per­for­mance. Intel Core 2 Duo E6600 (Con­roe) for old fash­ion rep­re­sented dual­core era and Core i5 750 for new begin­ning. Here a brief sys­tem con­fig­u­ra­tion and testing

Core i5 Rig
CPU Intel Core i5 750 with run­ning core speed at 4Ghz
Biostar Tpower P55 chipset
2x2Gb Team Extreme PC15000 with run­ning at 1910Mhz 8−8−7−21 1T
Col­or­full Geforce GT220 with 128bit 512Mb DDR3
WD Black 1Tb
PC Power & Cool­ing Silencer 750W

Core 2 Duo E6600 Rig
CPU Intel Core 2 Duo E6600 with run­ning at 3.32Ghz
J&W P45D2 Ultra
2x2Gb Gskill PC8800GBPI with run­ning at 1100Mhz 5−5−5−15 2T
Col­or­full Geforce GT220 with 128bit 512Mb DDR3
WD Caviar 160Gb
Enlight 500W

For oper­at­ing sys­tem test i using Open­Suse 11.2 x64 with lat­est  2.6.31.8 ker­nel and X-Windows using X-Org Nvidia 190.53 dri­ver.  VDPAU test­ing appli­ca­tion using Mplayer SVN r-30099 x64 and Sys­stat 9.0.2 x64 for CPU record­ing activity.

Test­ing Result

For com­par­i­son result i using dif­fer­ent video out­put and codec in X11 win­dows that capa­ble using video accel­er­a­tion with GPU hard­ware. Old but still good enough video ouput set­ting like X-Video (XV) and GL2 includ­ing in these test with excep­tion GL2 and XV ouput can’t ren­der­ing graph­ics if i using together with ffh264vdpau codec. I using 39.3Mb “Avatar trailer” movie with 3.30 min­utes long in 720p res­o­lu­tion for video codec ffh264 (ffm­peg based) and ffh264fdpau test with .mkv for­mat. I do not included scren­shoot video cause these is only decode com­par­i­son test only that still used the same video input.

Video Codec test result

Video Codec test result (LOW=BETTER)

Real screen­shoot :

X-Video with ffh264 codec E6600
X-Video with ffh264 codec i5
GL2 with ffh264 codec E6600
GL2 with ffh264 codec i5
VDPAU with ffh264 codec E6600
VDPAU with ffh264 codec i5

VDPAU with ffh264vdpau codec E6600
VDPAU with ffh264vdpau codec i5

As you can see in the chart above, com­bin­ing VDPAU with ffh264vdpau codec make low­est CPU uti­liza­tion. Both plat­form test either the Core 2 Duo E6600 have same par per­for­mance with core i5 750 here. Dif­fer­en­tial have big­ger space between both plat­form when i used FDPAU with ffh264 codec at almost 265% in CPU uti­liza­tion. I still look­ing what behind that issue here, we know that E6600 only lack of com­plete SSE4  instruc­tion. When i choos­ing the other video out­put GL2 with ffh264, Core i5 cpu usage about 2.72% and C2D E6600 get high stack with 7.07%. And lat­est test with X-Video ouput with ffh264 codec C2D E6600 have the big­ger cpu util­itza­tion about 8.6% and the core i5 still can hold­ing of using min­i­mal cpu about 3.84%.

Good start for nVdia for devel­op­ing new API for GPU based hard­ware Video decode accel­er­a­tion. Although Nvidia sup­ported is still Beta stage released cause i can’t using ffhWMV3vdpau and ffhvc1dpau codec to work­ing with Mplayer. Maybe later i will give more com­par­a­tive com­par­i­son per­for­mance with XVBA that will intro­duce by ATI/AMD. If you are Win­dows user and want to try­ing using GPU accel­er­a­tion when decode your video you can using many good soft­ware out there likes MPC Home Cin­ema, Cyber­link Pow­erDVD,  Corel WinDVD or maybe you wanna to try Mplayer Win­dows ver­sion that sup­ported with the lat­est Nvidia Force­ware dri­ver. One the great arti­cles was writ­ten by Mr Hilbert Hage­dorn in his web­site “Accel­er­ate x.264 1080p movies over the GPU Guide

Thank for read­ing my arti­cles and have a good day.….

Back Top

Responses to “[Review] NVdia video decode API (Vdpau) and comparison performance”

  1. I don’t some­times com­ment on web­sites but I had to drop in and tell you thanks for writ­ing this, I totally agree and hope­fully other peo­ple will under­stand your argument.

  2. thanks for com­ing here and read my arti­cles, i hope u enjoy.…

  1. [Review] Colorfull GT220 512Mb DDR3 ­ Brigs Lab's (,February 21, 2010)

    […] video API VP4 accel­er­a­tion while decod­ing MPEG4 ASP codec. as you can read my pre­vius arti­cle about nvidia decode video accel­er­a­tion for UNIX (Vdpau). While we all wait­ing for new GPU from GT400 based that will landed a few month again, […]

Leave a Reply

Back Top