Snow Leopard 32bit vs 64bit - FAQ

Discussion in 'OS X' started by Consultant, Sep 10, 2009.

  1. macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #1
    Mac OS X 10.6 Snow Leopard (SL) introduces 32 bit and 64 bit kernel, processes, and applications to the end user. But what does it mean and does it affect you? Here are answers to some frequently asked questions.

    Note that OS X 10.4 and 10.5 also have 64-bit support for part of the system. (Did you know PowerMac G5 introduced in 2003, with 32bit Mac OS, can access more than 4GB of RAM? Mac OS isn't limited as much with 32bit 64bit issues as windows.)

    -----------------------
    Common Questions
    -----------------------

    1. I don't understand 64 bit.
    2. Why isn't my Mac booting a 64 bit kernel.
    3. How do I boot a 64 bit kernel under Snow Leopard.
    4. Why aren't all my applications 64 bit.
    5. How come my Mac crashes when running the 64 bit kernel.

    -----------------------
    Answers
    -----------------------

    1. I don't understand 64 bit.

    A. You don't HAVE to know about 64 bit. For most users of OS X, it won't matter.

    The Application delivery mechanism for future OSX Snow Leopard apps will still be Universal Binary, which will include BOTH 32bit and 64bit code if available.

    The default SL kernel is 32 bit which is more compatible. Note that the Snow Leopard 32 bit kernel can still run 64 bit processes that allows access to more memory, useful for some power users.

    The only reason you have to know about 32bit or 64bit is if you are running windows.

    With Windows there is a 4GB total memory limit with 32 bit windows. Mac OS is different. Even Macs running Leopard can contain and use far more RAM than the 4 GB limit the "32-bit" qualifier might seem to imply.

    Yes, 64-bit kernel (K64) allows use of a very large number of RAM, 16 exabytes to be exactly, but do you have any apps that need more than a few GB of RAM?

    With Windows you need to download a different version of the app / program / driver for different version of windows os. On Mac OS, you download 1 Universal Binary which will work on all 32bit and 64bit (if available) installs for that Mac OS.

    Yes you are suppose to get higher benchmarks on certain artificial test for running K64, but in daily use you won't notice a difference for almost most users do on Mac OS X.

    2. Why isn't my Mac booting a 64 bit kernel.

    A. The default behavior of Mac OS X 10.6 Snow Leopard client is to boot into the 32 bit kernel. Servers on the right hardware defaults to K64.

    Booting into 32 bit kernel for OS X client is to ensure maximum compatibility. Until every single app and driver are updated to 64 bit, most people should run the 32 bit kernel, as many older apps / drivers are 32 bit.

    The Snow Leopard 32 bit kernel can create 32bit and 64 bit processes. Even 32 bit Mac OS can use high amount of system RAM, and allocate more RAM than 32 bit windows. So with Snow Leopard, you have compatibility of 32 bit kernel and performance of 64 bit processes.

    Windows 32 bit is severely limited. 32 bit windows cannot do anything with 64bit and its RAM allocation is restricted. Note even for gamers who would benefit the most with 64bit windows, only about 30% of the high end windows market is running full 64bit.

    Windows NEED full 64bit because the 32bit windows is very limited. Mac OS X is different, with 32bit kernel capable of launching 64bit processes.


    3. How do I boot a 64 bit kernel under Snow Leopard.

    A. Read 2. If you are absolutely certain you do not have 32 bit apps / drivers and you are not going to run 32 bit apps, you can boot into 64 bit kernel by holding the 6 and 4 key while you turn on your Mac.

    Of course, you can edit a file to set OS X to boot into 64bit automatically. But in that case you probably don't need a FAQ, as you would have already read the 23 page detailed technical review of SL.

    4. Why aren't all my applications 64 bit.

    A. Developing apps take time.

    Note that OS X Snow Leopard is set up to be 64 bit development friendly. It's likely that developer for your app is working on updating for 64 bit. It's just a matter of how long the development cycles are.

    Cocao apps need to be revised and tested to take full advantage of 64bit architecture.

    Old Carbon apps need to be rewritten for 64bit. Including most Adobe, Microsoft apps.
    Some Apple apps are 64bit but Apple apps such as iTunes and Final Cut are still Carbon and 32bit.
    Those will take more time. Note Apple has tried to push developers away from Carbon for quite a few years.

    5. How come my Mac crashes when running the 64 bit kernel.

    A. See #2. If your Mac is crashing in 64-bit only mode you probably have some 32 bit drivers. Switch back to 32 bit kernel. And wait for your apps / drivers to be updated by their developers. You might also want to wait for future Snow Leopard updates before attempting again.


    -----------------------
    Further reading:
    -----------------------

    Inside Mac OS X Snow Leopard: 64-bits
    http://www.roughlydrafted.com/2009/09/02/inside-mac-os-x-snow-leopard-64-bits/

    Road to Mac OS X 10.6 Snow Leopard: 64-Bits
    http://www.appleinsider.com/articles/08/08/26/road_to_mac_os_x_10_6_snow_leopard_64_bits.html

    Snow Leopard Summary of the 23 page technical review
    http://obamapacman.com/2009/09/apple-mac-os-x-10-6-snow-leopard-technology-executive-summary/

    Technical review, 23 pages
    http://arstechnica.com/apple/reviews/2009/08/mac-os-x-10-6.ars/
     
  2. macrumors 68020

    Joined:
    Aug 28, 2009
    #2
    Great FAQ, from a geek who is running in K64.
     
  3. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #3
    Hehe. Thanks! Glad you like it.

    I guess it's made for everyone, including those who know what they are doing. =)

    FYI, a tip: I got 6 hard drives (2 ATA, 4 SATA) in my PowerMac G4 dual 800. Works great as a server. =p
     
  4. macrumors G5

    jav6454

    Joined:
    Nov 14, 2007
    Location:
    1 Geostationary Tower Plaza
  5. macrumors regular

    Joined:
    Jul 24, 2008
    #5
    Thanks for the info.

    So booting 32 bit kernel still runs 64 bit apps.
    Booting 64 bit kernel still runs 32 bit apps.

    What's the benefit of booting into the 64 bit kernel, then? After reading this I now understand why people were talking about booting into 64, but also after reading this, all apps run in each mode so... what's the deal about wanting to boot into a 64 bit kernel?

    I booted into it a bit earlier and played around. I didn't notice much of anything (as the writing says I wouldn't). I did notice my computer idled around 63 when it typically idled at 45 or so.

    Thanks
     
  6. macrumors demi-god

    CWallace

    Joined:
    Aug 17, 2007
    Location:
    Seattle, WA
    #6
    If you're working with very large amounts of installed RAM (32GB or more), a 64-bit kernel helps improve memory performance. For the much more modest amounts of RAM found in MBs, MBPs and iMacs, it really doesn't make any really noticeable performance difference.

    I can't find it, but one website did a technical review of OS X 10.6 and they explained how, with large amounts (32GB+) of installed memory, the 64-bit kernel would be more advantageous.
     
  7. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #7
    Certain 32 bit drivers and kernel extensions won't work with K64, and might cause problems. That's why the default is 32 bit kernel.

    Also, to see whether your Mac has a 64-bit EFI firmware, you can type the command into the Terminal.

    Code:
    ioreg -l -p IODeviceTree | grep firmware-abi
     
  8. macrumors 6502

    Joined:
    Jun 21, 2008
    #8
    While there are SOME certain performance advantages to running the 64 bit kernel, the 2 biggest reasons to do so are:

    1) the KERNEL and KExts (drivers mostly) can access more than 4 GB RAM. (Honestly though, unless you have a TON of kexts, this shouldn't be a problem right now.)

    2) to push developers to start moving their code to the 64 bit kernel (since it is the future.)

    HOWEVER, for 99.9% of users out there, there's no need to move to the 64 bit kernel, and in fact, most machines from 2007 and earlier can't (no kext support for their hardware.)

    Realize though, you're not really losing anything. You still can run all the same software you could before, you're not losing out on more than a few % points of performance, etc.

    Also, please remember that this is the first release of the 64 bit Kernel. If your machine isn't currently supported, hang in there, you never know, Apple might release more support in point releases.


    Oh, and one other clarification - any Carbon based applications are having to be totally rewritten to use Cocoa in order to become 64 bit as there is no 64 bit Carbon (and never will be.) If they choose not to do so, then you'll be stuck with 32 bit versions (at least until Apple totally removes Carbon support, but I doubt that'll happen anytime soon.)
     
  9. macrumors newbie

    Joined:
    Sep 10, 2009
    Location:
    Oregon
    #9
    Thanks for this post. It is a good basic overview of 32 vs 64-bit for average users.

    However, I am still curious; if all this is true and the only advantages are for power users and huge amounts of RAM, then why is it that my MacBook Pro w/ 2GB RAM runs smoothly, without a hiccup in 64-bit (despite 32-bit apps). Yet my MBP (and numerous users') runs like crap in 32-bit mode?

    I can't seem to find an answer anywhere. And its really buggin me, lol. I do understand why apple would boot natively in 32-bit; for backward support. But I don't see why people are being encouraged to stay in 32-bit mode when its running so crappy for so many users.... Any thoughts?

    YES! lets push into the future!
     
  10. macrumors 68020

    Joined:
    Aug 28, 2009
    #10
    Yeah that was what I was planning to do with it. Will be getting a SATA card soon. It's still in use as a workstation until I can get a Mac Pro though :p
     
  11. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #11
    Snow Leopard Technology: Grand Central Dispatch is now open source
    with references for developers
    http://libdispatch.macosforge.org/


    Perhaps submit feedback on your case?

    Yes, Snow Leopard development tools and a lot of the new technology pushes developers toward 64 bit.

    I think when a good number of apps are fully 64 bit then Apple would probably turn on automatic 64 bit mode.
     
  12. macrumors newbie

    Joined:
    Sep 10, 2009
    Location:
    Oregon
    #12
    Submit feedback where and on what case? My case of running so well in 64-bit mode or so crappy in 32? I'm not sure what you're getting at...
     
  13. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #13
    Sounds like your perception of your experience is different than the norm. Since we cannot confirm anything on a forum, you might want to use apple.com/feedback
     
  14. macrumors regular

    Joined:
    May 31, 2009
    #14
    I turn most of my software to 32bits in order to work with multiclutch
    I seriously did not notice any difference using it in 64bits it's not like any of my software will need ram more than 4g and also my macbook pro max is just 8g.

    what I'm wondering, is there any security improvement in 64bits like how apple state it in safari 4 with 64bits?
     
  15. macrumors 68000

    vansouza

    Joined:
    Mar 28, 2006
    Location:
    West Plains, MO USA Earth
    #15
    My iMac 7,1 reports EFI of 64 and I know the 2.8 Extreme is 64 bit but holding the 6 and 4 keys does nothing... so there must be something else that is a qualifier/disqualifier ... yes?:mad::apple:
     
  16. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #16
    Did you check about your mac?

    Graphic from:
    http://blogs.zdnet.com/Apple/?p=4716
     

    Attached Files:

  17. macrumors 68000

    vansouza

    Joined:
    Mar 28, 2006
    Location:
    West Plains, MO USA Earth
    #17
  18. macrumors member

    jwilcox09

    Joined:
    Oct 22, 2007
    Location:
    Boston
    #18
    Thanks very much for the FAQ, that was very useful.
     
  19. macrumors 68020

    Shake 'n' Bake

    Joined:
    Mar 2, 2009
    Location:
    Albany
    #19
    Looks interesting.

    I did notice that you said SL boots into 32-bit by default. That's true for everything except the Nehalem Xserves, which boot K64.
     
  20. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #20
    I said SL Client boots into 32-bit by default.

    Those Xserves are running SL Server. =)

     
  21. macrumors 6502

    Joined:
    Jul 2, 2007
    #21
    Interesting... my unibody 13in MacBook does the same. 64bit EFI & processor, and holding 6 & 4 does nothing. Weird.
     
  22. macrumors P6

    dukebound85

    Joined:
    Jul 17, 2005
    Location:
    5045 feet above sea level
    #22
    a nice review I had come across via the hackintosh forums

     
  23. macrumors member

    Joined:
    Jul 30, 2008
    Location:
    Pittsburgh, PA area
    #23
    A question on this...

    I seem to remember when I converted a linux machine to 64bit many years ago, there was a noticeable speed increase for applications recompiled for 64bit along with a certain gcc switch (in addition to -march) (forget what it was.) The best explanation I was able to find at that time was that the CPU, in 64bit mode, had access to several more registers.

    I see no reason why that wouldn't be the case for the OSX kernel as well, and if true would mean that applications that make heavy use of kernel (and kernel extension) services in osx would see a performance boost when running against a 64-bit kernel with 64bit kexts as opposed to a 32-bit kernel.
     
  24. thread starter macrumors G5

    Consultant

    Joined:
    Jun 27, 2007
    #24
    OSX is hybrid 32 bit 64 bit system even under 32 bit mode. The other OS 32 bit mode is just the limited 32 bit mode.

    Yes certain types of apps will see performance benefits under 64 bit only (K64), but for most users it doesn't matter at this time.
     
  25. macrumors 68010

    Washac

    Joined:
    Jul 2, 2006
    #25
    Hi

    How do I see if I am booting into 32 or 64 ?

    If I want to change this, how do I do it please ?


    Thanks....
     

Share This Page