
Fixing Apple's Engineering in an Hour [video] - devxpy
https://www.youtube.com/watch?v=MlOPPuNv4Ec
======
code4tee
To be fair isn’t this probably the case with just about every laptop? Kit it
out with some crazy totally impractical cooling setup and you can squeeze out
a bit more performance. Even after all the craziness they edged out enough
performer to detect it on a stress test but probably not enough to materially
impact user experience.

This video sort of misses the point that real-world design is balancing
multiple factors, not just over-optimizing one factor at the cost of others.

People don’t buy a MacBook Air because their looking for the fastest processor
performance processor. That’s not the point of the product or the market it’s
made for.

~~~
devxpy
Hmm, fair point, but I do expect the CPU and the fan to _at least_ be to be
connected!

The machine quickly jumps to 100 degrees on load, which is something I do care
about, from a usability perspective. I have to regularly turn on the aircon to
make the keyboard on my MacBook Pro even usable -- something I did not have to
do on a ThinkPad T440p.

And then there's the chance of damaging internal components because of the
sustained high heat over a long time.

I think the intention of the video, initially, was to "squeeze out a bit more
performance.", but it ended up demonstrating some arguably obvious oversights
in the thermal solution of a rather expensive machine.

------
rattyc
I came here expecting an in depth view of Apple's Software Engineering
practices... I am disappointed.

~~~
ToniCipriani
That would be Louis, not Linus.

------
eqvinox
Consumer hardware engineering these days is all about getting away as close to
the edge as possible. And that'd be fine, if there was an option for better
margins at a higher price. But there isn't...

------
jam3sn
Can't have that MBA beating the base spec MBP... -_-

~~~
ScottFree
Watch the whole video. They managed to keep the laptop ice cold with a custom
heatsink, but even then only managed to eek out a 12% performance improvement.
As it turns out, Apple actually knows what they're doing.

~~~
Nextgrid
From what I understand it's the CPU power management/frequency profile that is
limiting it. Even when satisfying the thermal requirements they were still
getting sub-par performance because presumably the CPU was being limited in
software anyway.

A combination of good cooling + a tweaked power management profile to
accommodate the better thermals should give a substantial performance
increase.

~~~
slantyyz
> presumably the CPU was being limited in software anyway

Would this be in the OS or the bios (or whatever they call it on a Mac)?

If it's the former, I wonder if the test would have been more interesting if
the MBA was running a different OS.

~~~
Nextgrid
Firmware.

Doing it within the operating system is suicidal as a malfunction of the OS
(whether accidental or due to malware) would force the machine to operate
beyond its thermal limits and potentially damage itself.

~~~
cassianoleal
The thermal management is done in userland. This is probably the same.

\-
[https://twitter.com/tomcoates/status/1255170545366097922](https://twitter.com/tomcoates/status/1255170545366097922)

~~~
eqvinox
This is another misunderstanding/misconnection. "kernel_task" is used to
report "missing" CPU time so the CPU usage accounting remains consistent even
when the CPU is throttled. That does not mean either the kernel or userland
have any input to the thermal throttling functions.

There's also multiple levels of protection and throttling. At the lowest
level, various ICs on the board (e.g. power regulators) will turn themselves
off if they overheat. Somewhere above that, firmware will definitely exert
/some/ control, to cover odd situations like the machine hanging while
booting. Above that, the kernel or userspace can add another layer — but like
each of the layers before, that layer can only lower the limits further.

Having thermal management in userland (and nowhere else) would be legal
suicide. Imagine the lawsuits from people accidentally burning their legs...

~~~
cassianoleal
Thanks for this.

I believe you are correct, although I did think that kernel_task was there to
help cool the components down, and not simply as a devide to report throttled
CPU usage consistently with unthrottled.

That said, I didn't mean to say that thermal throttling only happened in
userland but rather that it did happen there, even though it might also happen
elsewhere.

Within the context of this thread, this is relevant since in this case the CPU
was not being thermally throttled as it was running cool, but something was
still throttling the amount of power going to it.

I was merely suggesting that Nextgrid's affirmation that it must have been the
firmware throttling the CPU is not necessarily true. Given that there is a
software component to thermal management (or at least I thought so), it's only
logical to assume that there may be a software component of whatever other
throttling was occurring without it necessarily being suicidal as suggested.

------
OldTechSucks
I found it unreasonable that ipad keyboard is only $300. simultaneously,
Windows is very bad OS: bitlocker, updates, userland, no solution for game
anti cheats so every game has to run a special program to create anti cheat
program, visual studio is terrible.

yet, in the long run I think the OS itself is beast!

