why use a 64 bit kernel?

Discussion in 'macOS' started by Luis Ortega, Oct 2, 2010.

  1. Luis Ortega macrumors 6502a

    Joined:
    May 10, 2007
    Location:
    Fetcham Surrey UK
    #1
    I held down the 6 and 4 keys and booted up into 64 bit kernel on my mac pro 3.1 fine.
    I checked and all my extensions are 64 bit, but not all software is.
    So far, all of my stuff works fine- the printer, scanner, trackpad, revolution mx mouse and web cam, as do all of the programs that I have tried to use.
    What is the benefit of running my mac in 64 bit kernel?
    Can I set something so that it will automatically boot up in 64 bit every time?
     
  2. Hellhammer Moderator

    Hellhammer

    Staff Member

    Joined:
    Dec 10, 2008
    Location:
    Finland
    #2
  3. gnasher729 macrumors P6

    gnasher729

    Joined:
    Nov 25, 2005
    #3
    You will not notice a difference. Where 64 bit kernel gets important is when you have a Mac with 64 or 128 GB of memory.
     
  4. twcbc macrumors member

    Joined:
    Jul 24, 2010
    #4
    In OSX, kernel manages data I/O between OS and hardware. 64-bit kernel don't improve any computing power of your existing hardware but it will benefit overall system performance when running application that requests I/O data heavily. Data I/O here means OS to access memory, read/write hard drive, send/receive data through ethernet, or do all above at the same time. That's why Apple already give Mac pro 64-bit kernel as default setting.

    So, you really don't need 64GB or 128GB to know there is different between those two. If 64-bit kernel run well on your Mac, I would recommend you keep it. It won't bite you.:D
     
  5. karohan macrumors 6502

    Joined:
    Jun 25, 2010
    #5
    What happens if you are in the 64 bit kernel and you have certain 32 bit applications (like Adobe CS 4). They still run, but are they utilizing the 64-bit power at all? I thought OS X booted into its 32-bit mode so that it would maintain application compatibility and still be able to tap into the extra abilities of 64-bit when running 64-bit applications. How is this any different from running the 64-bit kernel?
     
  6. paeza macrumors regular

    paeza

    Joined:
    Oct 23, 2006
    Location:
    Canberra, Australia
    #6
    really wanna know as well
     
  7. twcbc macrumors member

    Joined:
    Jul 24, 2010
    #7
    Kernel is nothing to do with your application which is running on high level of OSX. You can have 32bit or 64bit application running on either 32-bit or 64-bit kernel. Kernel is in low-level of OSX work as a agent of OS to manage data I/O. "Low level" here means hardware level, not imply less-important. Most people fail to work with 64-bit kernel due to lacking proper driver.

    What happen if people have OSX10.6 running on 32-bit kernel? Nothing. That means you have 64-bit on high level of OS and 32-bit on low level. Just like OSX10.5. Be aware of OSX10.5 is also capable to run 64-bit application. The problem is, no software vendor, Apple included, would like to provide 64-bit application on OSX10.5.

    Apple play a sneaky selling skill when promoting "64-bit" of 10.6. Leading many to believe it's a completed 64-bit OS. But actually it just re-write most of Apple applications, mail, finder, safari, etc... to make it a 64-bit application. The fact is Apple would not give their customer a free 64-bit application update. They want to charge it. So call it SnowLeopard.
     
  8. chrono1081 macrumors 604

    chrono1081

    Joined:
    Jan 26, 2008
    Location:
    Isla Nublar
    #8
    To the op.

    I have no clue why people are suggesting that you don't see benefits from 64 bit. This is completely incorrect. If you have 4 gigs of ram or more and applications that can utilize that extra ram you will see a difference.

    That being said it does matter what apps you are using and if they will use more then 4 gigs of ram. With applications like Maya or CS5 you will see a difference.

    EDIT: Oops!!! Sorry OP I misread your original post. I thought you were talking about running applications in 64 bit not the kernel.
     
  9. toxic macrumors 68000

    Joined:
    Nov 9, 2008
    #9
    a 64-bit OS and 64-bit kernel aren't the same thing. OSX will recognize and use whatever memory ypu have whether or not you're running the 64-bit kernel.
     
  10. Hellhammer Moderator

    Hellhammer

    Staff Member

    Joined:
    Dec 10, 2008
    Location:
    Finland
    #10
    32-bit kernel can run 64-bit applications. You won't see any RAM benefits from 64-bit kernel unless you have more than 32GB of RAM (need to boot into 64-bit in order to utilize +32GB). Even when running 32-bit kernel, your CS5 and Maya can utilize +4GB of RAM as they are running in 64-bit.
     
  11. chrono1081 macrumors 604

    chrono1081

    Joined:
    Jan 26, 2008
    Location:
    Isla Nublar
    #11
    Oops sorry I misread the original post :eek: I was thinking everyone was talking about running applications in 64 bit not the kernel. (I just woke up please forgive me :p)
     
  12. maflynn Moderator

    maflynn

    Staff Member

    Joined:
    May 3, 2009
    Location:
    Boston
    #12
    Most people, and most apps will not see any benefit to using the 64bit kernel.
     
  13. twcbc macrumors member

    Joined:
    Jul 24, 2010
    #13
    Most people, and most app will not see any benefit to use GDDR for GPU. Would you prefer a SDR instead of GDDR one? :D
     
  14. maflynn Moderator

    maflynn

    Staff Member

    Joined:
    May 3, 2009
    Location:
    Boston
    #14
    Actually with most modern Operating Systems moving more work to the GPU, they will ;)
     
  15. twcbc macrumors member

    Joined:
    Jul 24, 2010
    #15
    Not in OSX.:D

    Actually 64-bit kernel handle more task than GPU. Saying most applications won't benefit from 64bit kernel is just wrong.
     
  16. Nate4747 macrumors regular

    Joined:
    May 7, 2006
    Location:
    Missouri
    #16
    64 vs 32 bit refers to the instruction set of your processor. 64 bit instructions are 2 times as wide as 32 bit instructions, which allows for more complexity and more address space.

    Almost every modern 64 bit processor also implements the 32 bit instruction set. Intel and other manufacturers do this to ease the transition between architectures. It is also a very simple thing for intel to do, since 32 bit instructions can run on 64 bit hardware with almost no modification. 64 bit instructions cannot run on 32 bit hardware, however; the hardware simply isn't built for it.

    Mac OS X and several versions of Linux use a kernel that runs in 64 bit mode, while maintaining compatibility for 32 bit applications. This is possible because both instructions sets are implemented on the CPU, so there is no translation occurring; this is NOT like using Rosetta to run PPC applications on an intel Mac. The only performance hit is that 32 bit applications will take up slightly more memory running on a 64 bit system, and you can see why: a 32 bit instruction running on a 64 bit chip 'wastes' up to 32 words. And while this seems dramatic, you should know that there are optimizations in place to prevent the extraneous memory footprint from being too bad.

    So, what are the benefits of running the strict 64 bit mode? Nominal, unless EVERYTHING you run is 64 bit compatible. If you attempt to run 32 bit applications in this mode, they won't work.

    What are the downsides of running the default OS X kernel (which IS 64 bit, with 32 bit compatibility)? None that you will notice. If an application is built for 64 bit architecture, It will run with 64 bit instructions and be able to address as much memory as is available. If it is built for 32 bit only, it will use 32 bit instructions and be limited to addressing 4GB of memory. This operation is largely transparent, as most applications are distributed with compiled versions for 32 and 64 bit in a single package; your system will run the correct version based on the system's capability.

    Will applications benefit from 64 bit? Absolutely, IF the developer optimizes and compiles them to use 64 bit. Don't be confused about this point, you can't make your system perform better by forcing it into 64 bit mode if your applications aren't built for it.
     
  17. mac2x macrumors 65816

    Joined:
    Sep 19, 2009
    #17
    The current OS X kernel is a universal binary, and on most Macs it defaults to architecture i386 (i.e. 32 bit).

    Code:
    file /mach_kernel
    Code:
    /mach_kernel: Mach-O universal binary with 3 architectures
    /mach_kernel (for architecture x86_64):	Mach-O 64-bit executable x86_64
    /mach_kernel (for architecture i386):	Mach-O executable i386
    /mach_kernel (for architecture ppc):	Mach-O executable ppc
     
  18. sjinsjca macrumors 68000

    sjinsjca

    Joined:
    Oct 30, 2008
    #18
    There's a lot of misinformation out there, including on this thread.

    Under the 32-bit kernel, it is true that the OS will be able to address as much RAM as you will ever stuff in any Mac you're likely to have. But individual applications are limited to 4GB, which can make a difference for heavy image and video work and (in my case) virtual machines. In those cases, if your machine has more than 4GB of RAM, such applications will benefit from it if compiled for 64 bit.

    In addition, the x86-64 command-set extensions offer execution efficiencies that can add a few percent to your machine's throughput. Enough to feel a little crisper.

    There are trade-offs. iPhone USB tethering was supported in 64-bit as of 10.6.3 but broke in a recent update of some sort (perhaps of iTunes-- it's being investigated). You can still tether (slowly) via Bluetooth but if you want USB tethering you must, for now, boot in 32-bit mode if you need USB tethering.

    Some low-level drivers are not 64-bit compatible. But there's an excellent chance that all will be fine. 64-bit mode is also a little bit more secure.

    So: 64-bit is great if you do really heavy-duty pounding of your Mac in industrial-strength 64-bit-aware applications such as certain imaging, video or virtual machine applications. Otherwise you probably won't notice the difference.

    There's a rather good Wikipedia article on the x86-64 extensions: http://en.wikipedia.org/wiki/X86-64
     
  19. Luis Ortega thread starter macrumors 6502a

    Joined:
    May 10, 2007
    Location:
    Fetcham Surrey UK
    #19
    I noticed that photoshop cs3 can only use 3 gb of my 16 gb ram, while photoshop cs5 can use as much as 16 gb ram.
    I used to set photoshop to use about 85% of my ram so that the system still had some to work with.
    I still do that in cs5, so it gets about 14 gb to use.
    But I also still have cs3 installed and I was wondering if I could set that to 100%, or 3gb, since the systems would still be able to use other ram in the computer?
     
  20. Hellhammer Moderator

    Hellhammer

    Staff Member

    Joined:
    Dec 10, 2008
    Location:
    Finland
    #20
    Photoshop CS3 is 32-bit thus it cannot utilize more than ~3GB of RAM. CS5 is 64-bit and can thus utilize all RAM you have in your Mac, no matter what kernel you're running (well, you need 64-bit kernel to address more than 32GB)
     
  21. karohan macrumors 6502

    Joined:
    Jun 25, 2010
    #21
    So if I am in the default OS X kernel (not the 64-bit one), and am running a 64 bit application, it still won't be able to access more than 4gb of RAM? And to clarify, if I'm using a 32 bit application like Photoshop CS 4, it wouldn't be able to use 4gb anyway b/c its 32-bit.
     
  22. sjinsjca macrumors 68000

    sjinsjca

    Joined:
    Oct 30, 2008
    #22
    That's my understanding.
     
  23. TinHead88 macrumors regular

    TinHead88

    Joined:
    Oct 30, 2008
    #23
    Just to clarify:
    The only reason you might not want to run the Kernel in 64bit is because there is some hardware that is still not compatible.

    I don't have any hardware other than my Apogee Duet (which has been 64 bit compatible for a long time) which has driver-Kernel interaction. So I have been running with 64 bit Kernel for many months now without any issues. Initially I did get the impression that things were a bit faster/snappier/smoother, but of course one gets used to it and now I can't be sure.

    You can always test it to see if makes a difference, but make sure there are no old devices connected which require drivers to be installed and are listed as not 64 bit compatible.

    Hardware is the only issue here. The software takes care of itself.
     
  24. iThinkergoiMac macrumors 68030

    Joined:
    Jan 20, 2010
    Location:
    Terra
    #24
    No, if you are running a 64-bit application it will be able to address as much RAM as it you have in there, well over 4 GB if necessary. The kernel will not, but that's generally not a big deal. If you have over 32 GB RAM, the kernel will run out of space to properly address all that RAM, so then 64-bit mode for the kernel is a good idea.
     
  25. maflynn Moderator

    maflynn

    Staff Member

    Joined:
    May 3, 2009
    Location:
    Boston
    #25
    Only if you have > 32GB of ram. The benefits of a 64bit kernel are largely over blown. As others and myself have stated. The 32bit kernel can access more then 4GB of ram.
     

Share This Page