The upcoming Qualcomm chip certainly looks good… in the synthetic benchmarks we’ve seen so far.
ARM devices, particularly on windows, often look good in synthetic workloads, but falter in real-world tasks.
Yeah, right now the benchmarks are competitive… with AMD’s chips from last year. When the Snapdragon X Elite comes out, it’ll be against AMD’s Strix chips (although those are delayed), which will be a sizable performance uplift, and won’t have to do any x86-to-ARM translation.
Both Intel and AMD will lose some potential market share, sure, but I’m tired of people who don’t know what they’re talking about acting like Qualcomm will be able to crush AMD or Intel just because they use an ARM CPU. It’s not how things work.
The ARM architecture does apparently (I’m no expert) have some inherent power-efficiency advantages over x86, and it sounds like the Snapdragon X Elite will be specifically designed for high-performance mobile computing with low power consumption like the Apple M-series chips. So, all else being equal, you’d expect Qualcomm to have an advantage in laptops with this chip, but all else isn’t equal because the software isn’t there yet, and no one in the PC market is quite in a position to kickstart the software development like Apple is with Macs.
The ARM architecture does apparently (I’m no expert) have some inherent power-efficiency advantages over x86
Well, the R from ARM means RISC, and x86 (so, by extension, x86_64) is a CISC architecture, so they are not even in the same “family” of designs.
Originally, CISC architectures were more popular, because it meant less instructions to write, read, store, etc. Which is beneficial when hardware is limited and developers write in assembly directly.
Over time, the need for assembly programming faltered, and in the 90s, the debate for CISC vs RISC resurfaced. Most developers then wrote code in C and C++, and the underlaying architecture was losing relevance. It is also worth noting that due to a higher number of instructions, the machine code is more granular, and as a result, RISC code can inherently be further optimised. It also means that the processor design is simpler than for CISC architectures, which in turn leaves more room for innovation.
So, all else being equal, you’d expect Qualcomm to have an advantage in laptops with this chip, but all else isn’t equal because the software isn’t there yet, and no one in the PC market is quite in a position to kickstart the software development like Apple is with Macs.
Now, a key consideration here is that the x86 architecture has been dominating the personal computer market for close to half a century at this point, meaning that a lot of the hardware and software is accommodating (wrt functionality, optimisation, etc) for it specifically.
Therefore, RISC architectures find themselves at a disadvantage: the choice in Operating Systems is limited, firmware and drivers are missing, etc. Additionally, switching to RISC means breaking legacy support, or going through emulation (like the Apple M3 does).
However, in our modern ecosystem, the potential gain from switching to a RISC architecture is considerable (storage is cheaper than ever, RAM is cheap and fast, and seldom anyone is writing assembly anymore. Plus, those who do might enjoy the higher degree of control the additional granularity affords them, without having to do everything by hand, given the degree of assistance modern IDEs offer), and it will gradually become a necessity for every vendor.
For now however, the most popular computer Operating System worldwide has poor performance on ARM, and no support for other RISC architectures (such as RISC-V) that I know of.
The challenge here is in breaking a decades long dominance that originated from a monopoly: if you have paid attention to what Apple has been doing, they initially used large parts of FreeBSD to build a new Operating System that could run on their custom processors (Motorola 68k), and then built the rest of their Operating System (Darwin and Aqua) on top of it. This afforded them the possibility to switch to Intel CPUs in 2005, and back to ARM in 2020 with their M series CPUs.
The quality of their software (in large parts derived from the quality of free software and of staggering design work) has allowed them to grow from a virtually negligible share of computer users to the second place behind windows.
Now, other Operating Systems (such as Linux) have the same portability characteristics as FreeBSD, and can feasibly lead to such a viable commercial OS offering with support for several hardware architectures.
“All” that is needed is a consistent operating system, based on whichever kernel fits, to supplement MacOS in the alternative offering to windows.
Most software would be available, and a lot of firmware would too, thanks to ARM being used nearly exclusively in mobile phones, and most mobile phones running a Linux kernel.
Once we have a (or better, a few) Linux or BSD based operating system(s) with commercial support, consistent design, and acceptable UX for “normies”, such CPUs will become a very valid offering.
🛼 Yeah, RISC is good ⚗️🔥
Until commercial games and professional software start coming with arm versions this isn’t going to work out. And even if they did, I’m not entirely sure if it’s possible to use the same gpus on arm at all so even if they really push it, people that do pc gaming are going to reject it.
Wonderful world of proprietary software is always leading innovation and adaptation or new technologies.
It just needs to be better than the Intel CPUs with iGPU that power most laptops. Increased perf per watt is the first goal. Cloud service providers will follow suit, leaving x86 gaming machines as an edge use case. Once PS6 or PS7 runs on ARM then it’s game over.
I choose this manufacturer because it promises 5 years of software updates, much longer than others, and I like it’s operating system features more.
Coming coon to PCs near you.
Because Intel has a fab and could sell capacity.
Uh, OK I guess? If their promised actually good shit is finally actually good.
Removed by mod
Software tends to be written against an operating system or slightly more high-level API, not against an instruction set. We’re not in the 1960s, any more, compilers exist.
Even back during the x86 to x86_64 switchover people didn’t re-write software, we mostly just cleaned up legacy code, removing old architecture-dependent tricks that wouldn’t work in 64 bit mode and hadn’t been necessary to achieve proper performance for a couple of hardware generations, anyway.
There’s always going to be exceptions but if your calculator app needs more work than a recompile you did something wrong. Possible sources of nastiness in otherwise well-written software include anything that relies on manual memory layout, mostly alignment issues (endianness isn’t an issue x86 vs. ARM) and very occasionally some inline assembly for the simple reason that inline assembly has become exceedingly rare. I say “well-written” because there’s e.g. C code out there hitting so much undefined behaviour that it compiles on exactly one compiler and runs on one architecture but even then it’s a case-by-case call on whether to rewrite or clean it up. I’d tend towards rewrite in Rust but there’s conceivable exceptions. Also you should’ve fixed that shit up years ago.
rewrite it from scratch
For most programs all is needed is just a recompilation.
And with FOSS there is also no need to ask the developer. Debian Linux already has more RISC-V software than Windows has ARM.
I recently bought an Apple Silicon laptop and I’ve noticed that only a handful of my apps are run in Intel translation mode. Intel apps are significantly slower to launch because they front load the code translation, but I’ve been surprised to see how much software is fully native or universal now. Apple has done a good job giving developers the tools to write code that is portable, but it’s been stretching the pain over servers revision cycles. For example dropping 32bit software support two versions ago. I am not convinced Microsoft has the nerve to break compatibility but Linux will be fine.
MS is doing it. They are killing Outlook and moving to New Outlook. I can’t think of any other app that is as important as that one.
I don’t mean Microsoft apps. I know those will work fine. I mean all the effort Microsoft has put into making sure that Windows remains compatible with very old third-party software, including drivers.
I suspect them moving/re-coding their enterprise apps over to PWA has a lot to do with getting those apps to run well on different architectures.
I just wish we’d get solid, affordable RISC-V already. Especially with the arbitrary-length vector instruction extension, which I find to be a much better design for hardware compatibility than the fixed width extensions in x86 (and ARM too, AFAIK).