So Apple came out with their new M1 based laptops and Mac Mini. The new MacBook Air looks like a nice fit for a college laptop: going completely fanless was a bold choice, though it’s disappointing that they said literally nothing about the camera optics (namely something better than the very tired 720p from cam on the last few generations) given that this is such a point of excellence and pride for the company overall. It will be fascinating to benchmark these devices to see if Apple’s claims on performance hold up.
Battery life is pretty killer — if it holds up to a claim of 20 hours of continuous full-steam productivity that will sell a lot of laptops, particularly post-COVID when people actually use laptops outside of their homes again.
I might hold off on buying the 13" MacBook Pro until more is known — in particular the reduced 16GB RAM cap is going to hurt with the unified memory architecture; since the GPU needs to share this RAM I wouldn’t guess that more than 12GB would be usable and I don’t know how Apple can in good conscience sell a “professional” computing device that has about a third the usable RAM of its last generation. (I use a 32GB RAM 15" MBPR.) And yes RAM is a really key aspect of performance here. A lot of people are going to be grouchy when their shiny maxed-out new pro laptop chokes after opening Chrome tab #20.
On networking, I didn’t see support for 2.5/5/10gbps Ethernet interfaces, which was a touch disappointing. Looks like WiFi6 is there but you’ll have to wait for next year for WiFi6E.
I’m not sure who the Mac Mini is for anymore — it is not small enough to be an industrial PC like a NUC nor is it a rackmount form factor.
It’s nice to see the multi-speed big.LITTLE style architecture make its way into the mainstream with this CPU, though the choice of only four high speed cores feels closer to high-end tablet than high-end desktop in 2020, with AMD shipping desktop processors with as many as 128 hardware threads. (I don’t think Apple mentioned any hardware hyperthreading, so cores = hw threads.) Apple made some reasonably bold claims about their efficiency cores, though, so we will see if they can pull their weight. It sounded like Apple was planning on having hardware alone planning the dispatch of workloads to one or the other — TBD if Apple exposes primitives to programmers to indicate if a thread belongs on one stack or the other. (Apple nerds: does this already exist and I’m missing it from Grand Central Dispatch?) One trick we have seen from server land is with a many-core architecture “pinning” latency-critical tasks to a core to allow it to run in real-time mode; it will be interesting to see if Apple goes this direction for graphics compositing on the main thread, message handling, network packet processing, or audio mixing. With four efficiency cores to burn it may be tempting to put real-time operations on at least one. If not this generation then perhaps the M2 and Big Sur++ could be a direction.
The overall unified memory architecture, while not actually new, is pretty compelling from a verticalization perspective if they have a sufficiently powerful GPU. Historically integrated GPUs haven’t been able to hold a candle to discrete and I’d guess there to be some complex issues to solve around contention.
More broadly this points to the players at biggest scale pulling in their own silicon teams and I’d expect that trend to continue. Furthermore I’d guess that Apple continues to go upstream with variants of the M1 that add more cores and ultimately try their hand at a server chip, but to play out well that would require an enormous full-stack investment to retool Xcode for server-side scalable systems coding and start building out their own global hyperscalar fleet. Crazy, perhaps, but when you’ve got a few dozen billion dollars sitting around that’s the kind of bet you can afford to take. It gets interesting trying to imagine writing code in Swift that runs on the Apple Watch, iPhone, MacBook Pro *and* iCloud. But I’d speculate we are a few years away from anything like that coming to fruition.