Live data from Hacker News

How M1 Macs feel faster than Intel models: it’s about QoS

eclecticlight.co

71–80 of 427 posts

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#71
post #27

Earlier quoted context omitted.

It's nice but with additional limitations - on a normal Unix system even if you nice everything to the lowest level possible they'll still take over all cores. This limits things below a certain nice level to the efficiency cores, meaning that the performance cores are always available for foreground action.

So nice + taskset[1]? 1: https://linux.die.net/man/1/taskset

Seems so. Just that it works "automagically" and reserves some cores for certain priority groups. Maybe one can write a script/daemon that `taskset`s all tasks with a certain niceness range (or by additional rules) to a few "background cores" and everything else to the "interactive cores"?

On Linux you might also get some problems with kworker threads landing in the wrong group, but I'm not that much into Kernel internals I've to admit.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#72
post #36

Earlier quoted context omitted.

What workloads do you run? I’ve got a 16GiB M1 mbp and a 2019 maxed intel and when compiling Java/sbt projects the intel is significantly quicker, albeit also much loader and power hungry.

> when compiling Java/sbt projects Are you comparing a binary being run under dynamic binary translation with a native binary? Not really an honest comparison, if that's the case.

No idea if that's the case, but I wouldn't have expected Java of all things to be run under binary translation.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#73
post #53

Earlier quoted context omitted.

I run KUbuntu, how can I enable this? EDIT: I searched a bit and, although I haven't found instructions anywhere, I did find people saying that the low-latency kernel decreases throughput as a tradeoff to lower latency. Have you found this to be the case? Also, another source says that the preempt kernel might be better for some workloads: https://itectec.com/ubuntu/ubuntu-choose-a-low-latency-kerne... Can anyone com…

If there were one simple trick to make your computer feel faster without downsides, defaults would change.

True in general, but there is seriously little downside to using a low-latency kernel. Sometimes it even improves throughput, usually the effect is tiny either way.

I think most people just don't care or don't know that they care about responsiveness.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#76

Earlier quoted context omitted.

I laughed when they called it “unified memory.” Amazing what some marketing can do. In previous years, that was called “shared graphics memory” and it was only for low end systems.

Shared graphics-memory is not the same as unified memory. In a shared graphics-memory system, a part of the system RAM is reserved for the GPU. The amount of RAM reported to the OS is the total RAM minus the chunk reserved the GPU uses. The OS only can use it's own part, and cannot access the GPU memory (and vice versa). If you want to make something available to the GPU, it still has to be copied to the reserved GPU…

> If you drop the 'user replaceable' requirement and place everything close together, you can have the benefits of both high bandwidth and unified memory

Rather, if you drop the "big GPU" requirement then you can place everything close together. So called APUs have been unified memory for years & years now (so more or less Intel's entire lineup, and AMD's entire laptop SKUs & some desktop ones).

It still ends up associated with low-end because there's only so much die space you can spend on an iGPU, and the M1 is no exception there. It doesn't come close to a mid-range discreet GPU and it likely won't ever unless Apple goes chiplets so that multiple dies can share a memory controller.

With "normal" (LP)DDR you still run into severe memory bottlenecks on the GPU side as things get faster, so that becomes another issue with unified memory. Do you sacrifice CPU performance to feed the GPU by using higher-latency GDDR? Or do you sacrifice GPU performance with lower-bandwidth DDR?

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#77
FWIW Android (and surely iOS, although I don't know anything about that in particular) have had systems like this for a long time. Aside from all the task scheduler smarts in the kernel itself, there are all kinds of things that can be marked as low priority so they run on the LITTLE (what Apple calls "efficiency") cores, while e.g. a UI rendering thread might go straight to a "big" ("performance") core even if its historical load doesn't show it using much CPU b/w, because it's known (and marked as such by Android platform devs) to be a latency-senstive element of the workload.

Been a few years since I worked on this so I'm a bit fuzzy on the details but it's interesting stuff! Without this kind of tuning, modern flagship devices would run like absolute garbage and have terrible battery life.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#78
post #74

My 16 inch pro Intel is plenty fast - for the first 45 seconds before thermal throttling kicks in. I have a feeling the M1 is faster because it can actually do work for more than just the briefest bursts

Apples intel MBP thermals are pretty abysmal wrt noise. My off brand 7th gen i7 sounds about the same as my colleagues similarly species MBP, but never throttles.

There were even people saying they deliberately sabotaged their intel thermals to make the up and coming M1 look better.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#79

Earlier quoted context omitted.

> when compiling Java/sbt projects Are you comparing a binary being run under dynamic binary translation with a native binary? Not really an honest comparison, if that's the case.

No idea if that's the case, but I wouldn't have expected Java of all things to be run under binary translation.

> I wouldn't have expected Java of all things to be run under binary translation

Why? The Java community has only just been working on ARM64 support at all over the last few years, and it's still a little limited, and macOS ARM64 support is only out a couple of weeks and only from non-Oracle third-party builders I believe.

Re: How M1 Macs feel faster than Intel models: it’s about QoS

#80
post #48

That is all well and good. Great actually. And it makes sense. The high efficiency reduced instruction set computer has highly optimized architecture to improve efficiency. But we all knew that deep down. It's like the Ford Tempo. A mere 80 horsepower mated to a well designed and highly optimized transmission gave levels of performance that were higher than other cars in the same market. What I can't stand are all th…

I'm curious what you think of all the benchmarks that sais otherwise. In a race between a motorized lawn mower and a racecar - if the lawn mower wins which one is ultimately the best "racecar"?
Post reply on HN