Wednesday, November 25, 2009

Handbrake 0.9.4 64-bit - 15% faster.

Handbrake 0.9.4 is out, and it finally comes in a 64-bit flavour. The Handbrake site states it's about 10% faster than the 32-bit version, but with my Spirited Away clip from my Core i7 iMac review, I'm getting a 15% boost in speed compared to 0.9.4 32-bit. These were my speeds with Handbrake 0.9.3.



The default setting on 0.9.4 is no longer the same, and neither are the settings in the Advanced section. This may be important since if you just change the main settings, 32-bit 0.9.4 seems much faster than 32-bit 0.9.3. However, if you take the default Advanced settings from 0.9.4 and use them with 0.9.3 as well, the speeds get much closer. I changed the main 0.9.4 settings to replicate the old 0.9.3 default - 1500 Kbps Average, 2-pass with Turbo first pass - and then re-benchmarked, but using the settings in the Advanced section from 0.9.4 for all tests.

ref=2:bframes=2:subq=6:mixed-refs=0:weightb=0:8x8dct=0:trellis=0

This sped up encoding in 0.9.3 slightly, but the biggest gain was from using the 64-bit of Handbrake 0.9.4.

Handbrake 0.9.3 32-bit: 120.4 s (vs. 126.7 s with the 0.9.3 default)
Handbrake 0.9.4 32-bit: 121.6 s (1% slower)
Handbrake 0.9.4 64-bit: 105.5 s (14% faster)



64-bit Handbrake 0.9.4 is 15% faster than 32-bit Handbrake 0.9.4, and 14% faster than Handbrake 0.9.3. To put it in simpler terms, using these settings on similar animated material, it would only take 16 minutes to encode an entire 90 minute movie on my 2.8 GHz Core i7 iMac. Nice.

Well, sorta. If you adjust Handbrake 0.9.4's Advanced settings to the same flags that are default with 0.9.3 (ref=2:bframes=2:me=umh), then 0.9.4 slows right down. 32-bit 0.9.4 takes 196 seconds (or well over 3 minutes) to encode the same clip. Obviously the behaviour of the two versions with certain flags is quite different.

I should point out that Handbrake doesn't fully utilize all 8 virtual cores. However, it sometimes does come close.



Not bad for the first release of the 64-bit version of Handbrake.

1 comment:

Dan said...

Nice post! I haven't got Spirited away to make a direct 64 bit handbrake test however my results seem considerably lower with an i7.

Currently encoding Pirates of the Caribbean, its using approx 549% of the CPU.. and I'm only getting around 64 fps. Obviously the animation you tested is less complex however there still seems to be a large discrepancy here..!