Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Announcements and Chat > General Discussion
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
Old 30th October 2020, 16:01   #1  |  Link
Zaxooz
Registered User
 
Join Date: Aug 2012
Posts: 22
EEDI2 performance on the PowerPC CPUs

So I have a somewhat strange question for the folks on here.

I've got myself a couple of PowerPC Macs and have been benchmarking them against their PC counterparts from that era. One of the tests that I've tried out is a Handbrake 0.9.4 encode of an interlaced dvd movie trailer. I have the cutom decomb parameters set to 8:2:0:1:30, which is supposed to make it use EEDI2 for progressive frame recovery. The average encode speeds for these job are the following:

PowerPC 970MP (single cpu, dual core) - 3.43fps
Athlon 64X2 (the 2x1MB cache version) at 2.5Ghz - 2.09fps
Pentium D 945 (stock) - 2.02fps

This is the only test where the PowerPC beats these x86 cpus and for some reason does it so handily.

If I try a regular Bluray segment encode to 720p, progressive, High profile, I get the following results:

PowerPC 970MP - 2.50fps
Athlon 64X2 - 3.30fps
Pentium D 945 (stock) - 3.30fps

So it does seem like EEDI2 is the culprit here. Why does EEDI2 perform so much better on the PPC?
Zaxooz is offline   Reply With Quote
Old 31st October 2020, 18:58   #2  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,908
Uhm... i don't know for sure, but maybe nobody wrote intrinsics for the PowerPC and whatever instruction sets those old x86 CPUs were using, so it came down to the compiler to generate assembly optimizations automatically and it somehow made better use of the PowerPC architecture rather than the x86 one for whatever reason, while in the other HD encode (x264?) you were doing, the Athlon and Pentium x86 CPUs had manually written intrinsics and were faster.
Again, it's impossible to rule out a thing or the other and adding a codec on top of that "skews" the results.
It would be better to just run EEDI2 without any other kind of encoding and measure the speed there, however it would be hard given that AVSMeter and Avisynth are really meant for x86 and x86_64...
Handbrake is probably using the FFMpeg implementation of EEDI2, but is there a way to make an AVSMeter-like benchmark on FFMpeg? Dunno...
Still, I'll let other reply and see if they can come up with an answer...
FranceBB is online now   Reply With Quote
Old 31st October 2020, 21:28   #3  |  Link
Zaxooz
Registered User
 
Join Date: Aug 2012
Posts: 22
It seems that I've made a slight mistake in measuring the custom eedi2 decomb performance here. I've left the detelecine filter on and it must've been catching some of the frames from the clip and speeding up the job somewhat. The custom eedi2 decomb only results are as follows:

PPC 970MP - 2.91fps
Athlon 64 X2 2500Mhz - 1.74fps
Pentium D 945 - 1.66fps

The default decomb (yadif) results are:

PPC 970MP - 8.65fps
Athlon 64 X2 2500Mhz - 12.13fps
Pentium D 945 - 11.67fps

And the default detelecine:

PPC 970MP - 10.77fps
Athlon 64 X2 2500Mhz - 15.21fps
Pentium D 945 - 14.79fps

So the massive speed advantage of 970MP in eedi2 decomb still holds true.
Zaxooz is offline   Reply With Quote
Old 4th November 2020, 00:49   #4  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,421
Quote:
Originally Posted by FranceBB View Post
It would be better to just run EEDI2 without any other kind of encoding and measure the speed there, however it would be hard given that AVSMeter and Avisynth are really meant for x86 and x86_64...
https://github.com/qyot27/AviSynthPlus/commits/ppc

Granted, there are big caveats using AviSynth+ on non-x86 CPUs, but it's a start.

I mean, running it on an old PPC Mac is definitely not the typical PPC platform we'd eventually be seeing AviSynth+ used on (more like the RCS Talos II or Blackbird). That screenshot in OS X Tiger was basically an exercise in 'I did it because I could'*; getting that set up was a bit of a pain, and it would be significantly easier if the user is actually running Void Linux-ppc on their old Mac instead of OSX.

*and still requires the user to change the minimum CMake version in CMakeLists.txt so the version of CMake that Tigerbrew gives you will let you build it.

Quote:
Handbrake is probably using the FFMpeg implementation of EEDI2, but is there a way to make an AVSMeter-like benchmark on FFMpeg? Dunno...
The closest I know of is (aside from the other params to test)
Code:
ffmpeg -benchmark -i input -f null -
But it's not really a replacement for the min/max/average stats AVSMeter gives.
qyot27 is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 16:23.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.