64 bit Handbrake faster in 32 bit mode

Discussion in 'Mac Apps and Mac App Store' started by mtgilbert, Oct 2, 2009.

  1. macrumors newbie

    Joined:
    Oct 2, 2009
    #1
    I found this odd: I have the most recent versions of Handbrake and VLC, both in the 64 bit build. When I boot my MacBook Pro (June, 2009, and running SL 10.6.1 with 4 GB of RAM) in 32 bit mode, handbrake encodes video about 10% FASTER than when I boot in 64 bit mode! How can this be? I would have thought that running the Mac in 64 bit mode would run 64 bit applications faster.

    Confused in NYC
     
  2. macrumors G3

    rhett7660

    Joined:
    Jan 9, 2008
    Location:
    Sunny, Southern California
    #2
    How do you know it is 10% faster? Do you have some data to back this up? If so please post the data.
     
  3. Guest

    AAPLaday

    Joined:
    Aug 6, 2008
    Location:
    Manchester UK
    #3
    Hmm this is interesting. Please post more info please like rhett7660 said :)
     
  4. thread starter macrumors newbie

    Joined:
    Oct 2, 2009
    #4
    In 32 bit mode, the average frame rate (according to Handbrake itself) was about 60 fps, while in 64 bit mode is was only about 55 fps. I did not actually time it, but the "time remaining" reading corroborated these numbers.
     
  5. thread starter macrumors newbie

    Joined:
    Oct 2, 2009
    #5
    I should add that I also did this while booted off my Firewire HD. As expected, it encoded faster (my internal HD is only 5400 rpm) but the relative difference in the numbers between 32 and 64 bit was the same. Please try it yourselves and see what you get.
     
  6. macrumors newbie

    Joined:
    Sep 18, 2009
    #6
    ypu should time it with a stopwatch

    the time remaining info is notoriously innacurate as its not total elapsed time its time left. Also the Handbrake 64 bit is not stable code at this point so i cant see it ready for benchmarking against the older 32 bit code.

     
  7. macrumors 65816

    Joined:
    Jul 28, 2004
    #7
    There is a speed penalty for running 64-bit, unless the code being run gains enough from AMD64 (vs. i386) to offset the penalty. The kernel generally does not do anything that would offset the penalty in the kernel, and that will bleed through to the apps.

    What I would consider more interesting is the comparison of your numbers for 64-bit Handbrake vs. 32-bit Handbrake.

    Balderdash. 64-bit code is ready for benchmarking against the 32-bit version as soon as you are done recompiling it. The only exception is if you have an app that has assembly sections. Since Handbrake is now offered in 64-bit build, by definition, any of those assembly sections are now transferred to 64-bit.

    Whether it is stable at that point (e.g., undiscovered 32-bit to 64-bit bugs), is irrelevant.
     
  8. thread starter macrumors newbie

    Joined:
    Oct 2, 2009
    #8
    Well, I used a stopwatch and found that I had been a bit too trusting of the progress indicators (frame rate and ETA). The times turned out to be pretty close to indistinguishable. This leaves the question: Why would those indicators be so different (10% off from one another) if the total encode time is actually the same?

    The other possibility is that I'm too trusting of my stopwatch....
     
  9. macrumors regular

    Joined:
    Jun 8, 2009
    #9
    x264 (the encoder behind the video portion of HandBrake) has a lot of assembly in it, and I don't know how much that supports 64-bit yet, so that might have something to do with it.
     
  10. macrumors 65816

    Joined:
    Jul 28, 2004
    #10
    Ipso facto, if it is a 64-bit binary, whatever is running is 64-bit. ffmpeg supports AMD64, and x264 itself has had AMD64 patches since 2005.
     

Share This Page