For the last three decades Intel CPU’s have been the foundation of all (personal) computers. However for the past few years mobile devices, like smart phones and tablets, started gaining popularity which use a different sort of “engine” codenamed ARM. What is the difference between Intel’s x86 and ARM processors, which one is better and what is their purpose, as well as what is the future of this market will be the main topic of this article.
Intel’s x86 and Arm Targeting different markets
Both architectures are about the same age, since 8086 and 8080 CPU’s have been released in 1978, while ARM1 has seen the light of day for the first time during 1983. Of course the main idea for both manufacturers was to build the powerful architecture meant for personal computers. In the upcoming period Intel has had more success and ARM was temporarily stuck in a corner. However this British company, based in Cambridge, has decided not to give up and as the years past by its processor has found its place in the market that didn’t particularly interest Intel the embedded systems.
Intel has focused its attention on making strong and powerful microprocessors for desktop and server computers, and not minding about power consumption. On the other hand, ARM has offered a simpler set of instructions which brought ARM CPU’s on to a 1GHz frequency having only 2W TDP! Just to make a good comparison Intel’s Atom, from a few years back, had to give its best to reach 5W TDP. Although, on first glance, the difference isn’t that big we remind you that when it comes to mobile devices increased power consumption means shorter battery life. Intel CPU’s have found their place in the department that demanded powerful performance and strong 64-bit architecture (Windows, OS X, Linux), while ARM still uses 32-bit architecture and has lower frequencies which makes it perfect for smaller mobile devices and consumer electronics.
Power consumption and raw power
There are a few reasons why Intel’s x86 processors are such power hogs. Their sets of instruction are highly complicated due to compatibility, because they have to support all the instructions released since the first 8086 CPU. “Machinery” dedicated to translate all of these ancient instructions has its place on the chip and generated more work load which at the end leads to increased power consumption. On the other hand, ARM instructions are simpler and possible translating due to compatibility isn’t such a complex process, since the processor doesn’t have such a long history like the x86 has.
One more reason that could explain why Intel’s CPU’s have higher power consumption is a very deep pipeline with in the x86 processors. Pipeline represents executing by phases, meaning that in the same time in the parallel multiple phases of different instructions can be executed. However, when the instructions are mutually depended, it is necessary to wait for one of them to finish, which temporarily makes a stall in other instructions and empties the pipeline. Intel’s Pentium 4 had a 32 phase pipeline, while its Atom with an immense shortened pipeline still has 14 phases. Just as a comparison ARM’s Cortex-A9 has an 8-phase pipeline which makes waiting for a pipeline to empty itself much shorter, executing is faster and leads to less power consumption.
Intel has also implemented complex hardware logic on its chips making a task achieve optimum performance. All Intel’s desktop and server processors have out-of-order execution of instruction, execution of multiple instructions on one single core (superscalar execution), multi core support and speculative execution. Out-of order execution enables the CPU to choose the best possible path when it comes to executing instructions, meaning that the CPU will not execute instructions as they come, it will rearrange them in order to finish the job in the shortest time possible (time saved using this feature can be up to 20-30%). There is no need emphasizing that all of these optimizations require lots of energy. On the other hand older ARM CPU’s have had only in-order execution, and there was always a chance that an instruction could block the CPU since it had to execute instruction in the order they came.
In the light Intel has implemented in-order execution in order to save energy, but has also implemented Hyper Threading enabling parallel execution on one core, now the long instructions could have been executed in parallel with the short leading to better overall optimization. ARM has implemented Out-of-order execution on its CPU’s in order to improve performance and, since this was ARM’s territory, to keep the advantage when it comes to energy efficiency. Later new CPU’s with multiple cores appeared, like Nvidia’s Tegra.
As you have seen both of the manufacturers have tried to implement new technics that were already used by their competition in order to decrease the competitor advantage in certain areas.
One more major difference when we compare these CPU’s is the licensing. Although licensing has no significant impact in terms of performance, it is very important when some new technology needs to spread across the market. Intel’s x86 is almost a complete property of Intel and its architecture has been jealously hidden from public eyes. Companies such as AMD and IBM have the license to develop x86 CPU’s and luckily only under certain circumstances that have taken place about 30 years ago. IBM refused to buy Intel’s 8086 processors if Intel remains the only manufacturer, so the license has been sold to AMD and VIA also. AMD has later developed a 64-bit CPU version, which was very successful and Intel was forced to make some compromises in order to keep leadership position.
Licensing for ARM is a totally different story. The architecture can be licensed, for a certain fee of course, by anyone who wants to make processors. This is decreasing manufacturer’s expenses since they dont have to develop the architecture from zero, and on the other hand enables the manufacturer to adjust the architecture to a certain device, optimizing the power consumption and decreasing the device’s price. A few years ago (2009) AMD celebrated 500 million CPU’s sales in its 40 years long history, while in the same year 3.5 billion devices have been sold which carried cheap ARM processors. By this you can see the difference in strategies when accessing the markets because you can’t find Intel’s CPU’s in the car industry or domestic appliances, while supercomputers, desktop and servers are way out of ARM’s league.
Intel’s possible comeback to the mobile market?
Certain benchmarks have leaked across the Internet showing Intel’s new mobile CPU Bay trail beating fastest ARM’s CPU by 30%. We must note that if this is true (no reason to think it’s not at the moment) the par is going to get very high when Intel’s heavy artillery steps in line, since the Bay Trail is a dual core running at 1,1 GHz and Intel’s quad core code named Snapdragon will run at 2.2 GHz.