• Guest, The rules for the P & N subforum have been updated to prohibit "ad hominem" or personal attacks against other posters. See the full details in the post "Politics and News Rules & Guidelines."

Question Why don't we have a massive push for ARM chips in desktop computers and laptops?

ibex333

Diamond Member
Mar 26, 2005
3,955
64
91
Note: The following may sound like idiocy, and I admit, I have no clue what the hell I am talking about, but I think its an interesting discussion nevertheless...


Can someone please explain to a complete noob, in layman terms, WHY cant we start using ARM chips instead of Intel? They sure seem a hell of a lot faster and better than Atoms at least! And in many cases faster than Celerons.

Look, I get it, ARM does not support x86 apps, and forget about 64bit... The instruction sets are different. Yadda, yaddaa, yadda. I heard it all before. But they ported Half Life to Android! They emulated a Playstation 3 on PC! They even got Windows 95 to run on gaming handhelds and managed to run Linux on Android phones! Hell, even iOS can run Android now. An unheard of thing five years ago.

So whats the matter? MAKE x86 apps run naively on ARM CPUs! MAKE the same instructions sets for all CPUs regardless of devices they are used for... Just make it happen. And also, why is it, that ARM CPUs were not designed right from the start, with an ability to run x86 apps?

I am aware, that at least one manufacturer, Hewlett Packard, released a laptop that runs on a Snapdragon CPU. It basically "emulates" x86 apps, and I believe the platform is called "Windows on ARM" or something like that. Because code is not ran naively, but emulated, performance is abysmal, but battery life is fantastic. Whats really tempting to me, is that many times, the graphical capabilities of some high end ARM chips seem to far surpass what Intel offers. The gaming potential is immense. But because smartphones don't have full size keyboards and mice attached to them, and do not have PC like games on them, that potential is very limited. But it does not have to be, if we had something like a giant, dedicated tablet, with a ton of usb ports for peripherals and a huge screen. Something like this could potentially be much better than any console and better than many low end gaming PCs.

Am I missing something here? Am I talking complete nonsense? Lets discuss.
 
Last edited:

DrMrLordX

Lifer
Apr 27, 2000
16,473
5,423
136
Note: The following may sound like idiocy, and I admit, I have no clue what the hell I am talking about, but I think its an interesting discussion nevertheless...


Can someone please explain to a complete noob, in layman terms, WHY cant we start using ARM chips instead of Intel?
You can, if you want to buy one of the 8cx-based laptops out there. They're available today.

Otherwise:

1). Software. The biggest ARM desktop presence right now is Linux, and if you are using closed-source binaries under Linux, good luck getting yours ported to ARM8vwhatever. MS is "trying" with their port of Win10 on ARM, but you still won't get native binaries for a lot of your favorite Windows software.
2). Mobile. Most ARM vendors are still focused on phones and tablets. Android.

If Google were more-ambitious and had started pushing for ChromeOS to be a Windows competitor, you'd see advanced Chromebooks with lots of software ports. Google would have had to start years ago, be focused, and be successful. That isn't the Google I know. They're an ad company first and a tech company . . . 7th or 8th? They waste so much time, money, and opportunity on useless crap.
 

scannall

Golden Member
Jan 1, 2012
1,709
1,104
136
A few billions lines of code. The task of shifting the world for all intents and purposes would be a massive expense.
 
  • Like
Reactions: loki1944

gdansk

Senior member
Feb 8, 2011
475
134
116
x86 has the largest software library in the world and it has maintained backward compatibility well. You can't yada yada it away, that's the reason.

You can emulate instruction sets in software, but that will always have a performance penalty. To reach near native speeds, you'd need a configurable decoder on the CPU to make it accept both x86 and ARM.

Transmeta and Nvidia tried to solve this with their x86 and ARM CPUs respectively. Both designs more or less failed to get competitive performance even when they targeted only a single instruction set.
 
Last edited:
  • Like
Reactions: spursindonesia

TheELF

Diamond Member
Dec 22, 2012
3,128
328
126
So whats the matter? MAKE x86 apps run naively on ARM CPUs! MAKE the same instructions sets for all CPUs regardless of devices they are used for... Just make it happen. And also, why is it, that ARM CPUs were not designed right from the start, with an ability to run x86 apps?

Am I missing something here? Am I talking complete nonsense? Lets discuss.
ARM is so efficient because it is RISC, reduced instruction set, which means that they only support the instructions that the designer thinks are needed that is the only thing that makes them efficient and cheap.
This also means that you can't just go ahead and make x86 apps run on ARM simply because the ARM chips lack the instructions needed,you always need a lot of emulation to pull this off.
If designers added all the instructions to ARM then it would not be efficient or cheap anymore you would just have a normal x86 CPU and intel/AMD is far ahead on that one,so there is nothing to be gained once again.
 

serpretetsky

Senior member
Jan 7, 2012
621
18
81
I am going to offer various topics to consider. I'm not an expert on any one of them, so I dont have the definitive answers

1) ARM and X86 are ISAs (instruction set architectures). A particular ISA had large performance differences in the 80's. Do they have much effect on performance these days? I'm thinking not. I think the question is not really ARM vs x86 with respect to performance. It's Apple vs Qualcomm vs Amazon vs Intel vs AMD etc. With x86 and ARM creating some extra borders in there that make it all more annoying.

2) Aren't ISAs protected by law? I don't think I can sell an x86 CPU even if I design the entire core myself.

3) Apple, Qualcomm, and Amazon all have very powerful ARM cpus. So what you are saying may come true. Apple is rumored to replace their intel laptop cpus with their in-house designed ARM cpus. Qualcomm's newest cpus from what I read are also very powerful. Amazon has internal ARM-based servers that based on various benchmarks do very well against Xeon and even AMD's Rome.

4) Graphics is not handled by the cpus mentioned above. Graphics is gpu archicture, for this are you looking at AMD, Nvidia, Qualcomm, Intel, Apple, Imagination Technologies. I don't believe GPU instruction sets are typically public. They usually need to come with a driver that can translate opengl/direct3d/vulkan/cuda/opencl to the GPU. A software coded for the API correctly should be able to run on any gpu regardless who made the GPU.

5) Emulating one cpu in another usually gives, like you say, abysmal performance. So this is usually not ideal. You need to have the actual software developers recompile and sometimes recode their software. This is not in any one company's control, so this is always difficult. Some customers might even use software that the original software developer no longer supports, in this case emulation might be the only choice (not ideal).
 

Nothingness

Platinum Member
Jul 3, 2013
2,153
398
126
ARM is so efficient because it is RISC, reduced instruction set, which means that they only support the instructions that the designer thinks are needed that is the only thing that makes them efficient and cheap.
Sorry but no :) ARM 64-bit instruction set is almost as complete as x86. It's efficient because it's been designed in the 21st century rather than having its roots in the i8080 which was designed in the early 1970's.

But I agree with the rest of your post.
 

Nothingness

Platinum Member
Jul 3, 2013
2,153
398
126
Not in my experience, at least, in NAS units...
Because NAS makers are using low cost chips for their lower end units. That's pretty obvious looking at, for instance, how Synology uses CPU: https://www.synology.com/en-uk/knowledgebase/DSM/tutorial/Compatibility_Peripherals/What_kind_of_CPU_does_my_NAS_have

For example, the Realtek RTD1296 is a 4-core Cortex-A53 which is the small core used in medium range smartphone SoCs.

Which makes me wonder if there's a single ARM-based SoC for higher-performance NAS or if that market belongs to Intel.
 

WelshBloke

Lifer
Jan 12, 2005
26,659
3,628
126
Scrapping the legal protection for x86 would probably help.

Let companies compete on what they can deliver not on how good their lawyers are at squishing the competition.
 

ThatBuzzkiller

Senior member
Nov 14, 2014
987
129
106
It's because of politics ...

Easier to develop technological standards with 3 corporations (AMD/Intel/Microsoft) than with over a dozen corporations that licenses the ARM ISA and it's extensions.

Most ARM license vendors can't even agree on SIMD extensions wider than NEON while in a couple of years it'll be common practice for currently maintained high performance applications to use AVX/AVX2 for x86 systems.

It's a lifesaver that the high performance CPU hardware/software stack is controlled by fewer powers. ARM will never catch up because not every vendors share the same interests.
 

Gideon

Golden Member
Nov 27, 2007
1,017
1,650
136
Most ARM license vendors can't even agree on SIMD extensions wider than NEON while in a couple of years it'll be common practice for currently maintained high performance applications to use AVX/AVX2 for x86 systems.
AVX is ~9 years old AVX2 is 7 years. I'm quite certain that in 5 years SVE2 (announced in 2019) will be common place in ARM servers and deskop/laptop processors (if there are any, which I'm also quite sure, there will).
 

Nothingness

Platinum Member
Jul 3, 2013
2,153
398
126
Easier to develop technological standards with 3 corporations (AMD/Intel/Microsoft) than with over a dozen corporations that licenses the ARM ISA and it's extensions.

Most ARM license vendors can't even agree on SIMD extensions wider than NEON while in a couple of years it'll be common practice for currently maintained high performance applications to use AVX/AVX2 for x86 systems.
ARM Ltd has defined two vector instructions, NEON and SVE. That's pretty clear, very well defined and agreed on by all vendors.

Look at the mess that AVX is on x86. It's not available on all Intel CPU almost 10 years after being introduced in Q1 2011 in Sandy Bridge (3 years after being announced in March 2008). And then Intel introduced AVX2. And then AVX-512, and then a dozen of AVX-512 variants. And AMD only added support for AVX2 recently. The situation here is much messier than in the ARM world. And that's with only 3 corporations supposedly "developing technological standards" (an assertion completely wrong; don't you think Intel and AMD talk to their large customers?).

It's a lifesaver that the high performance CPU hardware/software stack is controlled by fewer powers. ARM will never catch up because not every vendors share the same interests.
You remind me of those clairvoyant guys in the early 90's that said x86 would never reach server-like performance. Never use the word never unless you accept being ridiculed later :D
 

DisEnchantment

Senior member
Mar 3, 2017
647
1,423
106
Why not push indeed... Lets ask AMD how is their push against Intel working on same x86 architecture

Lets see...
Ryan Shrout
Financial Horsepower
MDF
Arch specific Open source code
Arm twisted ISVs
...

For closed ecosystems architecture does not matter.

Update:

AMD has ARM and x86 license.
During the Bulldozer years, AMD had to make the choice whether to further develop K12 or x86 . They chose x86 and you know why.
Difficult to fight in the desktop with ARM, and Mobile is crowded with off the shelf designs. Every Tom Dick and Harry is making an ARM chip.
 
Last edited:
  • Like
Reactions: Thunder 57

Richie Rich

Senior member
Jul 28, 2019
470
227
76
It's because of politics ...

Easier to develop technological standards with 3 corporations (AMD/Intel/Microsoft) than with over a dozen corporations that licenses the ARM ISA and it's extensions.

Most ARM license vendors can't even agree on SIMD extensions wider than NEON while in a couple of years it'll be common practice for currently maintained high performance applications to use AVX/AVX2 for x86 systems.

It's a lifesaver that the high performance CPU hardware/software stack is controlled by fewer powers. ARM will never catch up because not every vendors share the same interests.
  • AVX512 has 17 instruction sub sets (which is totally messy)
  • SVE2 consisting of only 4 sub sets (SVE+optional, SVE2 extension+optional). Not speaking about vector width 512 vs. 2048-bit.

But regarding NAS. That's strange that there is no A76 chip for NAS because this thing would absolutely smash x86 Atoms. Maybe ARM is used in there as very cheap option and A76 way to expensive for those cheap vendors like Realtek. But in one or two years these A76-A77 will enter NAS market too.

Another thing about NAS is virtualization at higher models. I have QNAP quad core Celeron with 8GB (second slot empy so I can upgrade it to 16GB) running one VM on it very comfortable. Not sure how many people would like to use VMs on ARM right now. As far as know there is no VM available for ARM based QNAP NASes.
 
Last edited:

DisEnchantment

Senior member
Mar 3, 2017
647
1,423
106
You remind me of those clairvoyant guys in the early 90's that said x86 would never reach server-like performance. Never use the word never unless you accept being ridiculed later
Never is never the right thinking obviously.
Back then it was a different scenario.
So many architecture to begin with.... and like Torvalds observed ... the arch on which people develop won out.
Developers cannot access those super expensive SPARC or power machines.
 

Nothingness

Platinum Member
Jul 3, 2013
2,153
398
126
Never is never the right thinking obviously.
Back then it was a different scenario.
So many architecture to begin with.... and like Torvalds observed ... the arch on which people develop won out.
It's not only that it was the arch on which people developed. It was also the arch which price was good enough with excellent performance; Intel then AMD did a tremendous job at making a horrible instruction set being better (with x86-64) and run fast.

But yeah we have a different scenario now. We have Intel having issues. We have some ARM server chips that start to look interesting from the Perf and Perf/W point of view. We have companies that can develop their own CPU and SoC that meet their needs. We have an army of developers that have been exposed to ARM (though alas only on embedded platforms through cross-compilation; where is that ARM laptop/desktop?!?).

IMHO what is slowing down adoption of ARM in the server space is AMD at last getting competitive again!

Developers cannot access those super expensive SPARC or power machines.
Through my University I could back then get a SPARCstation IPC for less than a mid end PC: <$2000 that was a lot (several months of summer work), but that came with plenty of memory 16MB and a 16" color screen and a real OS with a GUI; no similarly configured PC came close to that price in those time. I did not hesitate a second. A few years later things changed with Intel Pentium Pro / Pentium II.

But yes today you have no reasonable choice but x86 for your personal workstation.
 

moinmoin

Golden Member
Jun 1, 2017
1,883
2,090
106
And I thought Qualcomm's push for Snapdragon in laptops has been pretty massive. That it has not been successful with OEMs and consumers is another matter.

So whats the matter? MAKE x86 apps run naively on ARM CPUs! MAKE the same instructions sets for all CPUs regardless of devices they are used for... Just make it happen. And also, why is it, that ARM CPUs were not designed right from the start, with an ability to run x86 apps?
Then you have x86 chips, not ARM ones, and are back to square one.

Which makes me wonder if there's a single ARM-based SoC for higher-performance NAS or if that market belongs to Intel.
NAS units all seem to be low cost. Instead of moving to better SoCs most of the more expensive NAS products just move from low cost ARM to low cost Atom based CPUs...
 

ThatBuzzkiller

Senior member
Nov 14, 2014
987
129
106
AVX is ~9 years old AVX2 is 7 years. I'm quite certain that in 5 years SVE2 (announced in 2019) will be common place in ARM servers and deskop/laptop processors (if there are any, which I'm also quite sure, there will).
Which will still only account for a small number of ARM systems. How can SVE/SVE2 hope to gain traction without the backing from the likes of Apple, Huawei, Qualcomm, and Samsung ? Again why ignore the obvious power dynamics at play ?

ARM Ltd has defined two vector instructions, NEON and SVE. That's pretty clear, very well defined and agreed on by all vendors.
Nearly next to no vendors have implemented the SVE extensions meanwhile in the last 10 years the vast majority of x86 CPUs have supported AVX and in the last 5 years AVX2 has seen widespread reach.

Look at the mess that AVX is on x86. It's not available on all Intel CPU almost 10 years after being introduced in Q1 2011 in Sandy Bridge (3 years after being announced in March 2008). And then Intel introduced AVX2. And then AVX-512, and then a dozen of AVX-512 variants. And AMD only added support for AVX2 recently. The situation here is much messier than in the ARM world. And that's with only 3 corporations supposedly "developing technological standards" (an assertion completely wrong; don't you think Intel and AMD talk to their large customers?).
For as much of a mess that AVX extensions have been, what's happening with ARM vendors is an even bigger mess. Unlike x86 vendors with AVX, many ARM vendors don't actually want SVE to succeed so they avoid implementing it as much as possible ...

Yes, AMD and Intel may talk to their customers to develop extensions based on their requests but at the end of the day there's only 3 corporations with any real "voting power" to standardize those said functionality. The ARM ISA on the other hand has very little political power because it keeps getting shared with more parties that have less common interests among each other.

It's because of political failures why ARM hasn't succeeded in competing for high performance applications. ARM's biggest liability is it's zombie standards body. x86 will keep inevitably dominating high performance applications because it's standards body keeps showing that they are on top of their political game.
 
  • Like
Reactions: Carfax83

SPBHM

Diamond Member
Sep 12, 2012
4,964
335
126
given the software issues (the need for stuff being adapted or emulated) you would need a big price or performance benefit from the ARM option, which just isn't there, when you look at high end ARM SoCs they are not cheap, and as fast as they are they are going to be slow trying to "emulate" x86
 

ThatBuzzkiller

Senior member
Nov 14, 2014
987
129
106
Wait, what? Since when? Implementing a single 128b SVE2 pipe should be no more or less difficult than having a single NEON pipe.
It's not about implementation difficulties or other technical issues with SVE/SVE2. It's that there's next to no roadmaps from other vendors offering it.

Again, SVE/SVE2 could be technologically sound in design principle but it means nothing in the face of corporate politics if it's going to remain as a zombie standard. The HPC crowd is better off being served by the whims of either AMD or Intel than dealing with many of the big ARM vendors.

Apple does not even listen to developers and they are not interested in parallel processing on CPUs either. Qualcomm only wants to use the ARM architecture as a vehicle for their mobile connectivity technology. Huawei much like Apple wants to badly control their entire software/hardware stack and they do it for the benefit of their nation. As obviously with Nvidia, they only care about their GPUs since their CPU portion of the Tegra chipsets are laughably bad. Samsung much like Huawei only designs their processors in the spirit of national pride.

It's the main reason why AMD saw x86 as being more politically viable to compete against Intel. It's the above that I mentioned that makes you truly wonder just how much of a 'consensus' there is with a multitude of corporations having different interests.
 

DrMrLordX

Lifer
Apr 27, 2000
16,473
5,423
136
It's not about implementation difficulties or other technical issues with SVE/SVE2. It's that there's next to no roadmaps from other vendors offering it.

Again, SVE/SVE2 could be technologically sound in design principle but it means nothing in the face of corporate politics if it's going to remain as a zombie standard. The HPC crowd is better off being served by the whims of either AMD or Intel than dealing with many of the big ARM vendors.
That doesn't mean that ARM vendors are opposed to SVE2. There has been no public opposition to the standard. I don't think you're carefully considering what it DOES mean. SVE2 certainly isn't a "zombie standard".

Most of the ARM vendors use standard designs from ARM holdings. Even Samsung has ended their custom line of ARM SoCs. Qualcomm, Samsung, Rockchip, Huawei (in mobile), and Amazon (Graviton/Graviton2) use or will use reference ARM designs. Not sure about Ampere, but they may be using reference ARM cores as well. SVE2 will be implemented when ARM Holdings finally rolls designs that implement it. Neither A76 nor A77 feature any variant of SVE, so obviously, you aren't seeing it today. The last word I heard from anyone is that SVE2 would be standard for reference ARMv9 designs that should show up in silicon in 2022. Custom ARM vendors are free to implement it now. They just haven't. Fujitsu has implemented SVE in A64FX.

So long as a significant majority of ARM vendors continue to copy reference designs, SVE2 should show up in consumer products in 2022.
 

TheELF

Diamond Member
Dec 22, 2012
3,128
328
126
Sorry but no :) ARM 64-bit instruction set is almost as complete as x86. It's efficient because it's been designed in the 21st century rather than having its roots in the i8080 which was designed in the early 1970's.

But I agree with the rest of your post.
Having the instructions available on paper is different from every CPU actually having all of them implemented,is there even a real ARM CPU that has all instructions available?
RISC CPUs are efficient only if they get rid of instructions they don't (often) use.
RISC started in the 80's instead of the 70' but that's not really a huge difference,the whole ideology of RISC was to only use the most important instructions to reduce overhead.

Much of the circuitry in the CPU was dedicated to decoding these instructions which were never being used. The RISC idea was to include only those instructions that were really used, using the space that had been used for the removed circuitry for other circuits that would speed the system up instead.
 

ASK THE COMMUNITY