Hacker News new | ask | show | jobs
by eyelidlessness 1992 days ago
Apple doesn’t just control an operating system or an App Store. They also control a development toolchain and the two primary languages compiled for their platforms, as well as most of the frameworks used in commonly used apps (excepting the dreaded electron). They have a platform that’s been tailored to be profiled and optimized.

One early benchmark showed allocating and destroying an NSObject performing drastically better on the M1 vs recent Intel Macs. This wasn’t an accident. It’s probably not representative of performance overall. They have enough vertical integration to make their own first party solutions clear optimization targets.

1 comments

This sort of "data," that optimizing contention free locks could have big rewards, isn't something that you need to control the OS or compiler/profiler/debugger toolchain to understand and learn. And for that matter, Intel has excellent compilers and profilers too.

All it takes is looking at what's going on in commonly used code, deciding to optimize for X, Y, and Z, and commit to it. If Intel isn't doing this already, that's all the fault of current management for not making it a priority.

The only way that Apple's vertical integration helped them make that management decision is that they were able to say "our customer is a typical laptop user." Intel tries to cater to much larger markets, so perhaps when management goes to plan a laptop chip, they are less aggressive with deciding to optimize. But I have a feeling that Apple's optimizations are generally good for nearly all code, not just for specific use cases.

There's really no explanation for why EPYC "Naples" was so bad other than AMD did not internally understand the performance of realistic large-scale programs. I mean even if they had taken anything off the shelf, for free, like MySQL, they could have determined at some point before mass production that their CPU, in fact, sucked. But they shipped it and prospective customers rejected it.

Don't discount how a weak organization can make poor decisions even when all necessary information seems to be readily available.