Zuhause Vorausdenken Können fpgas oder rekonfigurierbare Prozessoren Mainstream werden?

Können fpgas oder rekonfigurierbare Prozessoren Mainstream werden?

Video: Alle CPU-Abkürzungen erklärt (AMD & Intel) (November 2024)

Video: Alle CPU-Abkürzungen erklärt (AMD & Intel) (November 2024)
Anonim

Einer der interessantesten Trends, die ich im Bereich Server-Computing gesehen habe, ist die Abkehr von Standard-CPUs und eine stärkere Verarbeitung von Grafikchips (GPUs) und rekonfigurierbaren Prozessoren, die als Field Programmable Gate Arrays (FPGAs) bezeichnet werden. Dieses Phänomen wird häufig als heterogenes Computing bezeichnet.

Das Konzept hier ist nicht neu - GPUs und andere Beschleuniger sind in Hochleistungscomputern (HPC) oder Supercomputern seit Jahren immer häufiger anzutreffen. In letzter Zeit haben wir jedoch mehr darüber erfahren, wie Intel einige Serverchip-Pakete so angepasst hat, dass sie neben der herkömmlichen CPU auch FPGAs enthalten. Diese richten sich hauptsächlich an große Anbieter von Hyperscale-Cloud-Computing-Lösungen, die über spezifische Algorithmen verfügen, die als Hardwareanweisungen auf den FPGAs ausgeführt werden können. Dies sollte viel schneller sein als die Ausführung als Software auf den allgemeineren CPU-Anweisungen.

Dies war einer der Hauptgründe für Intels jüngsten Plan, den FPGA-Hersteller Altera zu übernehmen. Intel-Chef Brian Krzanich sagte, er erwarte, dass bis zum Ende des Jahrzehnts bis zu 30 Prozent der Cloud-Workloads eine FPGA-Beschleunigung aufweisen werden. Microsoft verwendet bereits Altera-FPGAs, um viele seiner Cloud-Dienste wie Bing Search zu betreiben.

Es gab ein großes Hindernis für die meisten Unternehmen, die FPGAs - oder auch GPUs - in typischen Fällen von Unternehmens-Computing einsetzen: Es ist nur schwer, die Software gleichzeitig auf diesen Chips neben der CPU arbeiten zu lassen. (Für Unternehmens-Workloads und sogar für HPC benötigen Sie immer einige CPUs. In anderen Anwendungen, z. B. im Netzwerk, verwenden Hardwarefirmen möglicherweise nur ein FPGA.) Für GPU-Computing haben wir Dinge wie Nvidias CUDA und den Khronos gesehen Der OpenCL-Standard der Gruppe, der die Arbeit erleichtert, und wir haben sicherlich viele HPC- und maschinelle Lernalgorithmen gesehen, die GPUs verwenden. Jetzt unterstützen FPGA-Hersteller wie Altera auch OpenCL, aber im allgemeinen Fall von Unternehmens-Computing hat sich dies als zu schwierig erwiesen.

In letzter Zeit habe ich mit einigen Unternehmen gesprochen, die hoffen, dies zu vereinfachen.

Bitfusion ist ein Startup, das ich zum ersten Mal bei TechCrunch Disrupt gesehen habe. Mit seiner Technologie können Sie eine Anwendung von der CPU auf eine GPU oder ein FPGA verschieben, ohne sie für jede Plattform neu schreiben zu müssen. Wie CEO Subbu Rama erklärte, sucht das Paket nun nach allgemeinen Open-Source-Bibliotheken, die von Software-Entwicklern verwendet werden, und ersetzt die darin enthaltenen Funktionen durch Funktionen, die die Vorteile der GPU oder des FPGA nutzen können. Wie er erklärte, könnten große Unternehmen in der Lage sein, ihren Code umzuschreiben, aber mittelständische Unternehmen nicht. Zu den Anwendungen gehören wissenschaftliches Rechnen, Finanzanwendungen wie Risikoanalyse und Hochfrequenzhandel sowie Datenanalysen wie die Arbeit mit Öl- und Gassensordaten.

Schließlich sagte er, dass dies mit jeder Sprache funktionieren könnte, die solche Bibliotheken aufruft. Er stellte fest, dass das Ersetzen der Bibliotheken möglicherweise nicht so effizient ist wie das Schreiben von benutzerdefiniertem Code für FPGAs oder GPUs, aber es ist viel einfacher.

Bitfusion plant, seine Produkte in drei verschiedenen Modellen anzubieten - als reine Software für Unternehmen, die bereits über eigene Beschleuniger verfügen. auf Geräten vorinstalliert; oder für Anwendungen, die über eine Partnerschaft mit Rackspace in der Cloud bereitgestellt werden. Zunächst werden Altera-FPGAs verwendet, obwohl das Unternehmen angibt, dass dies auch mit anderen Prozessoren funktionieren könnte. Rama sagt, dass erste Kunden dies jetzt nutzen und die öffentliche Verfügbarkeit in den nächsten Monaten geplant ist.

SRC verfolgt einen etwas anderen Ansatz. Das Unternehmen erstellt seit 1999 "rekonfigurierbare Server" für Regierungsbehörden und entwickelt nun eine Lösung für Hyperscale-Rechenzentren und Web-Operationen. Als Saturn 1-Server bezeichnet, handelt es sich um eine Kassette, die in das HP Moonshot-Gehäuse eingesetzt werden kann, und SRC behauptet, dass sie eine Computerleistung bieten kann, die in der Regel 100-mal schneller ist als die herkömmlicher Mikroprozessorkonstruktionen. (Das Unternehmen vertreibt auch größere Systeme zur Rackmontage und in voller Größe, in der Regel für größere Kunden.)

Was dies anders macht, ist ein spezieller Compiler namens Carte, der den Code in ein Siliziumdesign umwandelt, das auf einer FPGA-Architektur ausgeführt werden kann, so CEO Jon Huppenthal. Er erzählte mir, SRC habe Jahre damit verbracht, den Compiler zunächst für Geschäftskunden zu entwickeln, seitdem die Firma in den 90er Jahren von den Supercomputer-Pionieren Seymour Cray und Jim Guzy gegründet wurde. Ein Unterschied in der Vorgehensweise von SRC bestehe darin, dass Carte nicht für generische Systeme gedacht sei, sondern speziell an die Architektur von SRC gebunden sei, was für mehr Leistung und Konsistenz sorgt. Der Saturn 1 verwendet zwei Altera-FPGAs - eines, auf dem Benutzercode ausgeführt wird. der andere, der das System zusammen mit einem Intel-Prozessor am Laufen hält. Derzeit sei das Unternehmen in der 12. Generation rekonfigurierbarer Prozessoren.

Dies ist eine teurere Lösung, die sich hauptsächlich an relativ große Rechenzentren richtet, aber dennoch zugänglicher ist als frühere Ansätze.

Die Idee, FPGAs oder rekonfigurierbare Prozessoren für Mainstream-Aufgaben zu verwenden, ist nicht neu. Es hat jedoch lange gedauert, bis dies auch für traditionellere Kunden außerhalb von Hardware-Designern oder militärischen Anwendungen möglich wurde. Diese neuen Ansätze könnten darauf hindeuten, dass diese Technologie immer häufiger zum Einsatz kommt - allerdings nur dann, wenn die Preis- / Leistungsverbesserungen tatsächlich mit den Angaben der Anbieter übereinstimmen und die Technologie einfacher zu verwenden ist. Die neuen Ansätze sind ein Schritt in diese Richtung.

Können fpgas oder rekonfigurierbare Prozessoren Mainstream werden?