Live data from Hacker News

M1 Pro First Impressions: Core Management and CPU Performance

eclecticlight.co

31–40 of 234 posts

Re: M1 Pro First Impressions: Core Management and CPU Performance

#31
post #3

"Surprisingly, these benchmarks seldom exceed 50% load on any of the ten cores, which raises the question of how accurately they represent maximum CPU performance." Eh, maybe. I'm not inclined to rely on the reported % CPU usage to represent anything useful. For example, it's very easy to be at 100% CPU when you're actually spending most of that time waiting for memory reads.

CPU % is such a complex metric that it hardly means anything real other than an general feel for how busy the system is. I have seen on linux that I can be running something that uses 100% and the cpu is at 50c, then I run prime95 also at 100% and the cpu instantly hits 99c

In Linux, the actual metric is simple. The amount of time a "CPU" (what Linux calls an architectural thread of execution) is not in the idle routine, as a proportion of the total time elapsed, and average this over all "CPUs" in the system.

It's a simple metric, but it can be complicated to relate it to what is going on with execution because the real system is very complicated.

The CPU % metric does not take into account execution strength, of the CPU, big vs small, dynamic CPU frequency, or effect that one CPU might have on another (e.g., SMT or shared caches or memory controllers).

Further complicating it is that the Linux CPU scheduler is not work-conserving. So you could have at least 100 application threads runnable at any given moment in your workload, but your 64 CPU system might only be hitting 80% CPU busy.

Then you get to application and kernel effects of course, locking, blocking, etc. can mean you don't even have as many runnable threads as you might think.

Then how all this actually relates to the work and heat the system creates is another matter again. Simple integer execution might only use half the CPU power of a vector heavy workload because you have fewer transistors clocked or switching (or even powered) in the core.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#32
post #23
post #15

In my usage, which is game development with Unity, I haven't really been particularly impressed with the performance improvements on my 10-core M1 Pro machine. I'm sure most of the blame is due to Unity (the app is a buggy mess), but it definitely took the initial "wow this is magic" down to reality very quickly for me.

You likely know this as a Unity developer, but my understanding is the native M1 support was added in 2021.2 , released a few weeks ago.

I’m still personally seeing quite a bit better performance on my old laptop with a dedicated gpu in Unity 21.2 - but the power draw is much much lower (consequently better battery life) on the Mac side which definitely has its place.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#33

I am curious, since Intel is relying more and more on P and E cores as well, is there any reference or research available for optimizing multithreaded userland process tasks with varying QoS? A lot of the pthreads books I see are from the late 90s. Is there a more recent reference? What's the best way to write cross-platform (e.g. not Grand Central Dispatch) multithreaded apps with these new chip architectures?

I just ran into this tweet for Intel: https://twitter.com/DeepSchneider/status/1456314755380097027

They move everything that isn't foreground to an efficiency core, which is awful for compiling or video processing.

There's apparently a BIOS option that will use ScrollLock for disabling the efficiency cores entirely.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#35
post #20

Earlier quoted context omitted.

Unity is slow on any machine. With that said, there is a huge M1 hype on HN. It reminds me of the 64-bit ARM hype when someone benchmaked encryption (because ARMv8 has AES instructions) and everyone were made to belive that the new iPhone would be 3-4 times faster.

I've seen little to no hype based on synthetic benchmarks. M1 macs are just really damn fast for daily usage. My M1 Macbook Air blows my 16" out of the water in every conceivable way. I'd elaborate but there seriously isn't any dimension of it that isn't an improvement. Maybe the smaller display?

> My M1 Macbook Air blows my 16"

That is the issue though. Intel macbooks were notoriously badly cooled. That hurts the performance a lot. If all you have used is that, of course you find the new one a lot better. However, compared to any other high end Intel/AMD laptop, you would not perceive this much difference in speed.

Pick up a Macbook 16 and XPS 15 from 2019 with the same specs (CPU/RAM) and the XPS absolutely runs circles around the macbook when it comes to general responsiveness in UI. All because of cooling.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#36
post #12

Mine just arrived today and I'm blown away. After upgrading our app's dependency chain to run native arm64 builds (which took a bit of googling) webpack's incremental build time on our app is down to 116ms from 983ms on my 2016 Macbook Pro. Over 8x faster. Our Tensorflow.js (webgl) models that previously ran about 8fps in the browser are now running at the camera's native 30fps framerate. (Similar to my desktop 2080t…

And if its anything like my regular M1, it does that while remaining cold. I used a 2019 macbook pro and the thing would be roasting hot if you had docker running.

The regular M1 uses far less peak power than the M1 Pro/Max. They’re definitely still far more efficient than competitors though.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#37
post #23
post #15

In my usage, which is game development with Unity, I haven't really been particularly impressed with the performance improvements on my 10-core M1 Pro machine. I'm sure most of the blame is due to Unity (the app is a buggy mess), but it definitely took the initial "wow this is magic" down to reality very quickly for me.

You likely know this as a Unity developer, but my understanding is the native M1 support was added in 2021.2 , released a few weeks ago.

Yes, I have been using that version exclusively. The non-native one is unbearably slow.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#38
post #32
post #23

Earlier quoted context omitted.

You likely know this as a Unity developer, but my understanding is the native M1 support was added in 2021.2 , released a few weeks ago.

I’m still personally seeing quite a bit better performance on my old laptop with a dedicated gpu in Unity 21.2 - but the power draw is much much lower (consequently better battery life) on the Mac side which definitely has its place.

Are you comparing Windows vs Mac? If so I think that might have even more to do with perf than the hardware. I'm sure the overwhelming majority of Unity developers use it on Windows, and so it probably gets more love from Unity as a result.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#39
post #20
post #15

In my usage, which is game development with Unity, I haven't really been particularly impressed with the performance improvements on my 10-core M1 Pro machine. I'm sure most of the blame is due to Unity (the app is a buggy mess), but it definitely took the initial "wow this is magic" down to reality very quickly for me.

Unity is slow on any machine. With that said, there is a huge M1 hype on HN. It reminds me of the 64-bit ARM hype when someone benchmaked encryption (because ARMv8 has AES instructions) and everyone were made to belive that the new iPhone would be 3-4 times faster.

It is not an "HN thing". These machines are damn fast in day to day use. Absolutely zero heat, zero usage of fans and incredible battery life too. I see a lot of hype and fanboys around here regarding certain techs, but these machines are objectively on a whole different league.

Re: M1 Pro First Impressions: Core Management and CPU Performance

#40
post #12

Mine just arrived today and I'm blown away. After upgrading our app's dependency chain to run native arm64 builds (which took a bit of googling) webpack's incremental build time on our app is down to 116ms from 983ms on my 2016 Macbook Pro. Over 8x faster. Our Tensorflow.js (webgl) models that previously ran about 8fps in the browser are now running at the camera's native 30fps framerate. (Similar to my desktop 2080t…

Got mine last week and not only is it faster, the power usage is crazy good. I took it to town for the first time yesterday, thought I'd do some coding between meetings for a few hours. Battery is still over 90%. I actually don't know what the thing sounds like with fans on, because it hasn't happened yet. My old machine from 2019 would have been down to half power at least, and the fans used to come on with just two monitors plugged in and not much workload.
Post reply on HN