136
submitted 3 months ago* (last edited 3 months ago) by Timely_Jellyfish_2077@programming.dev to c/linux@lemmy.ml

Help me understand this better.

From what I have read online, since arm just licenses their ISA and each vendor's CPU design can differ vastly from one another unlike x86 which is standard and only between amd and Intel. So the Linux support is hit or miss for arm CPUs and is dependent on vendor.

How is RISC-V better at this?. Now since it is open source, there may not be even some standard ISA like arm-v8. Isn't it even fragmented and harder to support all different type CPUs?

you are viewing a single comment's thread
view the rest of the comments
[-] Treczoks@lemmy.world 7 points 3 months ago

Actually, I think RISC-V is even worse than ARM. With ARM, at least you have a quite reliable instruction set on the CPU. With RISC-V, most vendors have their own extensions of the instruction set, which opens a big can of worms: Either you compile all your stuff for your own CPU, or you have a set of executables for each and every vendors flavor of RISC-V commands, or you exclusively use the RISC-V core commands. The first would be only for hardcore geeks, the second would be a nightmare to maintain, and the third would be not really efficient. Either way, it sucks.

[-] Laser@feddit.org 8 points 3 months ago

The same was true for x86, Intel had SSE and AMD had 3DNow, programs just provided different codepaths per available feature (this is where Intel pulled some dirty tricks with their ICC). It's not that big of a problem.

[-] Treczoks@lemmy.world 3 points 3 months ago

Yes, but those were only two distict flavors, and both had a lot of pull. And those special instructions were only needed in special applications and drivers. With RISC-V we are talking about a dozen different flavors, all by small and mostly insignificant players and the commands that extend the basic command set are commands for quite common operations. Which is a totally different scenarion than the SSE/3DNow issue back then.

[-] Laser@feddit.org 1 points 3 months ago

Some extensions won't matter in the slightest, especially concerning controllers that use the instruction set. For the vendors selling general purpose CPUs, we'll see how it shakes out. It's in their interest to retain compatibility, so I suppose it'll be similar to how it's handled for Vulkan: vendors having their own extensions that at one point get merged into a common de facto standard for general purpose computing or something.

this post was submitted on 06 Aug 2024
136 points (97.2% liked)

Linux

48074 readers
783 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS