Viewing a single comment thread. View all comments

Hattix t1_iyk3kz7 wrote

It's not going to happen, and why is a fundamental aspect of why AMD64 (x86) is different to ARMv7/v8/v9.

ARM gets parallelism at the instruction level (ILP), it has small instructions, very suited for out of order execution. A single thread can get a lot of parallelism, so the CPU doesn't need a lot of overhead to wrestle the ILP bear. The ease at which ARM (and some other RISC archs, like POWER) gets ILP is part of the reason why mandated parallelism in things like VLIW and EPIC didn't do very well: It just wasn't necessary.

AMD64 is very different, it has all that x86 baggage on it. Instructions have all kinds of modes, dependencies, tags, etc., and this makes them a lot more interdependent than ARM instructions are. So, pulling ILP out of AMD64 is a lot more difficult than ARM, and the CPU has to spend a lot more resource in doing it. Even then, it doesn't get the same degree of ILP ARM can achieve.

AMD64 gets more of its parallelism from TLP: Thread level parallelism. There's a reason all performance AMD64 processors from AMD and Intel support simultaneous multithreading (SMT/HyperThreading^(tm)), this is where most of their parallelism comes from. SMT shows a significant performance improvement in almost all cases, meaning execution slots are going spare when SMT isn't in use, which further means there isn't enough ILP to saturate the processor's capability.

This isn't usually the case on ARM, most ARM cores are designed to "race to sleep" and fill as much execution resource as possible. The CPU's awake and clocked up, it darned well better use that time as productively as possible, there's a power budget to worry about!

So, while-ever we're using AMD64, which will be more or less forever as far as the immediate future is concerned, similar performance on AMD64 will always need more power than it will on ARM.

33

volcano_margin_call t1_iyknwxw wrote

You’re the guy who created the silicon chip at Apple lurking on Reddit, aren’t you?

16

magick_68 t1_iylogdi wrote

Sorry for my ignorance but i read that as "We will never switch to arm because arm is better". Maybe i need an ELI5?

6

Hattix t1_iym2a26 wrote

ARM, for low power and performance efficiency, is better, and that is why. It gets more ILP, and ILP is more efficient than TLP (which is more efficient than PLP, but yeah).

AMD64 is entrenched. It's what Windows works on. It's what the entire PC ecosystem works on. The PlayStation and Xbox runs on AMD64. Whether we like it or not, it is here to stay.

I deliberately didn't discuss any switch to ARM, as it's almost certainly not going to happen and I was responding to someone who was saying that making more efficient CPUs was a better idea than better fans.

It is, of course, but it isn't going to happen to the level ARM allows it to.

5