Live data from Hacker News

Ask HN: Why hasn't x86 caught up with Apple M series?

news.ycombinator.com

591–600 of 640 posts

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#591
post #291

Earlier quoted context omitted.

Something is wrong with power governor then. I have an opposite experience, was able to tune Linux on a Core Ultra 155H laptop so it works longer than Windows one. Needed to use kernel 6.11+ and TLP [0] with pretty aggressive energy saving settings. Also played a bit with Intel LPMD [1] but did not notice much improvement. [0] https://github.com/linrunner/TLP [1] https://github.com/intel/intel-lpmd

I also own a 155H laptop using Linux Mint! Would you share your settings with TLP and LPMD? I am not getting not much longer battery life than Windows 11 on it after some tinkering, so seeing somebody else's setup may help a lot. Thanks!

Won't say I got much longer battery life, and even what I got may be as well explained as "TLP made energy profile management almost as good as on Windows, and then Windows's tendency to get a bunch of junk processes seeping on your battery tipped the scales to favor Linux". Also I ended up switching back to Windows because of never-ending hardware issues with Linux, installing it on 155H back in February 2024 was especially rough but even 6 months later I randomly got Bluetooth not working anymore after Ubuntu update.

My TLP and LPMD configs: https://gist.github.com/vient/f8448d56c1191bf6280122e7389fc1...

TLP: don't remember details now, as I recall scaling governor does not do anything on modern CPUs when energy perf policy is used. CPU_MAX_PERF_ON_BAT=30 seems to be crucial for battery savings, sacrificing performance (not too much for everyday use really) for joules in battery. CPU_HWP_DYN_BOOST_ON_BAT=0 further prohibits using turbo on battery, just in case.

LPMD: again, did not use it much in the end so not sure what even is written in this config. May need additional care to run alongside TLP.

Also, I used these boot parameters. For performance, I think, beneficial one are *mitigations, nohz_full, rcu*

    quiet splash sysrq_always_enabled=1 mitigations=off i915.mitigations=off transparent_hugepage=always iommu=pt intel_iommu=on nohz_full=all rcu_nocbs=all rcutree.enable_rcu_lazy=1 rcupdate.rcu_expedited=1 cryptomgr.notests no_timer_check noreplace-smp page_alloc.shuffle=1 tsc=reliable

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#592
post #482
post #53

Earlier quoted context omitted.

Everything is RISC after it gets decoded. It isn’t 1990 anymore. The decoder costs maybe 1% performance.

In Haswell, 4.8w out of 22.1w for the core were used for the decoder for integer/ALU instructions[0]. According to this[1] analysis of the entire ubuntu repository, 89% of all instructions were composed of just 12 instructions (all integer/ALU). From this we can infer that for most normal workloads, almost 22% of the Haswell core power was used in the decoder. As decoders have gotten wider and more complex in recent…

Misconstrued arguments.

First paper is saying that they measured 3% for the floating-point workloads and 10% for the integer workloads.

> Based on Figure 3, the power consumption of the instruction decoders is very small compared with the other components. Only 3% of the total package power is consumed by the instruction decoding pipeline in this case.

and

> As a result, the instruction decoders end up consuming 10% of the total package power in benchmark #2.

Then the paper continues to say that the benchmark was synthetic and nothing close to the extrapolation of yours that the experiment results would apply if repeated on entire ubuntu repositories.

> Nevertheless, we would like to point out that this benchmark is completely synthetic.

And finally paper says that the typical power draw is expected to be much lower in real-world scenarios. Their microbenchmark is basically measuring a 10% as an upper bound for instruction decoder power draw for what would be almost the highest IPC achievable on that machine - Haswell is 4-wide decode machine and 3.86 IPC on real-world code happens never, as they also acknowledge:

> Real applications typically do not reach IPC counts as high as this. Thus, the power consumption of the instruction decoders is likely less than 10% for real applications.

If anything can be concluded from this article is that the power draw of instruction decoder is 3% when IPC is 1.67, and this much more closely resembles the IPC figures of real-world programs.

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#594

Honestly, I have serious FOMO about this. I am never going to run a Mac (or worse: Windows) I'm 100% on Linux, but I seriously hate it that I can't reliably work at a coffee shop for five hours. Not even doing that much other than some music, coding, and a few compiles of golang code. My Apple friends get 12+ hrs of battery life. I really wish Lenovo+Fedora or whoever would get together and make that possible.

Here's my variation; I can't stand the ergonomics of Apple computers. The screen doesn't tilt back far enough, they're heavy and slippery, and the only thing I could switch to from a Trackpoint is mind control.

I'm a Linux guy too, when I have to use a Mac I turn all the gloss off and it's ok, but without going to Nix I miss a system wide package manager and I like an open-as-possible community OS that runs everywhere. It's a shame Apple doesn't license their chips.

About a year ago I got a maxed out Macbook Pro, but the above combined with the fact I wasn't comfortable travelling with something that cost as much as a good used car made me return it.

Now I'm using a Thinkpad that was ¼ the price and it's great, AMD chip, 64GB of RAM, replaceable storage, fantastic screen, keyboard (and Trackpoint) means it can do just about anything. Yes, battery life is limited, around four hours with the 16" OLED (I haven't put any work into optimizing it, and this isn't a battery-first model), but I can handle it. I'll maybe get a Strix Halo laptop since I like running LLMs, but otherwise x86 has improved enough that it's pretty good. That said, I won't complain if it matches/surpasses Apple chips, and I'd consider running a headless Apple 'server' at home.

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#595
post #457

Earlier quoted context omitted.

> One of their best acquisitions ever in my opinion… NeXT? But yes, I completely get what you’re saying, I just couldn’t resist. It was an amazingly long sighted strategic move, for sure.

I almost feel like NeXT was a reverse acquisition, like Apple became NeXT with an Apple logo.

Pretty much so, I would say.

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#596

Earlier quoted context omitted.

I vaguely remember Intel tried to get into the low power / smartphone / table space at the time with their Atom line [0] in the late 00's, but due to core architecture issues they could never reach the efficiency of ARM based chips. [0] https://en.wikipedia.org/wiki/Intel_Atom

Intel and Nokia partnered around 2007 .. 09 to introduce x86 phone SoCs and the required software stack. Remember MeeGo? Nokia engineers were horrified by the power consumption and were convinced it wouldn't work. But Nokia management wanted to go to a dual supplier model instead of just relying on TI at all cost. MeeGo proceeded far too slowly and Elop chose his former employers' Windows instead in 2011. Nokia's dec…

Symbian was using ARM, though. And no one on Espoo office was that happy with Elop, except for the board members that invited him.

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#597
post #229

Earlier quoted context omitted.

When netbooks ($400 notebooks) were all the rage, Steve Jobs was asked why Apple didn’t make one. And he said they didn’t know how to make a cheap laptop that didn’t suck. And he was right. Netbooks mostly sucked. Same with Chromebooks. There’s nothing to be gained by racing to the bottom. You can buy an m1 laptop for $599 at Walmart. That’s an amazing deal.

> You can buy ... for $599 Not sure why you'd think any random nerd has that kind of money. And Walmart isn't exactly around the corner for most parts of the world.

I don't follow, is that a counter-argument to my statement? That there exist people that can't afford that, so that makes it not a good deal?

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#598
post #364

Earlier quoted context omitted.

A huge reason for the low power usage is the iPhone. Apple spent years incrementally improving efficiency and performance of their chips for phones. Intel and AMD were more desktop based so power efficiency wasnt the goal. When Apple's chips got so good they could transition into laptops, x86 wasn't in the same ballpark. Also the iPhone is the most lucrative product of all time (I think) and Apple poured a tonne of t…

> A huge reason for the low power usage is the iPhone. No, the main reason for better battery life is the RISC architecture. PC on ARM architecture has the same gains.

Those PC ARM chips like Snapdragon were designed first and foremost for mobile, too.

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#599

Earlier quoted context omitted.

Man, it's absolutely trivial to migrate your configurations to a new machine.

Oh I know. Just lazy and have other things to do than to migrate a machine.

I understand, it is that for me, as a hardware addict, it is almost personally offensive that someone would refuse an upgrade. I am unsettled and disturbed. :-D

Re: Ask HN: Why hasn't x86 caught up with Apple M series?

#600
post #164

Battery efficiency comes from a million little optimizations in the technology stack, most of which comes down to using the CPU as little as possible. As such the instruction set architecture and process node aren't usually that important when it comes to your battery life. If you fully load the CPU and calculate how much energy a AI340 needs to perform a fixed workload and compare that to a M1 you'll probably find s…

I disable turbo boost in cpu on linux. Fans rarely start on the laptop and the system is generally cool. Even working on development and compilation I rarely need the extra perf. For my 10yr old laptop I cap max clock to 95% too to stop the fans from always starting. YMMV

This is a big reason. Apple tunes their devices to not push the extreme edges of the performance that is possible, so they don't fall off that cliff of inefficiency. Combined with a really great perf/watt, they can run them at "90%" and stay nice and cool and sipping power (relatively), while most Intel/AMD machines are allowed to push their parts to "110%" much more often, which might give them a leg up in raw performance (for some workloads), but runs into the gross inefficiencies of pushing the envelope so that marginal performance increase takes 2-3x more power.

If you manually go in and limit a modern Windows laptop's max performance to just under what the spec sheet indicates, it'll be fairly quiet and cool. In fact, most have a setting to do this, but it's rarely on by default because the manufacturers want to show off performance benchmarks. Of course, that's while also touting battery life that is not possible when in the mode that allows the best performance...

This doesn't cover other stupid battery life eaters like Modern Standy (it's still possible to disable it with registry tweaks! do it!), but if you don't need absolute max perf for renders or compiling or whatever, put your Windows or Linux laptop into "cool & quiet" mode and enjoy some decent extra battery.

It would also be really interesting to see what Apple Silicon could do under some Extreme OverClocking fun with sub-zero cooling or such. Would require a firmware & OS that allows more tuning and tweaking, so it's not going to happen anytime soon, but could actually be a nice brag for Apple it they did let it happen.

Post reply on HN