• StarDreamer@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 months ago

    How good are the RISC-V vector instructions implementations IRL? I’ve never heard of them. My experience with ARM is that even on certain data center chips the performance gains are abyssal (when using highly optimized libraries such as dpdk)

    • barsoap@lemm.ee
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      6 months ago

      It’s bound to differ wildly. Most ARM chips are Contex Asomethings, that is, ARM designs, and those that aren’t are designed by companies with lots of resources… but also with mobile and embedded as their primary market so it’s not the primary focus. Most RISC-V cores are open source designs and/or created by startups, generally also not targeting HPC. The EU is investing into RISC-V HPC for EuroHPC (that is, supercomputers), you might be able to buy a chip associated with that soonish and try for yourself.

      Heck, you can build a microcontroller-class chip that supports vector instructions – you just have to iterate element by element. Instruction support does imply that the instructions work, not that they’re fast.

      That should be more on the BLAS side of things though, if you want to packet route I guess wait until Mikrotik ships boards with RISC-V SoCs, I haven’t heard anything and definitely not official statements but they’re bound to get on the train. They used Tilera in the past and as far as I’m aware the reason they switched away was Tilera overall failing, not because it didn’t work for the application. A structurally similar RISC-V chip should be quite easy to design and as it’s a standard architecture you don’t have to write your own libraries so it’s way easier to not go bankrupt doing it. Oh and Tilera of course definitely isn’t a Vector chip, it’s a “have a gazillion cores on a die, each barely larger than a DSP” kind of approach. You can have a core per pair of ports or whatever it is they’re doing.

      Another interesting thing would be RISC-V GPUs. They do a lot of memory stuff that makes them so much better at BLAS stuff and vector instructions fit right into that. For proper graphics support you’d still need a custom ISA extension to wire up some odds and ends (say the texture units with their crazy indexing operations) but it’s definitely an option… which is unlikely to see HPC scale any time soon as I don’t see NVidia, AMD or Intel giving up the architectures they have.