Getty Images

Computational Storage: SSDs mit verschiedenen Leistungsniveaus

SSDs für Computational Storage gibt es in zwei Hauptformaten: programmierbar und mit fixierter Funktion. Sie unterscheiden sich stark im Funktionsumfang und in der Marktakzeptanz.

SSD-Angebote für Computational Storage scheinen nicht den Weg einzuschlagen, den frühe Befürworter erwartet hatten. Obwohl Unternehmen die Verwendung der Architektur als programmierbares Gerät propagierten, scheint das stärkere Wachstum aus einer anderen Anwendung zu kommen.

Einige der frühen Akteure haben sich aus dem Geschäft zurückgezogen, während andere überlebt haben. In der Zwischenzeit nutzen SSDs mit fester Funktion, die vom Benutzer nicht programmiert werden können, erfolgreich die grundlegende Architektur von Computational Storage. Sie bieten Unternehmen, die bereit sind, ein nicht standardisiertes Speichergerät zu verwenden, eine bessere Leistung oder äußerst nützliche Funktionen.

Der Ansatz von Computational Storage

Die Idee des Computational Storage ist relativ einfach. Alle SSDs sind mit Controllern ausgestattet. Was wäre, wenn Administratoren einen Teil der Rechenleistung dieses Controllers nutzen würden, um mehr zu tun als nur den internen Betrieb der SSD zu verwalten? SSDs verlieren ihre enorme interne Bandbreite, wenn Daten über den I/O-Kanal des SSDs übertragen werden. Durch die Verlagerung einiger Rechenfunktionen in das Innere der SSD kann diese enorme Bandbreite helfen, blitzschnelle Operationen durchzuführen.

Darüber hinaus entlastet alles, was die SSD intern an Rechenleistung erbringt, den Server und reduziert den Netzwerkverkehr. Die neue Form der SSD bringt einen soliden Geschwindigkeitsvorteil, aber wenn das System sowohl bei der Netzwerkbandbreite als auch bei den Rechenressourcen Einschränkungen hat, bringt ein solches Laufwerk keine wirklichen Verbesserungen.

Speichermedien für Computational Storage haben zwei grundlegende Verwendungszwecke. Benutzer können einige Geräte, wie zum Beispiel einen Server, so programmieren, dass sie jede gewünschte Funktion ausführen. Andere Geräte mit fester oder fixierter Funktion sehen aus wie Standardspeicher, können jedoch eine einfach beschriebene, und datenintensive Aufgabe auslagern, die dem Host erhebliche Vorteile bringt. Solche Aufgaben sind beispielsweise Videokomprimierung oder Verschlüsselung.

Abbildung 1: Die Architekturen von traditionellem und Computational Storage im schematischen Vergleich.
Abbildung 1: Die Architekturen von traditionellem und Computational Storage im schematischen Vergleich.

Geräte mit fester Funktion

Auf dem Markt gibt es eine wachsende Zahl von SSDs mit fester Funktion für die Datenspeicherung.

Das FlashCore-Modul von IBM bildet die Grundlage für seine Speichersysteme wie das FlashSystem 7300 oder das FlashSystem 9200. Das FlashCore-Modul der dritten Generation des Unternehmens ist eine SSD mit interner Komprimierung und Dekomprimierung, Aufgaben, die häufig von Software übernommen werden.

Die gleiche SSD hilft auch bei Ransomware, da Ransomware die Daten verschlüsselt. Das FlashCore-Modul vergleicht die alten Daten auf der SSD mit den neuen Daten, um festzustellen, ob die Verschlüsselung erfolgreich ist. Laut IBM nutzt es auf intelligente Weise einen Teil der RAID-Ressourcen des Systems und beeinträchtigt die Leistung nicht.

Im Rahmen eines anderen Ansatzes zur Lösung des Ransomware-Problems hat Flexxon eine SSD entwickelt, die Festplattenzugriffsmuster überwacht, während sie auf Malware-Angriffe achtet. Flexxon erklärt, dass es die meisten Schadprogramme durch eine Analyse der Lese-/Schreibmuster erkennen kann, ohne dass Signaturen erforderlich sind.

Samsung hat in Zusammenarbeit mit Xilinx eine SSD-Plattform namens SmartSSD eingeführt, die die Möglichkeit bietet, verschiedene Computational-Storage-Designs zu entwickeln. Ein Unternehmen namens Nimbix verwendet SmartSSD in seiner Nimbix Cloud, um Apache Spark-Abfragen bis zu sechsmal schneller als auf einer Standard-SSD auszuführen.

Samsung hat die SmartSSD-Plattform für eine seiner eigenen SSDs verwendet, um das Key-Value-Disk-Management zu unterstützen. Obwohl nur wenige an Key-Value-Speicher als Computational Storage agieren, wird diese Funktion immer beliebter und erfordert den Einsatz von interner SSD-Intelligenz zur Verwaltung. Das Unternehmen hat auch eine Proof-of-Concept-SSD demonstriert, das nicht auf der SmartSSD-Plattform basiert und einen hochentwickelten neuronalen Netzwerkchip enthält, der die KI-Vorverarbeitung übernimmt.

Netint, ein Unternehmen mit Produkten für die Videoverarbeitung, vertreibt seine SSDs der Codensity D400-Serie, die intern eine Videokompression durchführen.

Systeme für allgemeine Zwecke

Im Bereich der Allzweckgeräte werden einige Geräte ähnlich wie ein Standardserver programmiert, um die vom Kunden gewünschte Datenmanipulation durchzuführen. Dies sind die SSDs, die den meisten Benutzern bekannt sind. Die Storage Networking Industry Association (SNIA) hat diese Geräte in drei Grundtypen standardisiert:

  • Computational Storage Drive. Ähnlich wie ein SSD, jedoch mit zusätzlichen internen Rechenelementen.
  • Computational Storage Processor. Liegt in der Nähe eines oder mehrerer SSDs, befindet sich aber außerhalb der SSDs selbst.
  • Computational Storage Array. Ein System, das auf einem Computational Storage Processor und einem oder mehreren einfachen SSDs oder Computational Storage Drives basiert.

Vorreiter unter den Anbietern

Bestimmte Unternehmen waren schon früh führend auf diesem Markt und haben erhebliche Anstrengungen unternommen, um die Einführung der Allzweck-SSDs für Computational Storage zu fördern.

ScaleFlux

ScaleFlux stellt zwei Computational Storage Drives her, die beide programmierbar sind: das Computational Storage Device 3000 und das CSD 2000. Der Anbieter positioniert diese Produkte als die einzigen PCIe-SSDs, die Datenpfadkomprimierung und -dekomprimierung bieten und gleichzeitig als Allzweck-Speichergeräte für Berechnungen funktionieren.

Das erste Design des Unternehmens, die CSD 2000, basiert auf einem feldprogrammierbaren Gate-Array (FPGA). Dieser Ansatz ermöglichte dem Unternehmen eine schnellere Markteinführung als die Verwendung eines anwendungsspezifischen integrierten Schaltkreises (ASIC), ist jedoch mit etwas höheren Kosten verbunden. Der neuere CSD 3000 verwendet einen proprietären ASIC. Das Unternehmen zählt den chinesischen Internetriesen Alibaba zu seinen wichtigsten Kunden. Seine Geräte wurden auch in Systemen von Ampere Computing vorgeführt.

NGD

NGD, früher Next Generation Devices, war ebenfalls ein früher Hersteller von Computational Storage Drives. Die Newport-Reihe verwendete einen integrierten ASIC und Arm-Kerne zur Verarbeitung der im Laufwerk gespeicherten Daten.

NGD war auch ein früher Treiber der SNIA-Standards für Computational Storage und widmete diesen Bemühungen erhebliche Energie. Doch im Jahr 2022 haben die Gründer das Unternehmen verlassen.

Eideticom

Eideticom produziert einen Computational Storage Processor mit verschiedenen Formfaktoren (U.2, PCIe-Add-in-Karte und Enterprise- und Data Center-SSD-Formfaktor) von den Partnern AMD und BittWare. Das Gerät wird an lokale NVMe-SSDs angeschlossen, um ein verwaltetes Array mit Computational-Funktionen zu erstellen.

Der Eideticom-Prozessor wurde im Los Alamos National Laboratory, der Heimat des Trinity-Supercomputers, eingesetzt, wo die Organisation ihn als Kompressions-Engine verwendete, um die Speicherkosten um 50 Prozentund den Stromverbrauch um 60 Prozent im Vergleich zum ursprünglichen System zu senken.

NVXL

NVXL wurde aus einem frühen Hersteller von SSDs, BiTMICRO, ausgegliedert, um Computational Storage Drives zu produzieren. NVXL scheint verschwunden zu sein, ohne jemals ein Produkt eingeführt zu haben. Seine Website und die Website von BiTMICRO wurden deaktiviert.

Wie geht es jetzt weiter?

Alle bisherigen SSDs waren austauschbar. Käufer von SSDs sind es gewohnt, sich SSDs von unterschiedlichen Anbietern anzusehen und diejenige zu wählen, die die beste Leistung für den Preis bietet. Diese Option geht bei Computational Storage verloren.

Gremien für Industriestandards, einschließlich SNIA, haben beträchtliche Anstrengungen unternommen, um dieses Problem zu lösen und Standards zu schaffen, die ein gewisses Maß an Konformität auf den Markt bringen. Dennoch sind die Ansätze der einzelnen Anbieter so unterschiedlich, dass eine Austauschbarkeit noch in weiter Ferne liegt, was den Einsatz dieser Technologie auf Anwendungen beschränkt, die weniger empfindlich auf eine Alleinbelieferung reagieren.

Die Notwendigkeit, die Software zu überarbeiten, um die Vorteile des Produkts zu nutzen, ist ein weiteres Problem, das der Marktakzeptanz von SSDs mit Computational Storage häufig im Wege steht. Computational Storage bringt Leistungsverbesserungen mit sich. Diese Verbesserungen erfordern jedoch, dass bewährte Software entwirrt wird, um bestimmte Teile des Codes so umzuwandeln, dass sie dem Gerät anstelle des Servers die Arbeit abnehmen. Dies führt zu zusätzlichen Schwierigkeiten und verhindert, dass die Geräte Standardprogramme von der Stange verwenden können. Die Änderung des Codes öffnet auch die Tür zu neuen Fehlern, die nur wenige Unternehmen zu riskieren bereit sind.

Es hat den Anschein, dass sich Computational Storage in Geräten mit fester Funktion weiterhin gut entwickeln wird, während die Akzeptanz von Geräten mit allgemeinem Computational Storage deutlich langsamer sein wird.

Erfahren Sie mehr über Storage-Hardware