Die Zukunft von RISC
HeimHeim > Nachricht > Die Zukunft von RISC

Die Zukunft von RISC

Jul 17, 2023

Wir verfolgen die offene, lizenzfreie RISC-V ISA schon seit einiger Zeit. Zuerst haben wir die Spezifikationen gelesen, und dann haben wir RISC-V-Kerne in Mikrocontrollern gesehen, aber jetzt gibt es eine neue Platine, die genügend Rechenleistung zu einem ausreichend niedrigen Preis bietet, um in einem Einplatinencomputer wirklich interessant zu sein. Der VisionFive 2 lief bereits im September 2022 erfolgreich auf Kickstarter und ich habe endlich ein Gerät mit 8 GB RAM erhalten. Und es funktioniert! Der JH7110 übertrifft einen modernen Desktop oder sogar einen Raspberry Pi 4 nicht, ist aber gut genug, um eine Desktop-Umgebung auszuführen, im Internet zu surfen und Software zu testen.

Und das ist eine große Sache, denn die RISC-V-Architektur taucht an vielen Stellen auf. Die Herausforderung bestand darin, echte Hardware zu bekommen, die leistungsstark genug ist, um Linux auszuführen und Software darauf zu kompilieren, und die keinen Arm und kein Bein kostet. Wenn ARM eine alternative Architektur ist, dann ist RISC-V immer noch eine experimentelle Architektur, und das ist ein Problem, wenn man versucht, VF2 zu verwenden. Das ist ein Thema, das wir ein paar Mal wiederholen werden, aber hier ist zu bedenken, dass der erste Schritt zur Behebung von Problemen darin besteht, mehr Geräte in Umlauf zu bringen.

Was bekommen Sie also? Den VF2 gibt es in drei Varianten mit zwei, vier und acht Gigabyte RAM. Ansonsten sind die Platinen identisch und der Star der Show ist der JH7110, ein 64-Bit-Quad-Core-RISC-V-SoC. In diese CPU ist die Imagination BXE-4-32 GPU integriert. Es gibt einen USB-C-Anschluss, der normalerweise zur Stromversorgung des Boards verwendet wird, vier USB-3.0-Anschlüsse, die sich eine einzige PCIe-2.0-Lane teilen, und zwei Gigabit-Ethernet-Anschlüsse. Das Board verfügt nur über einen einzigen HDMI-2.0-Anschluss, kann aber über einen MIPI-DSI-Anschluss auch zwei Displays betreiben. Außerdem gibt es einige nette Raspberry-Pi-Kompatibilitätsfunktionen. Das Board verfügt über einen 40-poligen GPIO-Header, der größtenteils mit der Pinbelegung des Raspberry Pi kompatibel ist, und verfügt sogar über den vierpoligen Power-over-Ethernet-Header an der richtigen Stelle für die Verwendung der Pi PoE HATs. Das funktioniert sehr gut, das einzige fehlende Element ist die Lüftersteuerung am HAT.

Es gibt auch MIPI-Eingabe. Das sollte mit so etwas wie den Raspberry Pi-Kameras kompatibel sein, obwohl ich einerseits keine Zeit zum Testen habe. An der Unterseite des Geräts befinden sich ein SD-Kartensteckplatz, ein eMMC-Sockel und ein sehr willkommener M.2-NVMe-Steckplatz. Bislang erfordert das Booten von der NVMe immer noch eine Boot-Partition auf der SD-Karte, führt aber immer noch zu dem ganzen Geschwindigkeitsschub, den die einzelne dedizierte PCIe 2.0-Lane wert ist. Direktes Booten von NVMe ist auf der Roadmap, aber noch nicht implementiert.

Die Hardware ist einigermaßen beeindruckend, aber der Nutzen hängt vom Betriebssystem und der Softwareunterstützung ab. Es gibt ein Debian-Image, das regelmäßig aktualisiert wird und Probleme ständig behoben werden. Was uns wirklich am Herzen liegt, ist der Upstream-Status, und dieser Prozess hat begonnen. Es besteht die Hoffnung auf ein minimal bootendes System mit Kernel 6.3, allerdings müssen noch einige Treiber upgestreamt werden, bevor das System mit dem Vanilla-Kernel vollständig nutzbar ist.

Und einer dieser Treiber, die wir erwähnen müssen, ist die GPU. Die Hardware ist als BXE-4-32 GPU bekannt, ein GPU-Kern von Imagination Technologies und Nachfolger der PowerVR-Architektur. Imagination setzt sich dafür ein, seine Designs in RISC-V-Chips zu integrieren, und hat im Rahmen dessen Open-Source-Treiber für seine modernen Produkte veröffentlicht. Es gibt fortlaufende Bemühungen, diese Treiber zu aktualisieren, und einige Aktivierungscodes sind bereits in Mesa gelandet.

Es gibt auch das umfassendere Problem der RISC-V-Unterstützung. Die meisten modernen Distributionen erstellen RISC-V-Pakete, es ist jedoch nicht ungewöhnlich, dass auf dieser weniger beliebten Architektur Probleme oder fehlerhafte Pakete auftreten. Ich wollte zum Beispiel das VF2-Board mit der Phoronix Test Suite vergleichen. Das ist als Noarch-Paket verfügbar, hat aber mehrere Abhängigkeiten, wie php-cli. Das hängt von PHP8.2 ab und dieses Paket kann derzeit nicht auf RISC-V unter Debian aufbauen. Es gibt einen Patch zur Behebung des Problems, sodass ich die .deb-Datei auf dem VF2 neu erstellen und alles zum Laufen bringen konnte.

Es macht immer Spaß, glänzende neue Hardware zu vergleichen. Stellen Sie sich also meine Enttäuschung vor, als fast jeder CPU-Test, den ich versuchte, entweder nicht installiert oder nicht ausgeführt werden konnte. Ich vermute, dass dies auch die Neuheit der RISC-V-Plattform ist, da viele der PTS-Tests noch nicht für die Plattform erstellt wurden.

Für diejenigen, die gelaufen sind, ist es nicht großartig. Schauen Sie sich meine Ergebnisse an. Ich vermute, dass die Leistung steigt, wenn die Software ausgereifter wird, aber derzeit liegt sie weit hinter einem Raspberry Pi 4 zurück. Jeff Geerling hat auch über dieses Board berichtet und festgestellt, dass die Leistung des VF2 derzeit auf dem Niveau eines Pi B 3 liegt.

Es gibt einige wichtige Ausnahmen von diesen Beobachtungen. Erstens zeigen Systemtests, die stark vom Laufwerkszugriff abhängen, einen erheblichen Vorteil für den VF2. Der Pi wurde über einen USB3-Adapter von einem NVMe-Laufwerk gebootet, die native NVMe-Leistung ist jedoch immer noch deutlich besser.

Und dann sind diese beiden Ethernet-Ports besonders interessant. Könnte dieses Ding als Hochleistungs-Router nützlich sein? Ich habe mir die leistungssteigernden Pakete bei der Debian-Installation angesehen und es ist in der Lage, nahezu Leitungsgeschwindigkeiten zu erreichen. Ich habe einen iperf3-Geschwindigkeitstest über das Gerät durchgeführt, indem ich ein einfaches NAT durchgeführt habe, ähnlich einer Standard-Router-Installation, und es hat eine durchschnittliche Geschwindigkeit von 755 Mbit pro Sekunde erreicht. Mit der bidirektionalen Option schaffte der Test in beide Richtungen knapp über 600 MBit/s. Respektabel für alles andere als eine vollständige Gigabit-Internetverbindung. Es wurde daran gearbeitet, OpenWRT auf die Plattform zu bringen, und das bringt möglicherweise einen besseren Durchsatz mit sich, aber der neueste OpenWRT-Entwicklungszweig startet auf meinem Gerät nicht.

OK, wir haben eine Menge abgedeckt. Wie sehen die Messingnägel hier aus? Der VisionFive 2 hat einiges Potenzial. Die zwei Gigabit-Ports und die kommende OpenWRT-Unterstützung machen das 100-Dollar-Gerät als Router verlockend, und PoE-Unterstützung schadet nicht. Das NVMe-Laufwerk ist ein weiterer Pluspunkt, und es könnte sich auch für den VF2 als Netzwerkspeichergerät eignen.

Es ist nicht leistungsstark genug, um als Desktop-Ersatzgerät zu dienen, und das Fehlen zweier HDMI-Anschlüsse hilft auch nicht weiter. Auch die verschiedenen Distributionen bieten noch keine wirkliche Tier-1-Unterstützung für RISC-V. Und seltsamerweise ist das vielleicht das größte Verkaufsargument dieses Boards. Übernehmen Sie Wartungs- oder Programmierarbeiten? Haben Sie Ihren Code schon auf einem RISC-V-Prozessor überprüft? Das ist hier die echte Chance. Es handelt sich um eine kostengünstige Plattform zum Testen der RISC-V-Unterstützung.

Dieser Prozess ist für Entwickler auf der ganzen Welt im Gange. Und das ist einer der Gründe, warum die Leistung etwas enttäuschend ist. Viele Anwendungen, die Leistung benötigen, verfügen über Funktionsmultiversionierung, eine Technik, die plattformspezifischen Code ermöglicht, der die Leistung wirklich verbessern kann. Wenn eine Plattform nicht über eine maßgeschneiderte Implementierung verfügt, greift das Programm auf den langsameren Standardcode zurück. Und angesichts der relativen Neuheit der RISC-V-Plattform ist es nicht verwunderlich, dass die Leistung noch nicht in Topform ist.

Aber 2023 könnte genau das Jahr des RISC-V SBC sein. Das VisionFive 2 ist verfügbar und die Leute von Pine64 planen ein neues Board, das auf der gleichen JH7110-CPU basiert. Da gibt es das kommende HiFive-Pro-Board oder die Ventana-Veyron-CPU. Vielleicht ist es also an der Zeit, einzutauchen und RISC-V auszuprobieren.