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?

  • MNByChoice@midwest.social
    link
    fedilink
    arrow-up
    26
    arrow-down
    1
    ·
    1 month ago

    RISC-V is better for Linux due to driver support. Vendors making hardware are more likely to use RISK-V for their controllers due to the costs. Modern computers are putting more functions under control of kernels that run on proprietary compute. (There exists a chart showing how little the Linux kernel directly controls.) As more of those devices run RISC-V, they will become more discoverable.
    Also, those that can design or program tge devices will have more transferrable skills. Leading to the best designs spreading, and all designs improving.

    Places in a computer with compute (non-exhaustive, not all candidates for RISC-V):
    BMC
    Soundcard (or subsystem on mainboard)
    Video card (GPU and the controller for the GPU)
    Storage drives
    Networking
    Drive interface controlling card
    Mainboard (not BMC)
    Keyboard
    Mouse
    Monitor
    UPS
    Printer

    Will it be perfect? Nope.
    A lot of the vendors will lock things up as well.

    • tetris11@lemmy.ml
      link
      fedilink
      arrow-up
      5
      ·
      1 month ago

      There exists a chart showing how little the Linux kernel directly controls

      I’d be greatly interested in seeing this chart

        • tetris11@lemmy.ml
          link
          fedilink
          arrow-up
          3
          ·
          1 month ago

          examples he gives are what you’d expect:

          • Linux doesnt control the bootloader
          • Linux doesn’t control power management

          Many systems on the chip that Linux doesn’t have control over, and could be compromised by a cross SoC attack

          • MNByChoice@midwest.social
            link
            fedilink
            arrow-up
            2
            ·
            1 month ago

            Thank you for pulling the image out.

            This talk surprised me at the time. I was starting the eye opening experience of design hardware. Linux more orchestrates the hardware than controlling it.

            • tetris11@lemmy.ml
              link
              fedilink
              arrow-up
              2
              ·
              1 month ago

              For me it opened my eyes to the idea that all you really need is some CPU time and a little RAM space to have a full-fledged performative system. Sure, there will be a large attack vector for remote spying, but if you just want to code and play games then it’s pretty amazing how little you need :-)

  • sabreW4K3@lazysoci.al
    link
    fedilink
    arrow-up
    14
    arrow-down
    1
    ·
    1 month ago

    Better for Linux? I’m not sure I would say it is. Better for the world in general? When you compare things like power consumption, you can definitely see that in some use cases (the average user), ARM is superior. But for Linux? Maybe by default owing to the fact that it’s more modern. As for RISC-V, the core is open source and “all” the extensions are proprietary, so it’s not as open source as it pretends to be. But it’s definitely better than what we’re currently accustomed to as mainstream.

  • LeFantome@programming.dev
    link
    fedilink
    arrow-up
    13
    ·
    edit-2
    1 month ago

    Shortest answer is that RISC-V is Open Source and ARM is proprietary but what does that mean?

    First, it means “freedom” for chip makers. They can do what they want, not what they are licensed to do. There are a lot of implications to this so I will not get into all of them but it is a big deal. There is even a standard way of adding ISA extensions. It makes RISC-V an interesting choice for custom chip makers trying to position themselves as a platform ( think high-end, specialty products ).

    If you are a country or an economy that is being hit with trade restrictions from the Western world ( eg. China ), then the “freedom” of RISC-V also provides you away around potentially being denied access to ARM.

    For chip makers, the second big benefit is that RISC-V is “free” as in beer—no licenses. For chips in laptops or servers, the ISA license is a small part of the expense per unit. But for really high-volume, low-cost use cases, it matters.

    In the ARM universe, middle of the market chip makers license their designs off of ARM ( not just the ISA ). This is why you can buy “Cortex” CPUs from multiple suppliers. Nobody else can really occupy this space other than ARM. In the RISC-V universe, you can compete with ARM not just selling chips but by licensing cores to others. So, you get players like StarV and MilkV that again want to be platforms.

    So, RISC-V is positioned well across the spectrum—somewhat uniquely so. This makes it an excellent bet for building software and / or expertise.

    It is only the ISA that is Open Source though. Unlike some of the other answers here imply, any given RISC-V chip is not required to be any more open than ARM. The chip design itself can be completely proprietary. The drivers can be proprietary. There is no requirement for Linux support, etc. That said, the “culture” of RISC-V is shaping up to be more open than ARM.

    Perhaps because they want to be platforms, or perhaps because RISC-V is the underdog, RISC-V companies are putting more work into the software for example. RISC-V chip makers seem more likely to provide a working Linux disto for example and to be working on getting hardware support into the mainline kernel. There is a lot of support in the RISC-V world for standards for things like firmware and booting.

    With the exception of RaspberryPi, the ARM world is a lot more fractured than RISC-V. You see this in the non-Pi SBC world for example. That said, if we do consider just RaspberryPi, things are more unified there than in RISC-V.

    Overall, RISC-V may be maturing more quickly than ARM did but it is still less mature overall. This is most evident in performance. Nobody is going to be challenging Apple Silicon or Qualcomm X Elite with their RISC-V chips just yet. Not even the Pi is really at risk.

    Eventually, we will also just get completely Open Souce designs that anybody can implement. These could be University research. They could be state funded. They could be corporately donated designs ( older generations maybe ). Once that starts to happen, all the magical things that happened for Open Source software will happen for RISC V as well.

    Open Source puts a real wind at RISC-V’s back though. And no other platform makes as much sense from the very big to the very small.

    • Rayspekt@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      1 month ago

      Thank you for the great write-up. Man, I sometimes regret not having studies computer science. I am really invested in open source and net neutrality etc., but I can’t contribute shit so I’m restricted to a mere consumer.

      I’m just happy that my garuda linux just keeps working most of the time becaus I couldn’t code anything if my devices would fail.

      • Feathercrown@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 month ago

        I can’t contribute shit so I’m restricted to a mere consumer

        That’s not true! Contributing documentation improvements is critically important for the growth and health of the open-source community but is very overlooked.

      • trolololol@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 month ago

        I got graduate and masters in the hardware area but learned all of those things about arm and riscV by myself. I only got to see mips and hypothetical ISA in my courses. Heck riscV and rpi didn’t even exist.

        All you need is interest and time.

  • Treczoks@lemmy.world
    link
    fedilink
    arrow-up
    6
    ·
    1 month 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.

  • electricprism@lemmy.ml
    link
    fedilink
    arrow-up
    5
    ·
    1 month ago

    Yes. Less blobs than ARM. I’m not even sure if some RISC-V have any blobs – someone correct me if I’m wrong.

    Also getting cockblocked by proprietaryisms is bullshit. HDMI is a Circle Jerk of capitalism controlling competition and the market for self preservation.

  • HarriPotero@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    1 month ago

    I don’t think there has been huge issues with incompatible ISAs on ARM. If you’d use NEON extensions, for example, you might have a C-implementation that does the same if the extensions are not available. Most people don’t handwrite such code, but those that do usually go the extra mile. ARM SoCs usually have closed source drivers that cause headaches. As well as no standardized way of booting.

    I haven’t delved super-deep into RISC-V just yet, but as I understand these systems will do UEFI, solving the bootloader headache. And yes, there are optional extensions and you can even make your own. But the architecture takes height for implementing an those extensions in software. If you don’t have the gates for your fancy vector instruction, you can provide instructions to replicate the same. It’ll be slower on your hardware, but it’ll be compatible if done right.

  • ben_dover@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 month ago

    i’ve had the same thought lately. the common arm design approach around the bootloader seems to turn old Android phones and tablets into e-waste sooner than necessary, in theory they could all run Linux and be useful for another ten years. but it’s hard enough to port mainline Linux to Android devices, and almost impossible to get all the included hardware working properly