Apple has prepared for this for a long time—much longer than I would've preferred. Just like with the more recent moves from 32-bit to 64-bit or even the HIG for the iPhone aspect ratio and pixel density, if a developer isn't updating their code it's probably a good time to find better software.
Unlike with the transition from PPC to Intel, we probably won't have the same issues from MS and Adobe since they've been building wonderful apps for iOS and iPadOS for a very long time. However, if they are lagging behind again due to taking shortcuts with their bloated codebase that makes it hard to transition then you either stick with your Intel Macs or switch apps. By the time you absolutely have to buy an ARM Mac these vendors will not be an issue.
That is easy for you to say, but the reality is much more complex.
What if companies like Autodesk will not port their Maya 3D code to ARM?
Sure, this might be a great example of "bloated codebase" for which you suggest moving to another app, or staying on Intel forever.
Staying on Intel Macs professionally is not a good idea, once that OS is no longer supported by Apple with security updates - at which point Autodesk most likely will also no longer offer latest Maya versions on mac OS.
Yet switching to another application is impossible if your clients dictate that you must use Maya 3D.
At that point I -must- abandon the Mac (or look for another job, I suppose...).
And that would not be by my choice but a choice that Apple forced on me.
"Apple would also not be beholden to Intel" - is this ironic in that Apple now seems to make (almost) every move to increase customer dependence on a proprietary Apple ?
You do realize Apple is using ARM processor architecture with their own additional components. Apple isn't designing or building an entirely different CPU, it's still using the current ARM architecture so they are still at least partially beholden on ARM. The problem with Intel is they are slow as a snail in developing better and faster CPUs. ARM has been the faster developer of new CPUs not Intel so why should Apple continue to be slowed down by Intel?
Apple is not a proprietary computer manufacturer. They have a few Apple-designed components but the vast majority of components are common. Read through an iFixit or other vendors teardown and you'll see all kinds of components without Apple's name on them. Even the bulk of macOS has been open-sourced, https://opensource.apple.com.
Apple is using ARM’s ISA, not reference core designs. It’s GPU & Neural Engine are proprietary. It’s storage controllers, encryption units, video compressors are proprietary. The ARM SoCs are proprietary except the CPU ISA. Outside of the Kernel, the bulk of it’s OS’ are proprietary. Even it’s approach of putting the purpose before the technology is proprietary. That’s why it’s better.
Apple has prepared for this for a long time—much longer than I would've preferred. Just like with the more recent moves from 32-bit to 64-bit or even the HIG for the iPhone aspect ratio and pixel density, if a developer isn't updating their code it's probably a good time to find better software.
Unlike with the transition from PPC to Intel, we probably won't have the same issues from MS and Adobe since they've been building wonderful apps for iOS and iPadOS for a very long time. However, if they are lagging behind again due to taking shortcuts with their bloated codebase that makes it hard to transition then you either stick with your Intel Macs or switch apps. By the time you absolutely have to buy an ARM Mac these vendors will not be an issue.
That is easy for you to say, but the reality is much more complex.
What if companies like Autodesk will not port their Maya 3D code to ARM?
Sure, this might be a great example of "bloated codebase" for which you suggest moving to another app, or staying on Intel forever.
Staying on Intel Macs professionally is not a good idea, once that OS is no longer supported by Apple with security updates - at which point Autodesk most likely will also no longer offer latest Maya versions on mac OS.
Yet switching to another application is impossible if your clients dictate that you must use Maya 3D.
At that point I -must- abandon the Mac (or look for another job, I suppose...).
And that would not be by my choice but a choice that Apple forced on me.
Not feeling good about that at all.
I speak as an iOS developer outside of my daily work, where my current role is doing developer support for another OS, but I have cross-platform development experience over many CPUs and OSes.
Short of them having a meaningful amount of hand-coded/optimized x86-64 CPU media-specific instructions, the transition for those applications should be trivial, assuming they're using the APIs for all the performance-critical things, which the OS provides for the reason that it's best to do that to be portable. Short of that, it should be a simple recompile from x86-64 code to ARM64 code, because the endianness is identical, the size of pointers and whatever Apple will do within them is identical, so it won't have a functional problem.
Just for sanity, of course, it'd make sense to verify with a full test suite of the ARM64 MacOS version, just in case Apple did something amazingly stupid in the transition. Again, I speak of this from having done several years of developer support for another OS for a living
So for the big productivity apps, if they don't port them quickly (where "port" should be a simple recompile with the exceptions mentioned above) then they're just being lazy.
What does it all mean for the chances of a decent file system?
What is wrong with APFS? Not great for spinning rust but it seems very good for SSDs. Any particular complaint?
Nothing wrong with APFS. Very good in fact. I just fear in the move to ARM that file management becomes iPadised. That would be bad.
Don’t worry, macOS isn’t iOS/iPadOS but I would like to see local storage relegated to an iCloud cache. They could even keep the same ‘pinned’ file default with options to unload manually or automatically.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
If you want to "force" developers to follow the switch to ARM, then it makes sense to start with the MacBook Pro instead of other machines. Because the MacBook Pro is, probably, the machine people who use the most variegated set of software are using. If Apple starts with the MBAir then the developers of "pro" software won't feel enough pressure to update (recompile) their software right away. Moreover the CPU "must" be more powerful than the one in the Air and therefore would be in a better shape to run some sort of emulator decently.
Customers buying the MacBook Pro ARM will put enough pressure on Adobe and all the others to update their software. If the "Air" runs it, then major developers will take a "wait and see" approach because of the costs involved in recompiling.
Moreover many developers themselves use MacBook Pros or iMacs for development, so it helps to make such a machine available (developers should, otherwise, build apps either in an Intel emulation of ARM (which probably Apple would like to avoid) or use the Air to develop software for ARM Macs, which doesn't make sense.
Targeting the MB Pro devices also allows Apple to create a "mid tier" CPU for their lineup which it can scale upwards or downwards as necessary (as with the A series CPUs which have A"X" and A"Y" versions)
"Apple would also not be beholden to Intel" - is this ironic in that Apple now seems to make (almost) every move to increase customer dependence on a proprietary Apple ?
You do realize Apple is using ARM processor architecture with their own additional components. Apple isn't designing or building an entirely different CPU, it's still using the current ARM architecture so they are still at least partially beholden on ARM. The problem with Intel is they are slow as a snail in developing better and faster CPUs. ARM has been the faster developer of new CPUs not Intel so why should Apple continue to be slowed down by Intel?
Apple is not a proprietary computer manufacturer. They have a few Apple-designed components but the vast majority of components are common. Read through an iFixit or other vendors teardown and you'll see all kinds of components without Apple's name on them. Even the bulk of macOS has been open-sourced, https://opensource.apple.com.
Apple is using ARM’s ISA, not reference core designs. It’s GPU & Neural Engine are proprietary. It’s storage controllers, encryption units, video compressors are proprietary. The ARM SoCs are proprietary except the CPU ISA. Outside of the Kernel, the bulk of it’s OS’ are proprietary. Even it’s approach of putting the purpose before the technology is proprietary. That’s why it’s better.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
But it's not about profit, it's about control.
Secondly, going with AMD doesn't give them the ability to optimise the chip for MacOS, that's where the real benefits are going to show.
And let's remember, AMD exists because Intel allows them to.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
I think the Afterburner is the Key to why no Macbook Air. Only the pros will survive the change and will all feature an afterburner to distingish them from the iOS devices.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
Remember AMD's Athlon? That brief dominance didn't last. Zen looks more robust, but will it last 10+ years? Apple could be in same situation if Zen stagnates.
If Apple design their own CPUs, they have no one but themselves to blame if the CPUs aren't competitive. Not to mention the control Apple will have (Rayz2016 mentioned this above). The risk/reward is in Apple's favor, IMO.
Would it be possible to make the current Mac Pro a dual processor architecture solution via a plug-in card? So to have a hardware acceleration instead of software emulation? It would be surprising if Apple didn’t think of a viable solution in order to not piss the pros (yet again), giving the short timeframe between releasing the new Pro and announcing the major architecture shift, which must have been in planning for a very long time. Yes, I know, Apple this and Apple that in not losing much sleep over radical transitions, but given the cost of the new Pro systems, this would be a huge slap in the face, even by their standards.
I suspect Apple has a two prong approach planned for the Mac Pro. First is a simple Intel Xeon CPU upgrade in the future as appropriate. The CPU is socketed in the current Mac Pro and the motherboard could easily be replaced. I don’t know the implications for things like PCIE 4.0 and above though.
But Apple must want to showcase their CPU design chops and what better place than the top of the line Mac Pro. If they can produce a 64 core Mac Pro that doubles the performance of the current 28 core Xeon, why wouldn’t they want to do that? We already know that there are companies producing 64 core ARM and above CPUs so it is certainly possible for Apple to do the same. For marketing reasons alone, making a new Mac Pro that destroys the current Intel Xeons would be a major win for Apple.
Making a CPU with 64 cores on it is one thing, but doing that while also providing enough memory bandwidth to be effective is another, without going to NUMA designs, where NUMA means Non Unified Memory Architecture: a number of CPU cores are grouped (theoretically down to 1) for each having shared access to main memory for those cores, and very limited sharing of memory between other groups of cores, because memory bandwidth can’t satisfy all the desired cores: they’re kept waiting on main memory most of the time, and have horrible cache coherency latency issues beyond a certain point.
Applications need to be architected in different ways than most are before NUMA is not a performance loss, or any given application can only use so many cores and be effective, while other applications use the other cores, with a minimal amount of sharing between them.
Most probable for heavy CPU threading scenarios is they’ll benefit with fewer faster cores far more; Amdahl’s Law defines the limits as to how linearly you can scale performance by adding more threads to a problem due to communication and synchronization overhead, and RAM throughout limitations combined with CPU cache coherency quickly make most processing tasks far less efficient: it’s even entirely possible and common that the more threads and cores you throw at a task, the slower it gets, to where you lose total throughout with a given larger number of cores than if you just used fewer cores of the same speed.
Consider in a more limited basis in smartphones: how much value was it for octocore Android devices? Not much!
Thanks for providing a voice of reason backed by solid, fundamental computer engineering knowledge. The "quest for cores" has become this decade's "megapixels mania" with so little end-user understanding of the memory implications that are inherent with all von Neumann architectures, which have been the overwhelmingly prevalent architectural model since the 1950s. While enormous advances have been made in the areas of fabrication, miniaturization, efficiency, and increasingly clever mitigation of von Neumann limitations, the ultimate architectural bottlenecks still exist, because mitigation does not equate to elimination.
Apple's move to ARM will no-doubt provide further mitigation and continuing end-user benefits. More significantly, Apple's strategy with its ARM chips does appear to be focused on working "smarter" rather just "harder." Apple isn't simply throwing more cores at the problem, they are making sure they have the right types of cores to provide the best overall user experience from their system, including power efficiency and run time, in addition to raw performance. The benefits of Apple's CPU strategy are very evident in their iPhone and iPad product lines. A move to ARM on the desktop will allow Apple to also work smarter on those platforms and in those environments to bring even more significant benefits to their customers than what they are able to achieve when relying on someone else's architecture.
Quite simply, Apple's move to ARM gives them an entirely new set of levers and knobs to tweak to extract the most value from owning the whole hardware+software stack. This will give them an enormous advantage over their competitors for the time being.
I originally assumed only low-end Macs would go to ARM initially, but thinking about this more, if all the Apple software professional users work with (I stress, Apple Software) can run on ARM (as in Apple have secretly developed it already), and if it runs far better, then there is an argument for the MBP and iMac Pros going over first. Of course, Adobe will be the company to watch. Is it possible, for once, they are on board early? Could this be why we have seen many advances in Adobe software on the iPad Pro already? Was it a spin-off from macOS ARM Adobe versions already in development?
I am very excited to watch the WWDC today, more than I have been in a long time. I wonder if once again, Rosetta will come to the rescue.
What does it all mean for the chances of a decent file system?
What is wrong with APFS? Not great for spinning rust but it seems very good for SSDs. Any particular complaint?
Nothing wrong with APFS. Very good in fact. I just fear in the move to ARM that file management becomes iPadised. That would be bad.
Access to the file system has nothing to do with being on ARM v Intel or any other architecture Apple has used. It'll still be macOS on ARM just like it was macOS on Intel and PCC.
Yes, but if apple is trying to push tags instead of directories, I fear. An OS issue that they will use silicon changes to push at the same time. Maybe I am being too paranoid.
I don't foresee Apple doing that, but even if they do, they can do that regardless of the architecture macOS runs on so if you're going to have that fear you should also have it with Intel Macs.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
Remember AMD's Athlon? That brief dominance didn't last. Zen looks more robust, but will it last 10+ years? Apple could be in same situation if Zen stagnates.
If Apple design their own CPUs, they have no one but themselves to blame if the CPUs aren't competitive. Not to mention the control Apple will have (Rayz2016 mentioned this above). The risk/reward is in Apple's favor, IMO.
Not to mention Apple also has all the other Apple devices in co-development, so probably a far larger base of hardware using the technology that any other even PCs these days. That shared R&D will be just mind boggling for the cross-device benefits.
Regarding the Mac Pro. If Apple's own CPUs are pennies on the dollar compared to using Intel Xeons I wonder if the next gen Mac Pro might not be a massive multi-processor beast? A veritable super-computer (dare I say Cray?) on your DeskTop.
Moving to AMD Zen 3 and beyond would be a seamless and zero cost direction! While increasing profits, lowering prices and increasing performance. Moving to ARM is a 5 year head ache where in fact ARM will never match nor surpass AMD.
I can't wrap my head around this constant push for AMD in light of what is happening. It's never going to happen. If that was ever on the table it was over a decade ago. And where is your evidence that ARM can neither match nor surpass AMD in performance per watt?
Comments
Short of them having a meaningful amount of hand-coded/optimized x86-64 CPU media-specific instructions, the transition for those applications should be trivial, assuming they're using the APIs for all the performance-critical things, which the OS provides for the reason that it's best to do that to be portable. Short of that, it should be a simple recompile from x86-64 code to ARM64 code, because the endianness is identical, the size of pointers and whatever Apple will do within them is identical, so it won't have a functional problem.
Just for sanity, of course, it'd make sense to verify with a full test suite of the ARM64 MacOS version, just in case Apple did something amazingly stupid in the transition. Again, I speak of this from having done several years of developer support for another OS for a living
So for the big productivity apps, if they don't port them quickly (where "port" should be a simple recompile with the exceptions mentioned above) then they're just being lazy.
Customers buying the MacBook Pro ARM will put enough pressure on Adobe and all the others to update their software. If the "Air" runs it, then major developers will take a "wait and see" approach because of the costs involved in recompiling.
Moreover many developers themselves use MacBook Pros or iMacs for development, so it helps to make such a machine available (developers should, otherwise, build apps either in an Intel emulation of ARM (which probably Apple would like to avoid) or use the Air to develop software for ARM Macs, which doesn't make sense.
https://www.macrumors.com/2020/06/22/apple-rosetta-japan-trademark/
Secondly, going with AMD doesn't give them the ability to optimise the chip for MacOS, that's where the real benefits are going to show.
And let's remember, AMD exists because Intel allows them to.
I think the Afterburner is the Key to why no Macbook Air. Only the pros will survive the change and will all feature an afterburner to distingish them from the iOS devices.
Apple's move to ARM will no-doubt provide further mitigation and continuing end-user benefits. More significantly, Apple's strategy with its ARM chips does appear to be focused on working "smarter" rather just "harder." Apple isn't simply throwing more cores at the problem, they are making sure they have the right types of cores to provide the best overall user experience from their system, including power efficiency and run time, in addition to raw performance. The benefits of Apple's CPU strategy are very evident in their iPhone and iPad product lines. A move to ARM on the desktop will allow Apple to also work smarter on those platforms and in those environments to bring even more significant benefits to their customers than what they are able to achieve when relying on someone else's architecture.
Quite simply, Apple's move to ARM gives them an entirely new set of levers and knobs to tweak to extract the most value from owning the whole hardware+software stack. This will give them an enormous advantage over their competitors for the time being.