ARM Mac coming in first half of 2021, says Ming-Chi Kuo

1234568»

Comments

  • Reply 141 of 149
    melgrossmelgross Posts: 33,510member
    asdasd said:
    melgross said:
    asdasd said:
    melgross said:
    asdasd said:
    melgross said:
    melgross said:
    asdasd said:
    melgross said:
    lkrupp said:
    Any ideas on how Apple will handle the X86 code of current apps to run on ARM architecture? I am not educated on this. Is ARM close enough to X86 that the transition will be easy or will it require a Rosetta-like translation framework like the move from Moto 68000 to X86 did. Will we have universal binaries again or something else during the transition?
    This is the problem I’ve been wondering about for some time. While some people dismiss this as an issue, or in most cases, don’t even think about it (aren’t aware it is an issue), it’s the biggest issue apple will need to deal with. In previous changeovers, even Apple was very lax in getting their own big apps out. It took a year for them. It took a long time for Adobe and Microsoft, with their massive software, to come over too.

    ARM is not close to x86. It’s optimized for battery life over performance. Apple and ARM have made significant advances on that front, but the instruction sets are different enough. We know from previous attempts at emulation, that a processor family needs to be 5 times as powerful in order to be able to run software at the same speed as the family they’re emulating. This hasn’t changed. Microsoft supposedly does it now, with their “universal” sdk. But they don’t, really. They require software to be rewritten, and recompiled for ARM. And there have still been issues with performance, specific features and bugs.

    im not saying it can’t be done, because obviously it can. But if Apple is really going to release a device next year, there will either be significant limitations, or they’ve figured out a way around them. My suggestion, which no one here has ever commented on, from my memory, is to add a dozen x86 instructions to the chip. It’s been found that 80% of the slowdown between chip families is from about a dozen instructions. The chip, or OS, could hand that over to those when native x86 software needs them. Individual instructions aren’t patented, or copyrighted, as far as I know. If true, that would give Apple a way around the problem.
    I can’t emphasise enough that the vast majority of apps produced for the Mac right now will be a recompile and some won’t even need that. The compiler is doing the work if you use the Apple tool chain. 

    Dont confuse the compiled machine code with the higher level frameworks that might be used. 
    You shouldn’t, because it’s a myth. Yes, small apps can be recompiled, and will often work without more revision other than to fix bugs that always creep in when recompiling. But anything else needs to be rewritten.  It seems that people here forget the announcements that some developers have made during these transition periods in Apple demonstrations. They come out and announce how easy it was to get their massive app up and running in just a weekend. But then, it actually takes six months, or more, before that app is released. Why, because for the demo, they showed a few chosen features that worked out, after frenzied work. But the rest needed a good deal of work to function properly.

    its incrediably naive to think that this will be easy.
    I laugh when I read you making these insane claims.  If it takes a company 6 months to move only from one CPU to another CPU, where the APIs are identical, and they're not adding features/rewriting their applications in any meaningful way, then they're grossly incompetent.  Consider that when a new CPU/system comes out, they don't want to look bad compared to others, and it's a great time to add new features to show off the new CPU, assuming it gives any added power.  Short of them coding to the lowest-level CPU instructions for multimedia encoding/decoding or the like, assembly language is a major waste of developer time: incredibly few applications will get anything resembling the time/effort/cost back by rewriting anything in assembly language, because compilers more often than not do a better job with optimizations these days than the majority of the best hand-coded assembly language implementations.

    When you talk of developers needing to rewrite their applications because of a new CPU, even a new family/ISA where all that's changed is the CPU architecture? NOBODY REWRITES ANY MAJOR CODE FOR THAT!  That's insanely stupid for many reasons (including economically) and plain WRONG.  No major operating system is unable to be readily  rebuilt for other CPUs with only a very tiny amount of low-level assembly, and 99.99%  (admittedly, a number that's guessed, but no more than your no-proof data) of user applications in the last 10 years won't have any hand-coded assembly, regardless of their size. 

    The lowest-level language you'll find used in that percentage of apps these days is C.  While you can write it in a not-fully-portable manner because the C/C++ standards leave some details to the implementation of the vendors, it's actually very straightforward, even if you do convert between CPU architectures, to make the required changes to have the code work as it did before: it's not rocket science, it's not even interesting computer science.  If they do find a need to fix it to be portable, then they should ensure they never need to fix that again.

    For most applications, it truly is as simple as flipping an Xcode selection, as long as you've written in a reasonably portable way.  It's not hard in Objective-C/C/C++ to do so, and Swift makes it easier.  Switching from 32-bits to 64-bits had the biggest change with Apple changing from regular floats to double floats for CGFloats, but that's not nearly the hardest thing to fix.  You don't know what you're talking about.

    Yes, it took Apple a YEAR to bring Final Cut over. More than a half year to bring LOGIC pro over. It took both Adobe and Microsoft a year as well. It took WolframAlpha (the company doing the demo) about 7 months to move over. There are numerous other examples.

    of course, by your thinking, they are all incompetent.
    You realise this isn’t the same thing, right? In the os 9 to OS X days devs had to change the api they were calling (a process called carbonisation) from the old OS 9 code to a subset of this api, which for some devs was difficult because they used some low level and often dangerous features that were removed.

    in the move to 64 bit some lower level c type structures had to be changed. That’s done now. 

     To move to arm today, if the developers are using the Apple compilers, there should be no change in the api. No change in the api means no work. 
    Oh my lord. It’s amazing how dreamy eyed some people are. It’s always work.
    Well yes. There’s a switch in Xcode so theres that work for apps not already uploaded as bitcode. 

    This thread shows a major problem with the world; opinions presented as facts.  The idea that every opinion is equally worthwhile. 

    Please show your workings out. What exact api do you expect developers will have to change when building in Xcode? I’m saying the compiler will do the work, or Apple will have failed. 

    So what APIs won’t port? 
    It’s not API’s as much as it is basic chip instructions. ARM lacks a number of x86 instructions that will need to be emulated in software, just as we have found in the past with other changeovers. This is nothing new.
    why would an application compiled to ARM need i86 instructions? And why do you think higher level developers would need to care, anyway, 
    Because going from one processor family to another always results in missing and differing instructions. The instruction sets are different. When the processor doing the emulating doesn’t have several instructions, those instructions can’t be mapped directly to the hardware, so they need to be emulated in software. Software can be 10 to 100 times slower.

    look up emulation of different processor families, and you’ll see what I mean. I’m not going to continue this line of discussion.
    edited February 2020
  • Reply 142 of 149
    Here's how this is all likely to shake out.  

    1. Apple will eventually produce a new 5nm CPU design built for laptops based on the previous work of the mobile A13 Bionic SoC.  Except it will have a higher clock speed, more highspeed and power efficient cores and it will likely consume more power yet still have all the advanced transistor level power management found in the A13. It will need to be significantly better on Performance Per Watt than Intel. It may not even require heat pipe and fan cooling.  The first generation may or may not have an advanced integrated GPU alongside a discrete video chipset. Apple might surprise everyone and integrate a GPU that is far better than Intels integrated designs and could quite possibly give the discrete AMD / nVidia a run for their money by creating something specifically optimized for Metal 2/3.  Whatever they decide to ship it's going to be impressive. It remains to be seen what they will release. Both Intel and AMD are a decade deep into R&D before a new CPU comes to market. Apple is years ahead of other ARM designs. Perhaps a lean mean Apple design team will pull a rabbit out of it's hat. They certainly have none of the constraints that plague Intel / AMD / nVidia.  That could mean radical departures from legacy designs because Apple doesn't have to be backward compatible like Intel / AMD / nVidia.  
    2. Running Windows dual boot will not likely be possible on this architecture unless Microsoft releases a compatible ARM version of Windows 10.  Which they have but it might not run on this new architecture, at least it won't run as well as Apple's macOS which obviously would be optimized for it. That's providing that Microsoft distributes an ARM Win10 which they only provide in a limited basis.
    3. You have to remember that Mac OS X is derived from NeXTSTEP / OpenStep and was always highly processor-independent (Intel/PA-RISC/SPARC/PowerPC). This same capability enabled Apple to port the foundations of Mac OS X to create iOS on ARM.  Apple likely had an Intel version running internally since day one of Mac OS X shipping. In the NeXT App Package there were multiple binaries for each supported hardware architecture.  This could still be done by checking boxes in Xcode cross compiler options for Apps not in the App Store.  However anything in the App Store could break out the binaries so you only download the binary you need.  So if you are Intel you receive the x64 binary if you are ARM you receive that binary. If you download from an independent software developer, you get both or have individual downloads to choose from.  There will be no need for a Rosetta like translation layer because Apple could support both Intel and ARM at the same time until the entire lineup is ARM. Rosetta was required because back then people bought software on DVD and kept it longer. Now that digital App Store distribution, downloads, and subscriptions with annual or even monthly updates are the norm, it doesn't make much sense.  
    4. Will they ship a new ARM SoC in the MacBook Air or will they reintroduce the MacBook lineup? Or will this new ARM be so incredible they release multiple models at the same time including MacBook Pros?  Time will tell.  Why haven't we seen an A13X for the iPad? Maybe they have more magic up their sleeve and since the A12X is still kicking butt and taking names they will just wait for the A14 and perhaps 5nm production or it may be the A15 before 5nm production is ready.  
    5. Intel 10nm / 7nm / 5nm production is not the same thing as TSMC.  But TSMC is manufacturing the new AMD EPYC and GPU chiplets. They also manufacture the Huawei Kirin 980 SoC as well as Apple Bionic SoCs. Qualcomm, Altera, Broadcom, Conexant, Marvell, NVIDIA, and VIA are also customers of TSMC.  TSMC is faster at reaching a smaller nanoscale but Intel's designs and manufacturing process varies.  At the same time TSMC is reaching the goals of smaller nanoscale faster than Intel.  Intel is a behemoth and as such is slow and they became lazy when AMD was no longer a threat. They are also beholden to Cloud data center customers whose demand for CPUs is so intense they will take what they can get and be happy about it. TSMC stated that their 5nm process could increase logic density by 1.8x and boost operation speeds by 15% or reduce its power consumption by 30% on ARM CPU cores. Will they be ready for 2021? Well in 2019 they were up to 50% yields compared to 7nm yields. 

    Overall, yes. Apple will likely take their ARM SoC designs to another level.  But knowing Apple it won't happen until they are ready for it to happen.  They are not worried about AMD and others taking the lead.  They will release when the time is right.  When TSMC can produce enough yield to meet Apple's needs and when Apple's designs are solid and ready to surprise everyone.  When the OS designs are ready and the developer API / SDKs are ready, etc.  They will likely announce new hardware alongside WWDC announcements and demonstrating all the changes developers will need to know.  I am not even sure if such a large undertaking would be placed into just a MacBook / MacBook Air.  They might wait until they can do the MacBook Pro at the same time.  The future is bright and exciting.  
  • Reply 143 of 149
    mattinozmattinoz Posts: 2,322member
    Here's how this is all likely to shake out.  

    1. Apple will eventually produce a new 5nm CPU design built for laptops based on the previous work of the mobile A13 Bionic SoC.  Except it will have a higher clock speed, more highspeed and power efficient cores and it will likely consume more power yet still have all the advanced transistor level power management found in the A13. It will need to be significantly better on Performance Per Watt than Intel. It may not even require heat pipe and fan cooling.  The first generation may or may not have an advanced integrated GPU alongside a discrete video chipset. Apple might surprise everyone and integrate a GPU that is far better than Intels integrated designs and could quite possibly give the discrete AMD / nVidia a run for their money by creating something specifically optimized for Metal 2/3.  Whatever they decide to ship it's going to be impressive. It remains to be seen what they will release. Both Intel and AMD are a decade deep into R&D before a new CPU comes to market. Apple is years ahead of other ARM designs. Perhaps a lean mean Apple design team will pull a rabbit out of it's hat. They certainly have none of the constraints that plague Intel / AMD / nVidia.  That could mean radical departures from legacy designs because Apple doesn't have to be backward compatible like Intel / AMD / nVidia.  
    2. Running Windows dual boot will not likely be possible on this architecture unless Microsoft releases a compatible ARM version of Windows 10.  Which they have but it might not run on this new architecture, at least it won't run as well as Apple's macOS which obviously would be optimized for it. That's providing that Microsoft distributes an ARM Win10 which they only provide in a limited basis.
    3. You have to remember that Mac OS X is derived from NeXTSTEP / OpenStep and was always highly processor-independent (Intel/PA-RISC/SPARC/PowerPC). This same capability enabled Apple to port the foundations of Mac OS X to create iOS on ARM.  Apple likely had an Intel version running internally since day one of Mac OS X shipping. In the NeXT App Package there were multiple binaries for each supported hardware architecture.  This could still be done by checking boxes in Xcode cross compiler options for Apps not in the App Store.  However anything in the App Store could break out the binaries so you only download the binary you need.  So if you are Intel you receive the x64 binary if you are ARM you receive that binary. If you download from an independent software developer, you get both or have individual downloads to choose from.  There will be no need for a Rosetta like translation layer because Apple could support both Intel and ARM at the same time until the entire lineup is ARM. Rosetta was required because back then people bought software on DVD and kept it longer. Now that digital App Store distribution, downloads, and subscriptions with annual or even monthly updates are the norm, it doesn't make much sense.  
    4. Will they ship a new ARM SoC in the MacBook Air or will they reintroduce the MacBook lineup? Or will this new ARM be so incredible they release multiple models at the same time including MacBook Pros?  Time will tell.  Why haven't we seen an A13X for the iPad? Maybe they have more magic up their sleeve and since the A12X is still kicking butt and taking names they will just wait for the A14 and perhaps 5nm production or it may be the A15 before 5nm production is ready.  
    5. Intel 10nm / 7nm / 5nm production is not the same thing as TSMC.  But TSMC is manufacturing the new AMD EPYC and GPU chiplets. They also manufacture the Huawei Kirin 980 SoC as well as Apple Bionic SoCs. Qualcomm, Altera, Broadcom, Conexant, Marvell, NVIDIA, and VIA are also customers of TSMC.  TSMC is faster at reaching a smaller nanoscale but Intel's designs and manufacturing process varies.  At the same time TSMC is reaching the goals of smaller nanoscale faster than Intel.  Intel is a behemoth and as such is slow and they became lazy when AMD was no longer a threat. They are also beholden to Cloud data center customers whose demand for CPUs is so intense they will take what they can get and be happy about it. TSMC stated that their 5nm process could increase logic density by 1.8x and boost operation speeds by 15% or reduce its power consumption by 30% on ARM CPU cores. Will they be ready for 2021? Well in 2019 they were up to 50% yields compared to 7nm yields. 

    Overall, yes. Apple will likely take their ARM SoC designs to another level.  But knowing Apple it won't happen until they are ready for it to happen.  They are not worried about AMD and others taking the lead.  They will release when the time is right.  When TSMC can produce enough yield to meet Apple's needs and when Apple's designs are solid and ready to surprise everyone.  When the OS designs are ready and the developer API / SDKs are ready, etc.  They will likely announce new hardware alongside WWDC announcements and demonstrating all the changes developers will need to know.  I am not even sure if such a large undertaking would be placed into just a MacBook / MacBook Air.  They might wait until they can do the MacBook Pro at the same time.  The future is bright and exciting.  
    This couldn't be branded as a Mac as it wouldn't for the foreseeable future be applicable to any Pro model, would exclude most business users as performance on key software would be degraded with no foreseeable improvements. This isn't the Intel transition where most productive apps had Windows versions that ran on pair or better with the PowerPC version. Still, many years later there are platform differences. There are no Pro apps on ARM as single-core performance doesn't cut it.

    Brand it something else sure it would sell. Make the iPad everything it's always wanted to be and make it part of that family (or just release keyboard with trackpad like rumoured) and just release better/bigger iPads all the way up to iMac sizes. Drop the non-Pro Macs from the family.

    An ARM only 'Mac' is just a confusion of the brand that degrades 2 product families with no upside.

  • Reply 144 of 149
    thttht Posts: 5,452member
    On the topic of when Apple should be release Mac/ARM machines, in hindsight, it should have been 2018.

    There is a lot of doubt about ARM being able to compete with x86, with implications that there is something magical with the x86 instruction set architecture that gives it an advantage. There is nothing about the x86 ISA that makes it faster or slower than any other ISA. Nothing of any significant difference whatsoever.

    All of x86’s “power” stems from Intel’s manufacturing dominance for the past 30 years and the inertia of software written for Windows. They’ve always been a node ahead of computers. That’s a 2x transistor budget advantage, a 30 to 50% performance advantage, or a 30% perf/watt advantage. If a competitor was fabbing its chips a half node to full node behind (eg, Intel fabs 22 nm while AMD fabbed at 28 nm), the competitor can’t really compete as long as Intel was merely adequate. Intel has even made company killing mistakes like Netburst, but their fab advantage let them ride it out.

    So, if Apple transitioned to ARM Macs in 2018, that meant they started the wave with TSMC with a mature “TSMC 10 nm” fab or an early “TSMC 7 no”. At that point TSMC overcame Intel’s fab advantage, and Intel hasn’t really gone anywhere since with their 10 nm fab. If they started in 2018, it meant there would have been a rolling wave of fabbing on ever more capable TSMC fab: mature 10 nm, early 7 nm, mature 7 nm, early 5 nm, mature 5 nm. In the meanwhile, Intel has been struggling with their 10 nm fab for the better part of 5 years.

    If Apple is shipping a Mac ARM built on TSMC’s mature 7 nm versus Intel’s 14 nm +++++, they are going to crush Intel in the same way AMD is, which also uses TSMC 7 nm. It’s a 2x transistor advantage. You don’t close that gap because of the ISA. The biggest impediment is the software and the commitment.

    Software-wise, it’s the same as it ever was. It pretty darn hard to overcome legacy software. Shipping machines with both x86 and ARM is a mistake. You have to burn the boats. Apple first and foremost have to get MS and Adobe to port. Whether it is or hard, Apple needs to get those apps native ASAP. They need to maintain Unix compatibility so all those Unix apps can be ported. 

    They need to continue to make Safari a leading edge browser, and continue to refine it. Make it the best web browser available. Legacy apps is not as critical as it used to be as long as web browser compatibility is maintained. A lot of work today is basically centered on the web browser and high level scripting language du jour. They need to support it.
  • Reply 145 of 149
    esummersesummers Posts: 953member
    As far as Catalyst goes, it would probably less about Arm and more about the Bionic processor and GPU.  Arm vs Intel is otherwise very similar.
  • Reply 146 of 149
    crowleycrowley Posts: 10,453member
    esummers said:
    As far as Catalyst goes, it would probably less about Arm and more about the Bionic processor and GPU.  Arm vs Intel is otherwise very similar.
     :/ 
  • Reply 147 of 149
    I said a few years ago I said I see Apple bringing back the iBook with trackpad support in iOS. Now with iOS 13.4 all the pieces are in place for an Apple A series processor iBook. 
    edited April 2020
  • Reply 148 of 149
    SoliSoli Posts: 10,035member
    mkercher said:
    I said a few years ago I said I see Apple bringing back the iBook with trackpad support in iOS. Now with iOS 13.4 all the pieces are in place for an Apple A series processor iBook. 
    I can’t see Apple doing a proper notebook that isn’t running macOS.

  • Reply 149 of 149
    XedXed Posts: 2,571member
    Yikes! Many of these posts didn't age very well.
Sign In or Register to comment.