Open Compute mit RISC-V und Memory Fabrics

| Autor / Redakteur: Dr. Zvonimir Bandić * / Michael Eckstein

Rechenzentrum: Deep Learning und neuronale Netzwerkanwendungen zur Analyse von Big Data erfordern neue Rechnerarchitekturen und Speicherkonzepte.
Rechenzentrum: Deep Learning und neuronale Netzwerkanwendungen zur Analyse von Big Data erfordern neue Rechnerarchitekturen und Speicherkonzepte. (Bild: gemeinfrei / CC0)

Neue Open-Source-CPU-Technologien ermöglichen den Aufbau datenzentrischer Architekturen mit kohärentem, geteiltem Arbeitsspeicher und intelligenten Busschnittstellen.

Big-Data-Anwendungen nutzen GP-GPU-, FPGA- und ASIC-Prozessoren, um große Datensätze mittels Deep-Learning-Techniken zu analysieren. Damit decken sie Trends, Muster und Verbindungen auf und ermöglichen so zum Beispiel Bild- und Spracherkennung. Big Data basieren größtenteils auf Informationen aus der Vergangenheit oder auf ruhenden Daten, die typischerweise in einer Cloud gespeichert sind. Oftmals besteht das Ergebnis einer Big-Data-Analyse aus einem „trainierten“ neuronalen Netzwerk, das in der Lage ist, eine bestimmte Aufgabe auszuführen.

Das kann zum Beispiel das Erkennen oder Markieren von Gesichtern in einer Bild- oder Videosequenz sein. Auch bei der Spracherkennung ist die Leistungsfähigkeit von künstlichen neuronalen Netzen offensichtlich. Diese Aufgabe wird dabei am besten von spezialisierten, schlussfolgernden Engines („Inferenzmaschinen“) ausgeführt, die direkt auf einem Edge-Gerät installiert sind und von einer Fast-Data-Anwendung geführt werden (Abbildung 1). Durch die Verarbeitung von lokal in der Peripherie erfassten Daten nutzt Fast Data Algorithmen, die aus Big Data abgeleitet werden, um Entscheidungen und Ergebnisse in Echtzeit bereitzustellen.

Neuronales Netz im Core trainieren und im Edge anwenden

Die Analyse von Big-Data-Sammlungen liefert Erkenntnisse, die auf historischen Daten beruhen, welche in künftige Ereignisse hochgerechnet werden (sogenannte Predictive Analysis). Im Gegensatz dazu schlägt Fast Data Maßnahmen in Echtzeit vor, die wirtschaftliche Entscheidungen und Abläufe verbessern sowie Leistungsschwächen beheben können, was sich letztendlich im Ergebnis niederschlägt. Diese Methoden können auf eine Vielzahl von Edge- und Storage-Geräten wie Kameras, Smartphones und SSDs angewendet werden.

Die neuen Rechenaufgaben basieren auf zwei Szenarien: (1) Trainieren des oft umfangreichen neuronalen Netzes für eine bestimmte Aufgabe, zum Beispiel Bild- oder Spracherkennung; und (2) Anwendung des trainierten (oder „angepassten“) neuronalen Netzes auf Edge-Geräte. Beide Aufgaben erfordern eine massive parallele Datenverarbeitung, die die Multiplikation und Faltung großer Matrizenoperationen beinhaltet. Optimale Implementierungen dieser Funktionen erfordern Befehle, die mit großen Vektorprozessoren oder Daten-Arrays arbeiten.

RISC-V ist eine Architektur beziehungsweise ein Ökosystem, das sich hierfür gut eignet. Es unterstützt einen Standardisierungsprozess, der von Open-Source-Software unterstützt wird und Entwicklern die Freiheit gibt, proprietäre Vektor-Befehle zu übernehmen, zu modifizieren oder selbst hinzuzufügen. Die wichtigsten Optionen der RISC-V-Computing-Architektur sind in Abbildung 1 dargestellt. In Abbildung 1a führen die Server des Cloud-Rechenzentrums das Maschinelle Lernen mit Hilfe eines über Deep Learning trainierten neuronalen Netzes aus. In Abbildung 1b nutzen die Sicherheitskameras in der Peripherie Inferenzmaschinen, die mit Big Data trainiert wurden, um Bilder in Echtzeit zu erkennen (Fast Data). In Abbildung 1c verwendet das intelligente SSD-Gerät eine Inferenzmaschine zur Datenerkennung und -klassifizierung, die die Bandbreite des Geräts effektiv nutzt. Abbildung 1 zeigt die Möglichkeiten von RISC-V-Cores sowie die Option, proprietäre oder künftige standardisierte Vektor-Befehle hinzuzufügen, die für die Verarbeitung von Deep Learning-Techniken von Bedeutung sind.

Jedes Edge-Gerät erhöht die benötigte Rechenleistung

Die Entstehung von Fast Data und Edge-Computing hat auch zur Konsequenz, dass sich das Verschieben dieser Daten in die Cloud zur Analyse und wieder zurück als nicht sehr effizient herausgestellt hat. Erstens entstehen bei relativ großen Entfernungen über das Mobilfunknetz und Ethernet Verzögerungen, was für die Bild- oder Spracherkennungs-Anwendungen, die in Echtzeit ausgeführt werden müssen, nicht optimal ist. Zweitens erlaubt das Edge-Computing Architekturen, mit denen Bild- und Sprachverarbeitungen oder In-Memory-Computing skalierbar auf SSDs ausgeführt werden können. Jedes zusätzliche Edge-Gerät sorgt damit auch für eine inkrementelle Erhöhung der benötigten Rechenleistung. Den Zeitpunkt und die Art der Daten-Bewegung zu optimieren, ist ein Schlüsselfaktor für die Skalierbarkeit neuer Architekturen.

Ein weiterer ähnlicher und wichtiger Trend bei der Bewegung von und dem Zugang zu Daten besteht auf der Big-Data-Seite und in der Cloud (Abbildung 2). Traditionelle Computerarchitekturen (Abbildung 2a) verwenden einen langsamen Peripheriebus, der mit einer Reihe von Geräten verbunden ist (zum Beispiel dedizierte maschinelle Lernbeschleuniger, Grafikkarten, schnelle SSDs, intelligente Netzwerk-Controller). Der langsame Bus beeinträchtigt die Gerätenutzung und schränkt die Kommunikationsfähigkeit zwischen den Bussen, der Haupt-CPU und dem womöglich bereits nichtflüchtigen, schnellen Arbeitsspeicher ein. Diese Klasse von Rechnern ist nicht in der Lage, Speicherkapazität untereinander oder mit der Haupt-CPU zu teilen, was zu einer überflüssigen und eingeschränkten Datenbewegung über einen langsamen Bus führt.

Es gibt mehrere wichtige Branchentrends, wie man den Datenverkehr zwischen verschiedenen Rechen-Einheiten – etwa von CPU sowie Compute- und Netzwerkbeschleunigern – verbessert und den Zugriff auf die Daten im Arbeitsspeicher oder im Rahmen von Fast Storage optimiert. Diese neuen Trends konzentrieren sich auf offene Standards, die schnellere serielle Strukturen mit geringerer Latenz und intelligentere logische Protokolle liefern und einen kohärenten Zugriff auf geteilte Arbeitsspeicher ermöglichen.

Datenzentriertes Computing der nächsten Generation

Künftige Architekturen müssen offene Schnittstellen zu nichtflüchtigen Datenspeichern und schnellen, Cache-kohärenten Bussen (z. B. TileLink, RapidIO, OpenCAPI und Gen-Z) bereitstellen, die sich mit Compute-Beschleunigern verbinden lassen. Dadurch lässt sich die Leistung erheblich verbessern. Zudem können alle Geräte Arbeitsspeicher gemeinsam zu nutzen und unnötige Datenbewegungen werden reduziert. Die Rolle der Uncore-CPU und der Controller an den Netzwerkschnittstellen wird immer wichtiger, da sie Schlüsselfaktoren für die Datenbewegung darstellen. Die Komponenten der Uncore-CPU müssen deshalb Schlüsselspeicher und nichtflüchtige Speicherschnittstellen (z.B. NVDIMM-P) sowie Speicher, der sich in der Nähe der CPU befindet, unterstützen.

Intelligente und schnelle Busse für Rechen-Beschleuniger, intelligente Netzwerke und einen separaten hochverfügbaren Arbeitsspeicher müssen ebenfalls implementiert werden. Jede mit dem Bus verbundene Einheit (z. B. CPUs, allgemeine und spezielle Beschleuniger, Netzwerkadapter, Storage oder Arbeitsspeicher) kann die eigenen Compute-Ressourcen einbringen und zugleich auf den geteilten Arbeitsspeicher zugreifen (Abbildungen 2b und 2c).

In Abbildung 2a stößt eine herkömmliche Compute-Architektur an Grenzen, da Fast Storage und Compute-Beschleuniger über einen langsamen Peripheriebus vernetzt sind. In Abbildung 2b setzen künftige Compute-Architekturen auf offene Schnittstellen, die einen Cache-kohärenten Zugang aller Compute-Ressourcen auf der Plattform zum geteilten, nichtflüchtigen Datenspeicher ermöglichen (datenzentrische Architektur). In Abbildung 2c sind die eingesetzten Geräte in der Lage, den gleichen gemeinsamen Arbeitsspeicher zu nutzen, wodurch das unnötige Hin- und Herkopieren von Daten reduziert wird.

Für das Optimieren der Datenbewegung kann die RISC-V-Technologie der Schlüssel zum Erfolg sein, da sie Vektor-Befehle für neue Workloads des Maschinellen Lernens auf allen Rechen-Beschleunigern implementiert. Damit werden Open-Source-CPU-Technologien möglich, die offene Arbeitsspeicher und intelligente Busschnittstellen ebenso wie neue datenzentrische Architekturen mit kohärentem geteiltem Arbeitsspeicher unterstützen.

Mit RISC-V Herausforderungen meistern

Big Data und Fast Data stellen künftig neue Ansprüche an die Datenbewegung und ebnen damit den Weg für die RISC-V-Befehlssatz-Architektur (Instruction Set Architecture, ISA). Ihr offener, modularer Ansatz eignet sich ideal als Grundlage für datenzentrische Rechen-Architekturen. RISC-V bietet die folgenden Möglichkeiten:

  • Compute-Ressourcen für Edge-Computing-Geräte skalieren.
  • Neue (Vektor-)Befehle für Workloads des Maschinellen Lernens hinzufügen.
  • Kleine Rechenkerne direkt neben Speicher- und Arbeitsspeichermedien implementieren.
  • Neue Rechen-Paradigmen und modulare Chipdesigns erschaffen.
  • Neue datenzentrische Architekturen entwerfen, bei denen alle Verarbeitungselemente kohärent auf den geteilten nichtflüchtigen Datenspeicher zugreifen können, wodurch die Datenbewegung minimiert wird

RISC-V wird von über hundert Organisationen entwickelt und umfasst eine Gemeinschaft von Software- und Hardware-Innovatoren, die den Computerbus-Standard ISA für einen bestimmten Zweck oder ein bestimmtes Projekt anpassen können. Jedes Mitglied der Organisation kann RISC-V-Chips und -Software unter einer Berkeley Software Distribution (BSD)-Lizenz entwickeln, herstellen und/oder verkaufen. Die extremen datenzentrischen Anwendungen von morgen erfordern eine spezifische Verarbeitung, die in offener Weise eine unabhängige Skalierung von Datenressourcen unterstützt.

Eine Common Open Computer Architecture, die sich um den nichtflüchtigen Datenspeicher dreht und die zugleich allen Geräten erlaubt, eine Compute-Funktion zu übernehmen, ist ein Schlüsselfaktor für diese neuen skalierbaren Architekturen, die durch eine neue Kategorie von Compute-Workloads für das Maschinelle Lernen bestimmt werden. Die nächste Generation von Anwendungen über alle Cloud- und Edge-Segmente hinweg wird diese neue Kategorie einer energiesparenden Datenverarbeitung benötigen, während sich spezialisierte Beschleuniger-Prozessoren auf die jeweils anstehenden Aufgaben konzentrieren. Dies reduziert die durch Datenbewegungen verursachten Zeitverluste oder überflüssige Berechnungen.

Wie funktioniert RISC-V? Grundlagen der offenen Befehlssatzarchitektur

Wie funktioniert RISC-V? Grundlagen der offenen Befehlssatzarchitektur

02.07.18 - Die offene Befehlssatzarchitektur RISC-V unterstützt Prozessorkerne mit 32-, 64- und 128-Bit und vermeidet viele Fehler herkömmlicher Cores. Nun ist sie auf bestem Weg, den Markt zu erobern. Was macht die vielversprechende Architektur so besonders? lesen

RISC-V: Mehr Sicherheit für Open-Source-Prozessorarchitektur

RISC-V: Mehr Sicherheit für Open-Source-Prozessorarchitektur

06.07.18 - Die Stiftung hinter der lizenzfreien Prozessorarchitektur RISC-V hat einen Sicherheitsausschuss eingerichtet. Es soll Best-Practice-Security-Ansätze für Embedded Systeme und IoT-Geräte entwickeln. lesen

RISC-V-Kerne für sichere und intelligente Anwendungen

RISC-V-Kerne für sichere und intelligente Anwendungen

20.08.18 - InCore Semiconductor stellt zwei neue RISC-V-Kerne vor und kündigt Erweiterungen für künstliche Intelligenz, Sicherheit und Fehlertoleranz an. Deutsche Automotive-Hersteller arbeiten mit dem Start-up bereits zusammen. lesen

* Dr. Zvonimir Bandić ... Zvonimir Z. Bandić ist Research Staff Member und Senior Director des Next Generation Platform Technologies Department von Western Digital

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45516703 / Mikrocontroller & Prozessoren)