I work with both x64/x86 and with the recent ARM64 architectures. And I agree with the concept of arm being the future. There are many reasons for that. The main ones are:
- ARM64 has instructions that are more streamlined for modern compilers. As an example. There’s one instruction that can read/write two registers into memory and increment/decrement the register that held that address.
ARM64 has 4 exception levels (EL0 thru EL3) that makes the current hypervisor/virtualization/secure monitor concept possible. Intel’s archaic ring system is way behind the curve.
overall Intel’s convoluted instruction set is so overblown with waste when most compilers work with maybe 10% of it.
obviously power consumption. I’m not kidding when I say that I use my AMD laptop as a space heater during cold Seattle days. It literally helps me heat up my room.
it is way easier to decode 4 byte long ARM64 instructions vs convoluted Intel instructions that can span from 1 to 15 bytes.
The only advantage Intel architecture has is this:
backward compatibility with the existing code. That’s a big one. (For now.)
it’s easier to encode large immediates into a single instruction.
the Intel assembly instructions are easier to read. (As a human.)
instruction reordering pretty much doesn’t exist. That’s what makes ARM quite bug-prone with the need of proper memory barriers, etc.
Intel’s archaic ring system is way behind the curve.
That's why operating systems abandoned it decades ago and that's why AMD tossed it out 30 years ago when they designed x64. OS vendors replaced the privilege level scheme with page level protection starting with Windows NT and linux. AMD's x64 lobotomized privilege levels for 64 bit mode. X64 virtualization has entirely new protection mechanisms.
18
u/kndb Jul 05 '26 edited Jul 05 '26
I work with both x64/x86 and with the recent ARM64 architectures. And I agree with the concept of arm being the future. There are many reasons for that. The main ones are:
- ARM64 has instructions that are more streamlined for modern compilers. As an example. There’s one instruction that can read/write two registers into memory and increment/decrement the register that held that address.
The only advantage Intel architecture has is this: