July 12th, 2024

Linus Torvalds says RISC-V will make the same mistakes as Arm and x86

Linus Torvalds expresses concerns about RISC-V development potentially repeating past processor mistakes. Despite gaining traction, RISC-V lags in performance compared to x86 and Arm processors. Torvalds anticipates a gradual evolution for RISC-V.

Read original articleLink Icon
Linus Torvalds says RISC-V will make the same mistakes as Arm and x86

Linus Torvalds, the creator of Linux, expressed concerns that RISC-V development will repeat the mistakes of Arm and x86 processors due to challenges in coordinating hardware and software teams. Despite RISC-V gaining traction, especially in China, it still lags behind current x86 and Arm processors in performance. Torvalds believes RISC-V will need time to mature and overcome issues faced by previous architectures. While he anticipates mistakes in RISC-V development, he also acknowledges that advancements in software make it easier for new architectures like RISC-V to emerge. Torvalds suggests that it took decades for Arm and x86 to reach their current competitive levels and expects a similar evolution for RISC-V. Despite the anticipated challenges, he believes that developing RISC-V hardware is now more accessible.

Related

How to Design an ISA

How to Design an ISA

The article explores designing Instruction Set Architectures (ISAs), focusing on RISC-V's rise. David Chisnall highlights ISA's role as a bridge between compilers and microarchitecture, emphasizing the challenges and importance of a well-designed ISA for optimal performance in various computing environments.

x86-64-v5? The Future Of x86-64 Micro-Architecture Feature Levels

x86-64-v5? The Future Of x86-64 Micro-Architecture Feature Levels

Questions arise about potential x86-64-v5 micro-architecture feature levels for future processors. Discussions on LLVM Discourse suggest incorporating latest AMD and Intel CPU ISA features, impacting upcoming Zen 4 and Icelake Server processors. Integration challenges with AVX10 256-bit remain unresolved.

Improving 64-bit RISC-V Linux support in Rust

Improving 64-bit RISC-V Linux support in Rust

Ferrous Systems and Codethink collaborate to boost 64-bit RISC-V Linux support in Rust to Tier 1 via the RISE Project. This effort aims to enhance Rust's functionality for diverse platforms, focusing on RISC-V's open instruction set architecture.

RISC-V AI Chips Will Be Everywhere (2022)

RISC-V AI Chips Will Be Everywhere (2022)

RISC-V AI chips, exemplified by Esperanto's ET-SoC-1 chip with over 1,000 cores, are set to revolutionize AI processing. Industry forecasts predict substantial growth, challenging traditional architectures and promoting innovation.

Linus Torvalds: RISC-V Repeating the Mistakes of Its Predecessors [video]

Linus Torvalds: RISC-V Repeating the Mistakes of Its Predecessors [video]

The speaker discusses open development in hardware architecture, emphasizing RISC-V's challenges and historical mistakes. Early software developer involvement is crucial to prevent issues. Despite limited support for RISC-V, transitioning between hardware platforms is becoming easier with cloud computing standardization.

Link Icon 14 comments
By @__s - 4 months
Bad headline, he prefaces the statement with "I fear", `says` could've been written `fears`

It's realistic to expect RISC-V's execution won't be (& hasn't been) flawless

The context is re spectre

By @rany_ - 4 months
> RISC-V is an open-standard ISA for processors that is slowly gaining traction, especially in China, where some tech companies are using it to bypass America’s sanctions on the country.

I really don't like that narrative, it doesn't even make sense as MIPS already exists and is more than sufficient for the applications RISC-V is being used in. The same could be said about Linux but it's obvious how ridiculous it would be to bring that up.

By @llm_trw - 4 months
One thing that I learned when becoming a senior engineer is that if the layer above you is profitable enough you should build substandard implementations in your layer that match the abstractions of the above layer. Overall the system will perform much better than if you optimize for whatever the bottleneck on your layer is.
By @ChrisArchitect - 4 months
By @monkeydust - 4 months
Any offers on how long it will it be before were talking about Windows RISC-V machines?

I just upgraded my 6 year old Lenovo X1 and was pretty close to pulling the trigger on an ARM (Snapdragon) machine but felt too unproven and I knew there would be software issues for some of the things I needed to do so sticking with x86 (AMD).

I can easily see the decision next time going the other way or even RISC-V if the sofware is there to match.

By @olalonde - 4 months
Which mistakes is he referring to concretely?
By @incomingpain - 4 months
Not exactly nostradamus to predict things wont go perfectly. But that's the thing about history, it gives you a chance not to make the same mistakes. Will RISCV have learnt history?
By @notepad0x90 - 4 months
it sounds to me like complex instructions are unavoidable unless the use case is restricted to microcontrollers. A modern ISA should CPU feature flags that allow implementers to disable complex and expensive instruction sets.

Would it be fair to day that ARM for example is a CISC/RISC hybrid, where armv8-a is full on CISC but armv8-m is RISC proper? But that's what I'm suggesting anyways.

By @rldjbpin - 4 months
the "futuristic world if <X> was true" meme fully applies to the core idea that sw guys don't get the hw (and vice versa). even more true for the business people that leave no room for bridging the gap.

abstractions exist for a reason but it is refreshing to see some examples where researchers leverage the underlying hw architecture (see mamba architecture that works around GPU design - https://news.ycombinator.com/item?id=38932350). but we can do so much more instead of pushing the new version of the existing process node.

By @nickorlow - 4 months
1. Want a simpler ISA

2. Build it

3. Realize adding a complex instruction that's weird can really boost performance in key use cases

4. Repeat 3 until someone thinks your ISA is overcomplicated and makes a new one

By @neonsunset - 4 months
They had one job: make it similar to ARMv8-A but not too similar to give ARM any ideas. Look at SSE4/AVX2 and NEON and make sufficiently similar vector extensions to that as well.

So far RISC-V has failed miserably at both. "Just solve it in decoder", "just fuse common idioms", "just make vsetvli fast". Sure. Not like designers of ARMv8 or X86S had decades of prior experience to make better decisions.

By @RecycledEle - 4 months
Can someone please create an instruction set where the entire instruction set is implemented (even if in microcode) on every processor that uses that instruction set?

Have you looked at RISC-V or x64? They are messes of instruction set extensions, most of which reuse the same opcodes.

We have terabytes of disk space and gigabytes of RAM. We can afford a few extra bits in the opcode.