Rechercher dans ce blog

Thursday, October 7, 2021

Sifive Hifive Unmatched im Test: RISC-V ist gekommen, um zu bleiben - Golem.de

Mit dem Hifive Unmatched gibt es endlich eine leistungsstarke Entwicklerplatine mit RISC-V, auch die Software ist durchaus ausgereift.

Ein Test von und
Sifive Hifive Unmatched im Test
Sifive Hifive Unmatched im Test (Bild: Martin Wolf/Golem.de)

Apple, Google, Nvidia, Samsung, Qualcomm - alle nutzen sie: Die offene Befehlssatzarchitektur RISC-V wird primär bei Embedded-Controllern etwa in Smartphones eingesetzt. Mit dem Hifive Unmatched hingegen hat Sifive eine gut ausgestattete Mini-ITX-Platine veröffentlicht, die sich an Entwickler oder Personen richtet, die RISC-V ausprobieren wollen.

Das Hifive Unmatched nutzt mit dem SiFive FU740 einen der aktuell leistungsstärksten RISC-V-Quadcores, dazu gibt es gleich 16 GByte RAM sowie Anschlüsse für eine dedizierte Grafikkarte und eine NVMe-SSD: Genau das macht die Platine so spannend.

Bisherige Boards basieren entweder auf simplen RISC-V-Designs oder kosten vergleichsweise viel, da sie einen programmierbaren FPGA-Chip verwenden. Platinen wie das BeagleV bilden hier die Ausnahme, sind aber von der Ausstattung und Performance nicht mit dem Sifive-Brett vergleichbar.

Freedom U740 mit 4+1 Kernen

Mit 17 x 17 cm (Mini-ITX), einem 24-Pin-Stromanschluss und einer passenden I/O-Blende lässt sich das Hifive Unmatched problemlos in ein Mini-PC-Gehäuse verbauen. Basis ist der SiFive Freedom U740, der sich unter dem kleinen Luftkühler mit dem blauen Halterahmen verbirgt. In dem mit 28 nm bei TSMC gefertigten SoC stecken vier U7-Kerne und ein S7, bei Sifive heißt das Mix+Match.

  • Das Sifive Hifive Unmatched im laufenden Betrieb (Bild: Golem.de)
Das Sifive Hifive Unmatched im laufenden Betrieb (Bild: Golem.de)

Der FU740 ist ein 64-Bit-Design, das einen U74-MC nutzt: Die U7-Kerne sind als RV64GBC ausgelegt, also mit der Unterstützung der General-Purpose-, der Bit-Manipulation- sowie der Compressed-Extension. Der kleine S7 ist ein RV64IMAC ohne zusätzlichen Gleitkomma-Support. Alle fünf Kerne greifen auf 2 MByte L2-Cache zu und takten mit 1,2 GHz.

Sifive hat das SoC mit einem 64-Bit-Interface versehen, daran hängen 16 GByte DDR4-1866-Speicher. Weiterhin gibt es acht PCIe-Gen3-Lanes, die per Asmedia-ASM2824-Switch (orangener Kühler) gesplittet werden: Der PEG bekommt bis zu acht, der M.2-2280-Steckplatz für SSDs bis zu vier und der M.2-2230 für Bluetooth/WiFi-Kärtchen eine Bahn.

Auch für Bastler wird viel geboten

Zur weiteren Ausstattung gehören ein Micro-SD-Kartenleser, vier USB 3.2 Gen1, ein Micro-USB 2.0, Gigabit-Ethernet und ein Batteriefach für die Echtzeituhr. Hinzu kommen obligatorische Schnittstellen wie GPIO, JTAG und QSPI - selbst Pins, um die Spannung des SoCs oder des DDR4 zu messen, gibt es. Für den offenen Betrieb hat Sifive gar Power/Reset-Taster verbaut und auch an einen Front-Panel-Header für Gehäuse gedacht.

Schauen wir uns an, wie sich das Hifive Unmatched in Betrieb nehmen lässt, wie die Installation von Ubuntu vonstatten geht und welche Performance der FU740 abliefert.

Das Hifive Unmatched wird standardmäßig mit einer 32-GByte-SD-Karte ausgeliefert, auf die der Hersteller bereits sein Freedom-U-SDK installiert hat. Dabei handelt es sich um eine Linux-Distribution auf Grundlage von Open Embedded, die es Entwicklern und Käufern des Hifive Unmatched ermöglichen soll, das Gerät schnell in Betrieb zu nehmen und testen zu können.

Der Code sowie Erklärungen dazu, wie das Image den eigenen Bedürfnissen angepasst werden kann, finden sich auf Github. Dort stellt der Hersteller auch Abbilder mit aktualisierter Software bereit. Für den einfachen und vor allem schnellen Einstieg in die Nutzung gibt es einen Getting-Started-Guide (PDF).

In diesem erklärt der Hersteller unter anderem, wie per USB und dem Kommandozeilenwerkzeug Screen ein Boot-Log ausgegeben werden kann. Über diese Terminal-Verbindung können wir uns dann auch direkt auf dem Hifive Unmatched anmelden und in einer vertrauten Linux-Umgebung loslegen.

Dedizierte Grafikkarte? Kein Problem!

Zusätzlich zu einer Terminal-Verbindung über die serielle Schnittstelle oder SSH lässt sich das Board aber auch mit einer PCIe-Grafikkarte bestücken. Der Hersteller selbst empfiehlt ein Modell der Radeon-RX-500- oder Radeon-HD-6000-Serie (sic!), darüber lässt sich dann eine grafische Ausgabe des Freedom-U-SDK nutzen. Sifive hat dazu den leichtgewichtigen Xfce-Desktop für das Image gewählt, so können wir uns mit einer gewohnten grafischen Oberfläche auf dem Gerät umsehen.

Dabei stoßen wir jedoch schnell an verschiedene Grenzen, was vor allem für die verfügbare Software-Auswahl gilt. Das Hersteller-SDK ist inzwischen aber nicht mehr die einzige mögliche Plattform für das Hifive Unmatched. So gibt es zahlreiche Distributionen, die an Ports auf die RISC-V-Architektur arbeiten, hierfür Images erstellen und dabei auch Unterstützung für das Hifive Unmatched bieten.

Noch bietet RISC-V aber keine einheitliche Firmware-Schnittstelle, die über die Hardware abstrahiert. Ähnlich wie bei ARM kommen hier also weiter Device-Trees zum Einsatz. Das führt zumindest derzeit noch dazu, dass die meisten verfügbaren Abbilder speziell für das Unmatched erstellt werden müssen.

Mit einer größeren Verbreitung von RISC-V-Boards in den kommenden Jahren dürften künftig aber auch Abbilder bereitstehen, die auf mehreren Geräten eingesetzt werden können, so wie derzeit auch schon ARM-Platinen.

Wir entscheiden uns zur weiteren Nutzung und für unsere Tests gegen das Sifive-SDK und stattdessen für das von Ubuntu für RISC-V und das Hifive Unmatched erstellte Abbild. Dabei handelt es sich zwar eigentlich um ein Server-Image, das zunächst keine grafische Oberfläche bietet. Das Ubuntu-Archiv hat jedoch zahlreiche weitere Pakete, die für die RISC-V-Architektur erstellt worden sind.

Darunter findet sich etwa die Gnome-Shell, die wir ebenfalls problemlos installieren und mit der richtigen Grafikkarte dann auch nutzen können. Dank der freien AMD-Treiber steht dabei eine solide Hardware-Beschleunigung für den 3D-Desktop bereit. Hier stört dann eigentlich nur die zugegeben erwartbar langsame Leistung der Sifive-CPU.

Im Ubuntu-Discourse-Forum findet sich eine ausführliche und leicht nachvollziehbare Anleitung, wie das Ubuntu auf eine NVMe-SSD installiert werden kann, was die Nutzung des Systems deutlich beschleunigt. Die SD-Karte wird dann nur noch zum Starten mit Hilfe des Bootloaders U-Boot benötigt.

Auf Höhe mit ARMs Cortex-A53

Der Hersteller Sifive arbeitet außerdem aktiv daran, die Unterstützung für sein Board wie auch die CPU in den Hauptzweig des Linux-Kernels einzupflegen. Wie Benchmarks von Phoronix nahelegen, führt dies zusammen mit aktualisierten Toolchains zu einem spürbaren Leistungsgewinn etwa bei der Verwendung der aktuellen Beta von Ubuntu 21.10, die wir ebenfalls für unsere Benchmarks verwenden. Auch wir können eine Leistungssteigerung bis hin zu 20 oder gar 25 Prozent zwischen Ubuntu 21.04 und 21.10 bestätigen.

FU740 @ 1,2 GHz (4x U7 + 1x S7) BCM2837 @ 1,2 GHz (4x Cortex-A53)
7-Zip (Kompression/Dekompression) 1.879 MIPS / 4.007 MIPS 1.726 MIPS / 4.647 MIPS
Dav1d (Kompilieren) 86 sec 89 sec
Stress-NG, CPU (Operationen/Sekunde) 206 Ops/sec 84 Ops/sec
x264 (Encodieren, Sintel 1080p) 0,68 fps 1,97 fps
x265 (Encodieren, Sintel 1080p) 0,41 fps 0,29 fps
Performance des Sifive Hifive Unmatched

Sifive selbst vergleicht die Leistung der U74-Kerne im FU740 mit ARMs Cortex-A53. Wir haben die Leistung des RISC-V-Quadcore auf dem Hifive mit einem Raspberry Pi 3B verglichen, in dessen BCM2837-Chip vier Cortex-A53 stecken. Je nach konkretem Test sind die RISC-V-Kerne dabei durchaus konkurrenzfähig: In unserem Compile-Benchmark für Dav1d sind beide fast gleichauf und bei der Kompression mit 7z schneidet die RISC-V-CPU sogar leicht besser ab.

Spürbar ist der Unterschied jedoch beim Encoding mit x264, denn hier nutzt die ARM-Version die Neon-Erweiterungen zur Beschleunigung. Zwar verfügt der Chip von Sifive über Vector-Instruktionen, die für eine ähnliche Beschleunigung genutzt werden könnten. Die eingesetzte Software muss dies dann aber auch unterstützen - genau deshalb gibt es das Hifive Unmatched aber ja.

Sifive vertreibt das Hifive Unmatched (HF105) über Mouser, dort kostet die Platine knapp 600 Euro. Zum Lieferumfang gehören das Board samt SoC und 16 GByte verlötetem RAM, außerdem legt Sifive eine 32-GByte-SD-Speicherkarte mit installiertem Freedom-U-SDK bei.

Fazit

Eine Platine wie das Hifive Unmatched gab es bisher schlicht nicht: Die Performance liegt dank des Freedom U740 höher als bei den meisten Boards mit RISC-V-Chip, vor allem aber hebt sich die Ausstattung von den anderen Brettern positiv ab. Der vierkernige FU740 kann sich dabei durchaus mit einem Cortex-A53 messen, sofern der Software-Support gegeben ist.

Hinzu kommt, dass das Sifive-Board zwar eigentlich eine Entwicklerplatine ist, sich vom Aufbau her aber eher an Consumer-Modellen orientiert. So gibt zwar einerseits obligatorische Anschlüsse wie eine GPIO-Pin-Leiste, jedoch lassen sich auch eine dedizierte Grafikkarte sowie eine NVMe-SSD und ein Bluetooth/WiFi-Kärtchen verbauen. Der Mini-ITX-Formfaktor mit Power/Reset-Knöpfen und 24-Pin-Buchse tut sein Übriges.

Für RISC-V generell ist das Hifive Unmatched ein weiterer Schritt nach vorne, denn die Platine spricht ein breiteres Publikum an als bisherige Lösungen. Dank schnellem SoC, viel RAM und SSD-Option lassen sich deutlich aufwendigere Projekte umsetzen als mit anderen RISC-V-Brettern. Wer sich für die offene Befehlssatzarchitektur interessiert, bekommt mit dem Hifive Unmatched ein umfangreiches Paket.

Adblock test (Why?)


Sifive Hifive Unmatched im Test: RISC-V ist gekommen, um zu bleiben - Golem.de
Read More

No comments:

Post a Comment

One UI 5.1: Samsung kündigt Update-Start für ältere Galaxy-Smartphones an, los geht es u.a. mit Galaxy S20, S21 und S22 - Notebookcheck.com

Nachdem es vor wenigen Tagen bereits inoffizielle Informationen zum Rollout von Samsungs One UI 5.1 für die ersten Modelle jenseits der ne...