7

We're trying to decide how much effort to put into ensuring that our software works well in 32-bit mode. (It's scientific software that must handle large datasets, so ensuring that it works well does not only mean building universal binaries, but also designing around address-space limitations.)

Q: In what year were the last Macs sold that, out of the box, could not run 64-bit applications?

By "out of the box," I mean in the hands of naïve users that do not upgrade the OS, choose different kernels, or change the system configuration from the default in any significant way.

  • If you are asking about "naïve users" that don't "choose different kernels", then I think you need to rephrase your question. Macs have been 64-bit capable for quite a long time, but whether the 64-bit kernel is loaded by default is a different question. For example, the Mac Pro has had 64-bit processors since the initial model in 2006, but has only booted into the 64-bit kernel by default since the Mid-2010 model. – tubedogg Aug 21 '13 at 21:52
  • 1
    If they couldn't run 64-bit programs without switching to a non-default kernel, then for my purpose they were 32-bit machines until mid-2010. – Vebjorn Ljosa Aug 21 '13 at 21:54
  • 3
    My point exactly - your question as phrased allows for nearly every Mac (save for the initial Intel models shipped with Intel Core Solo and Intel Core Duo processors). I would suggest rephrasing as "In what year were the last Macs that did not boot into the 64-bit kernel by default sold?" – tubedogg Aug 21 '13 at 21:57
  • To me, and everyone else in my office, "In what year were the last Macs that were not capable of running 64-bit software sold?" is synonymous with "In what year were the last Macs made that booted into 32-bit ONLY?" Cannot run 64-bit = can only run 32-bit, unless you want to travel way back into the days of 8-bit and 16-bit processors. Plainly, a device made in 2011 that runs 32-bit by default, but CAN run in 64-bit mode, does not meet that criteria. – Dave Aug 22 '13 at 0:05
  • 1
    Note that even 32 bit kernels can run 64 bit programs since Tiger (I think) – Mark Dec 2 '14 at 14:04
9

EDIT: Based on the comments on the question and this answer, I think the link Mac OS X v10.6: Macs that use the 64-bit kernel is much more relevant.

Basically, only the mid 2010 Mac Pro, the early 2011 MacBook Pro and the mid 2011 iMac were booting by default on 64-bit mode with Snow Leopard. Since Lion (mid 2011) every new Mac is 64-bit only.

So to answer your question:

In what year were the last Macs that were not capable (without user tweaking) of running 64-bit software sold?

==> 2011

EDIT 2: As Vebjorn Ljosa mentioned in the comments, having the kernel run in 32-bit or 64-bit mode makes little difference for your binary, so you can probably assume that Macs sold after mid 2007 will run a 64-bit app (based on the data just below).


  • Mac mini:
    • last 32-bit only processors: late 2006
    • oldest 64-bit capable processors: mid 2007
  • iMac:
    • last 32-bit only processors: early 2006
    • oldest 64-bit capable processors: late 2006
  • Mac Pro:
    • always been 64-bit capable
  • MacBook:
    • last 32-bit only processors: early 2006
    • oldest 64-bit capable processors: late 2006
  • MacBook Pro:
    • last 32-bit only processors: early 2006
    • oldest 64-bit capable processors: late 2006
  • MacBook Air:
    • always been 64-bit capable

So it seems the last Mac to sell with a 32 bits only processor was the late 2006 Mac mini.

  • Aren't those Wikipedia entries for "Kernel Default Mode", meaning that they had capabilities of both, but defaulted to one or the other? – Dave Aug 21 '13 at 21:33
  • Thanks KyleCronin, fixed it. @Dave, if your are talking about the Mac Pro, I looked up every processors and based my results on the "Instruction set" entry. – Guillaume Algis Aug 21 '13 at 21:38
  • I don't dispute your findings, but Apple's own site says the Mac Pro 2009 was 64-bit, as does the site I linked in my response. (See support.apple.com/kb/SP506) – Dave Aug 21 '13 at 21:42
  • 1
    @GuillaumeAlgis Your entries for Mac Pro are incorrect. All Mac Pro models since the first in 2006 have had 64-bit processors. See this, showing that the Dual-Core Intel Xeon which shipped in the 2006 model was 64-bit. The date you are listing is the first model which booted into the 64-bit kernel by default. – tubedogg Aug 21 '13 at 21:55
  • 1
    Isn't it true that Macs with 64-bit processors could run 64-bit applications even if the kernel was 32 bit? – Vebjorn Ljosa Aug 22 '13 at 17:24
3

In this aspect, Apple "retreated" a little when it switched to Intel processors. At that time, All G5 PPC based Macs were 64bit, and the introduction of the first Core-Duo brought new 32-bit Macs to the market, when they were already phasing out 32-bit. Not for long though.

I clearly remember Steve Jobs Keynote in WWDC 2005, apologetically explaining the move to Intel, to be mainly due to "the solid processor roadmap presented by Intel to him, versus the declining interest of IBM in low-energy desktop computing".

Last, my friend, you can very confidently forget about 32bit if you're developing an application. Xcode's "standard architecture" for a Mac target is 64bit only, and Apple has neglected the Obj-C runtime in 32bit for few years already.

This means - no ARC, no auto synthesis of Properties, fragile isa objects, and much much more. Building Universal or 32bit imposes grave limitations on your development.

2

The Core Duo was the last 32-bit processor. So I think those were from around 2006, when Apple first switched to Intel processors.

Edit:

See Apple History for more information.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .