The ARM architecture is nothing new, but it is on the lips of all hardware enthusiasts thanks to the fact that Apple has decided to give its equipment a twist and decided to abandon the x86 architecture to use ARM. This leads us to the inevitable question, will there ever come a time when the ARM architecture can replace the current x86 on PC ? And even if it’s on laptops? Let’s see it.
Until now, ARM and x86 architectures did not compete with each other, as they were designed for different purposes. Now things change, with Apple launching its Mac Mini with ARM processors and with quite capable results, so the eternal discussion resurfaces again and with the same examples as always; For example, while a “medium” x86 desktop processor consumes between 65 and 130 watts, an ARM processor can do the same with just 7-10 watts, so if it consumes so little why not replace the ARM architecture x86?
Can ARM really do the same as x86?
The short answer to this is that yes, ARM can do the same, but it has some very important nuances that involve the “in what way”, and especially the “in how long” (in terms of performance). x86 uses CISC technology, with broader instruction sets geared towards solving more complex problems, while ARM uses RISC (which is actually R for ARM), much simpler.
|Multi-cycle instructions||Single cycle instructions|
|Charging and storage incorporated in other instructions||Loading and storage are separate instructions|
|Memory-memory architecture||Registry-registry architecture|
|Long instructions, code with few lines||Short instructions, code with many lines|
|Uses firmware memory||Implement instructions directly to hardware|
|The versatility of the instruction set is emphasized||New instructions are added only if they are frequently used and do not reduce the performance of the most important ones|
|Reduces the difficulty of implementing compilers||Very complex compilers|
|Eliminate micro code and decoding of complex instructions|
Thus, we have that x86 processors are oriented to performance and versatility, while ARM is oriented more towards low power consumption and with limited options. An ARM processor can do the same as an x86 but in different ways, always much more elaborate, and that in the end has a great impact on performance in terms of the time it takes to carry out.
On the other hand, ARM has the advantage of being simpler and therefore the size of the cores is considerably reduced compared to its rivals, so they are capable of incorporating a greater number of these cores although they are slower, thus achieving that the loads of work can be further divided and optimized.
Ultimately, ARM can do the same thing as x86, just quite differently. Now, this does not mean that one architecture can be replaced with the other, at least not so easily and we will see why.
Hardware is meaningless without software
The living proof of this impediment is living Apple. They, before introducing their ARM-based processors, already spent a lot of time and effort adapting their operating system and, in fact, created a development kit so that software developers could do the same. Viewed another way, this means that the software is designed for a specific architecture, that is, you cannot run a program that is designed for x86 on an ARM-based computer.
Therefore, it is not only a question that one can do the work of the other, it is that all the software must be adapted or ported, and this is something that not all companies can do, nor all companies can afford . Therefore, it is something that currently has no viability, not even in the medium term; in the long term it is something that could happen, but we cannot expect it soon, far from it.
What’s the point of ARM replacing x86?
In environments where consumption is a crucial factor, and at the same time where very specific and repetitive tasks are carried out, this is where this makes sense. For example, imagine a database server that has a conventional x86-based processor and other hardware, and that performs a database management task and nothing else. That server needs a very powerful processor with a high consumption, and yet it could easily be replaced by one or more ARM processors with many more less powerful cores but which result in equal or higher performance and with much lower consumption.
This is so because simply by using a greater number of cores they are achieving the same result with a lower consumption, but it is because the task is very specific and both the hardware and the software have been designed for it. If we have to refer to a PC for everyday use, whatever its function, then things change because we will see ourselves in situations where this low ARM consumption is not worth it because it takes too long to perform certain functions than an x86 processor does it in the blink of an eye thanks to its instruction sets.
The same applies to the ecosystem of laptops, where consumption is certainly much more important than in a desktop PC simply because of battery life, but where the same versatility is needed as in a conventional PC.
In short, it is possible that ARM will end up replacing x86 but for now only theoretically, since it is neither necessary nor seems that the developers want it (precisely because it is not necessary). However, it is possible that in professional environments and especially servers, companies start to develop under ARM to gain efficiency, since in the end that will mean a good cost saving in the long run.