Hunnit testat lite mer, skulle säga att mognaden för RISC-V + Linux verkar vara större än jag trodde!
Men kanske i så konstigt, kikade på denna video
och det man hör är ju att Linux i praktiken är för RISC-V vad Intel under många år var för Windows: Linux är den plattform verktyg, bibliotek etc primärt utvecklas på och för när det kommer till den generation RISC-V CPUer som nu är under utveckling. D.v.s. mer högpresterande modeller tänka för server / high-end embedded enheter (dessa lär i väldigt nära 100 % av fallen köra Linux).
Fokuserar man specifikt på Mango Pi, en single-core RISC-V @ 1,0 GHz som efter jag hittat en jämförelse tydligen ska prestera väldigt snarlikt en RPi Zero. D.v.s. väldigt långsam jämfört med en modern PC, beroende på vad man kör är min M3 Max laptop mellan 30-200 gånger snabbare...
Det gör inte Mango Pi oanvändbar, men man får ta det för vad det är: i praktiken en mikrokontroller som är kapabel att köra en "vanlig" Linux distro i CLI-läge.
I övrigt finns 1 GB RAM, 802.11n (Wifi-4, 2,4 GHz only, i praktiken får man 20-25 MBit/s), en USB-C port med USB2.0 stöd. Finns också en 40-pinnars I/O header med GPIO-stöd, UARTs, I2C och SPI stöd.
Det finns en GPU. Har inte ens brytt mig om att testa (men den ska fungera att köra Linux-desktop vad jag läst) givet hur långsamt saker går även med CLI.
USB-porten fungerar hur bra som helst, har under testning satt en USB/Ethernet dongel där. CPUn är för klen för att maxa porten, man får ca 250 Mbit/s (går att få ~400 Mbit/s över USB2). Även själva kortet har varit helt stabilt, det med 100 % last under flera dagar då jag byggt en del tester.
Vad det gäller stöd för utveckling:
Riktigt segt att Visual Studio Code i nuläget inte stödjer remote-connection mot RISC-V targets. Finns en ticket för specifikt det, får se om någon agerar framåt när det börjar komma ut RISC-V servers på marknaden
Vim, Emacs, Nano etc fungerar naturligtvis. Vidare går det även att köra VSCodium (öppna versionen av VS Code) via remote-läget även mot RISC-V, så det pekar på att jobbet egentligen redan är gjort för att fixa stödet i VS Code också...
C, C++, Rust, Java, Python3, Go, NodeJS fungerar alla bra (av det jag testade)
.NET fungerar tyvärr inte (fungerar däremot lysande på Linux/ARM64 sedan ett par år tillbaka)
Tog 1,5 dygn att kompilera min 2024 års AoC, mycket p.g.a. av att det använder Rust (C++ och Rust program går utmärkt att kompilera, men det är horribelt långsamt att kompilera). Go är definitivt att föredra på den här. Dels fungerade korskompilering överlägset bäst med Go av de saker jag testade, dels gick det snabbare att kompilera alla 25 dagarna för 2022 års AoC (använde Go då) än det tog att kompilera 1 dag med Rust...
Vill man kors-kompilera var det överlägset enklast i Go. Är fullt möjligt i C och C++ (men nog bra om man har lite erfarenhet av det). Hade tyvärr strul med kors-kompilering av Rust (men fungerade funktionellt lysande att köra Rust-cargo direkt på Pi:en, även om det är skitsegt).
Python/NodeJS fungerar också bra, men då CPUn är så klen tar det en icke-försumbar tid. att ens nå början av programmet p.g.a. initiering av VM (ännu värre om man kör Java). Men när programmen väl kör fungerar de funktionellt korrekt!
För att sätta en siffra på "seg uppstart", att köra detta python-program tar 36s(!), det tar ~300ms på min M3 laptop. Det positiva är att både Python och NumPy går logiskt sett perfekt att köra även på RISC-V. Är mycket NumPy som ställer till det här, Python program som bara använder standardbiblioteket startar på några sekunder.
Kompilerade program startar betydligt snabbare, de går igång på 10-20ms (vilket i.o.f.s. är skitsegt egentligen, men är tillräckligt snabbt för att vanlig CLI-användning ska fungera helt OK).
För att orka använda RISC-V vill jag ha en snabbare CPU. Men funktionellt fungerar det över förväntan. Ska byta ut den ESP32 som idag läser av min elmätare och publicerar informationen till ett internt MQTT-nät mot denna. Då får vi se om den är stabil när den ska gå 24/7 konstant under månader (mellan elavbrotten...).
Så för "IoT" saker är nog Mango Pi en trevlig pryl man vill köra Linux istället för "on the metal" ramverk på en MCU (kör Arduino på ESP32:an, vet andra som kör MicroPython på EPS32 för att läsa elmätare).