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. |
30th October 2020, 16:01 | #1 | Link |
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? |
31st October 2020, 18:58 | #2 | Link |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,906
|
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... |
31st October 2020, 21:28 | #3 | Link |
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. |
4th November 2020, 00:49 | #4 | Link | ||
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,421
|
Quote:
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:
Code:
ffmpeg -benchmark -i input -f null - |
||
|
|