I'm a few weeks in to the M1 experience and before getting into my thoughts on actual performance I must offer a few alibis & excuses.
I am probably not the average user (whatever that is) - my machines have to work hard most of the time and work together with my wider network of Macs. My desktop is an iMac Pro, laptop is a 13" 2018 MBP and I have 3 Mac minis (2 x i5 and 1 x i7s) working hard in supporting roles. Bulk file storage is an all-SSD array on a 10 GbE network plus an archive store on a tradition spinning array. There is a wider network of other systems that I will not go into, but they can produce a lot of data.
My M1 Mac mini had to fit into this network, taking on the role of 1 or more of the existing minis and potentially lighten the load on the iMac Pro. It runs 24/7, never sleeps & runs headless. Being home-based it also has to run a brace of more domestic chores too. It also has to run native apps, Rosetta translations, Java and some particularly sub-optimal applications:
View attachment 1688481
My M1 Mac mini is a base model (8GB / 256GB) plus the addition of 10 GbE networking via TB3. It is a rack-mounted in a 1U RackMac mini enclosure:
View attachment 1688437
The M1 mini is running a server with both high IOPS and high bandwidth tasks, acts as a maths cruncher, transcoder, data ingress device, UniFi Controller, Plex Server and a brace of other things. CPU load spends quite a lot of its time at around 40% with spikes to 100% when workload is particularly high. Yes, this M1 does get to beachball. Even averaged over 7 days the CPU workload is clear:
7-day Average CPU load -
View attachment 1688444
Similar pattern to the GPU, but only for certain workloads - including transcoding. Transcoding can be a little odd though; if a difficult file type (I transcode a lot of MPEG 2 TS) makes it through to the dedicated transcode silicon the M1 CPU and GPU do very little. For no discernible reason some MPEG 2 TS files miss the offload engine and are transcoded by the CPU/GPU at a fraction of the speed of the transcode engine. Early days for the M1 and Big Sur. Some of the spikes in the 7 day average are due to transcodes missing the dedicated offload engine:
7-day average GPU Load -
View attachment 1688455
The Memory Pressure (8GB Unified RAM) is always in the green and the 7-day load average is much more consistent, despite the extended bursts with more challenging and (normally) RAM-intensive tasks. I'll go into RAM usage in a little more detail as the way it works is very different to Intel systems; due to the machine learning the way the RAM is managed changes over the hours, days and weeks of usage. This is not your grandfather's RAM and I guess we need to re-learn a few things:
7-day Memory Pressure -
View attachment 1688463
Talking about Unified RAM on the M1 is akin to grabbing the 3rd rail and this forum is already full of M1 RAM debates. I've a reasonable amount of experience in these things so
I can confidently state that I have no idea as to how the RAM is managed. Not a clue in fact. That makes me feel a little uncomfortable. Leave your Intel experience at the door, it is not needed here.
So these are my thoughts, or maybe just musings, after seeing the memory management change and adapt over a couple of weeks. Please do not doubt how little I understand the RAM utilisation and management on the M1.
As the workload increased over the last week, with more demanding and difficult workloads the Unified RAM Load average drifted
down or remained the same. I must stress that this included unoptimised apps and tasks that are usually RAM intensive. This followed the trend from the previous weeks. The Unified RAM management is clearly tuning itself via machine learning and the neural engine. As a result the amount of 'free' memory has slowly increased when you would expect the reverse:
View attachment 1688480
I will use the term 'Swap Memory' for my next round of thoughts, as that is how it is labelled, but I am not sure the term remains valid. I have taken for granted that Intel macOS will endeavour to use as much RAM as possible (as cache if nothing else to do) with only tentative dips into swap memory when not stressed. When macOS is stressed for RAM it will endeavour to use all the physical RAM available before finally and reluctantly paging-out to an increasing SWAP memory with a notable dip in performance. Once the RAM workload decreases the Intel macOS will purge the swap memory and bring the workload back to the physical RAM.
Apple Silicon Unified RAM does not work that way.
View attachment 1688486
The snapshot above is after 2 weeks of intensive workloads and is at steady-state. The 'Swap Memory' has grown to 3.26 GB with 4 GB reserved, memory pressure has
reduced and free RAM has
increased to 4.2 GB. The actual Page Ins / Outs are very small (happed to be zero at this snapshot). The 'Swap Memory' behaviour is very different at week 2 than when initially tested. The Swap Memory seems to be more akin to a reserved memory cache rather than a reluctant overflow. It appears that the machine learning favours allocating virtual RAM to the 'Swap' file if that data or resource does not require the low latency offered by the physical RAM, even if there is physical RAM available. Again, I must stress my lack of knowledge in how this all works or how it actively adapts over time.
The 7-day average Swap size for the second week is still increasing slowly and the general performance of the machine is increasing, despite the workload demanded from it:
7-day Swap Size -
View attachment 1688500
So did the M1 earn a place in my network - yes, even with the occasional hiccups. It has already replaced 2 x i5 Mac minis and the i7 Mac mini is nothing more than a cold-spare. Pleasingly I have been able to move challenging tasks from my iMac Pro and dump them onto the M1 Mac mini - it can walk, chew gum and juggle unicycles. I also find myself using my 13" MBP more and spending less time at the iMac Pro. I pay for my own electric so I am wondering what the effect of reducing from 3 Intel Mac minis to a single M1 Mac mini (plus less iMac Pro usage) will do to the monthly bill.
Am I pushing the M1 a little bit hard - no doubt in that - but the occasional beachball is more of a badge of honour at this point. I have to pinch myself to remind me how little money this little powerhouse cost and how low the running costs will be. No doubt I am an edge case user and I am sure Apple didn't have such a brutal workload in mind for its cheapest new offering. But it works for me.
It will be interesting to see how the Mac mini adapts, what future refinements in macOS will bring and how the balance of native and non-native apps will change over time. No doubt with the M1 YMMV and again I must state how little I really know about the underpinnings of the M1 and the impact the neural engine cores have on the wider system. I am confident in saying that M1 reviews based on snapshot use will probably miss the adaptive real-world performance offered by the new silicon.
Interesting times ahead.