Linux Accelerated Computing-Instances - Amazon Elastic Compute Cloud

Linux Accelerated Computing-Instances

Accelerated Computing-Instances verwenden Hardware-Beschleuniger bzw. Koprozessoren, um bestimmte Aufgaben effizienter als mit nur auf CPUs ausgeführter Software zu bewältigen; dazu gehört die Berechnung von Gleitkommazahlen, die Grafikverarbeitung oder die Mustererkennung in Daten. Diese Instances verbessern die parallele Verarbeitung für einen höheren Durchsatz bei rechenintensiven Workloads.

Wenn Sie große Datenverarbeitungskapazitäten benötigen, können Sie von der Verwendung von Accelerated Computing-Instances profitieren; diese bieten eine hardwarebasierte beschleunigte Datenverarbeitung z. B. durch Grafikprozessoreinheiten (Graphics Processing Units, GPUs), vor Ort programmierbare Gate-Arrays (Field Programmable Gate Arrays, FPGAs) oder AWS Inferentia.

GPU-Instances

GPU-basierte Instances bieten Zugriff auf NVIDIA-GPUs mit Tausenden von Recheneinheiten. Mit diesen Instances können Sie wissenschaftliche, technische und Rendering-Anwendungen beschleunigen, indem Sie das CUDA- oder OpenCL-Framework (Open Computing Language) für die parallele Datenverarbeitung verwenden. Sie können sie außerdem für Grafikanwendungen verwenden, u. a. das Streamen von Spielen und 3-D-Anwendungen sowie andere Grafik-Workloads.

G4ad- und G4dn-Instances

G4ad-Instances verwenden AMD-Radeon-Pro-V520-GPUs und AMD-EPYC-Prozessoren der 2. Generation und eignen sich gut für Grafikanwendungen wie Remote-Grafikarbeitsplätze, Game-Streaming und Rendering, die Industriestandard-APIs wie OpenGL, DirectX und Vulkan nutzen. Sie bieten bis zu 4 AMD-Radeon-Pro-V520-GPUs, 64 vCPUs, 25-Gbit/s-Netzwerke und 2,4 TB lokalen NVMe-basierten SSD-Speicher.

G4dn-Instances verwenden NVIDIA Tesla GPUs und bieten eine kosteneffiziente Hochleistungs-Plattform für allgemeines GPU-Computing unter Verwendung der CUDA- oder Machine Learning-Frameworks zusammen mit Grafikanwendungen, die DirectX oder OpenGL verwenden. Diese Instances bieten Netzwerkbetrieb mit hoher Bandbreite, leistungsstarke halbe und Gleitkomma-Fähigkeiten mit einfacher Genauigkeit, zusammen mit INT8- und INT4-Präzisionen. Jede GPU hat 16 GiB an GDDR6-Speicher, wodurch die G4dn-Instances gut geeignet für Machine Learning-Inferenzen, Video-Transcodierung und Grafikanwendungen, wie Remote-Grafikarbeitsplätze und Game-Streaming in der Cloud.

Weitere Informationen finden Sie unter Amazon EC2 G4-Instances.

G4dn-Instances unterstützen NVIDIA GRID Virtual Workstation. Weitere Informationen finden Sie unter NVIDIA Marketplace offerings.

G3-Instances

Diese Instances verwenden NVIDIA Tesla M60 GPUs und bieten eine kostengünstige Hochleistungsplattform für Grafikanwendungen unter Verwendung von DirectX oder OpenGL. G3-Instances stellen außerdem NVIDIA GRID Virtual Workstation-Funktionen bereit, wie z. B. Unterstützung für 4 Bildschirme mit einer Auflösung von bis zu 4096x2160 Pixel, sowie NVIDIA GRID Virtual Applications. G3-Instances eignen sich sehr gut für Anwendungen wie z. B. 3D-Visualisierungen, grafikintensive Remote-Workstations, das 3D-Rendering, die Videocodierung, Virtual-Reality-Anwendungen und andere serverseitige Grafik-Workloads, die eine massive parallele Rechenleistung erfordern.

Weitere Informationen finden Sie unter Amazon EC2 G3-Instances.

G3-Instances unterstützen NVIDIA GRID Virtual Workstation und NVIDIA GRID Virtual Applications. Informationen zum Aktivieren dieser Funktionen finden Sie unter Aktivieren von NVIDIA GRID Virtual Applications.

G2-Instances

Diese Instances verwenden NVIDIA GRID K520 GPUs und bieten eine kostengünstige Hochleistungsplattform für Grafikanwendungen unter Verwendung von DirectX oder OpenGL. NVIDIA GRID GPUs unterstützen außerdem die NVIDIA-API-Operationen zur schnellen Erfassung und Codierung. Anwendungsbeispiele sind Services für die Video-Erstellung, 3D-Visualisierungen, grafikintensive Streaming-Anwendungen und andere serverseitige Grafik-Workloads.

P3-Instances

Diese Instances verwenden NVIDIA Tesla V100 GPUs und sind für die allgemeine Datenverarbeitung durch GPUs mithilfe des CUDA- oder des OpenCL-Programmiermodells oder über ein Machine Learning-Framework konzipiert. P3-Instances bieten Netzwerke mit hoher Bandbreite sowie leistungsstarke Gleitkomma-Kapazitäten mit halber, einfacher und doppelter Genauigkeit und bis zu 32 GB Speicher pro GPU; sie sind ideal für die folgenden Bereiche: Deep-Learning, numerische Strömungsmechanik, numerische Finanzen, seismische Analysen, molekulare Modellierung, Genomik, Rendering und andere Workloads für die serverseitige GPU-Datenverarbeitung. Tesla V100 GPUs unterstützen keinen Grafikmodus.

Weitere Informationen finden Sie unter Amazon EC2 P3 Instances.

P3-Instances unterstützen die Peer-to-Peer-Datenübertragung mit NVIDIA NVLink. Weitere Informationen finden Sie unter NVIDIA NVLink.

P2-Instances

P2-Instances verwenden NVIDIA Tesla K80 GPUs und sind für die allgemeine Datenverarbeitung durch GPUs mithilfe des CUDA- oder des OpenCL-Programmiermodells konzipiert. P2-Instances bieten Netzwerke mit hoher Bandbreite sowie leistungsstarke Gleitkomma-Kapazitäten mit einfacher und doppelter Genauigkeit und 12 GB Speicher pro GPU; sie sind ideal für die folgenden Bereiche: Deep-Learning, Graph-Datenbanken, hochperformante Datenbanken, numerische Strömungsmechanik, numerische Finanzen, seismische Analysen, molekulare Modellierung, Genomik, Rendering und andere Workloads für die serverseitige GPU-Datenverarbeitung.

P2-Instances unterstützen die Peer-to-Peer-Datenübertragung mit NVIDIA GPUDirect. Weitere Informationen finden Sie unter NVIDIA GPUDirect.

Instances mit AWS Inferentia

Diese Instances wurden entwickelt, um das Machine Learning mit AWS Inferentia, einem benutzerdefinierten AI/ML-Chip von Amazon, der eine hochleistungsfähige und Machine Learning-Inferenz mit geringer Latenzzeit ermöglicht, zu beschleunigen. Diese Instances sind für die Bereitstellung von Deep-Learning-(DL)-Modellen für Anwendungen wie Verarbeitung natürlicher Sprache, Objekterkennung und -klassifizierung, Inhaltspersonalisierung und -filterung sowie Spracherkennung optimiert.

Es gibt eine Vielzahl von Möglichkeiten für den Einstieg:

  • Verwenden Sie SageMaker, einen vollständig verwalteten Service, der den einfachsten Einstieg in die Machine-Learning-Modelle darstellt. Weitere Informationen finden Sie unter Kompilieren und Bereitstellen eines TensorFlow-Modells auf Inf1-Instances auf GitHub.

  • Starten Sie eine Inf1-Instance mit dem Deep-Learning-AMI. Weitere Informationen finden Sie unter AWS Inferentia with DLAMI im AWS Deep Learning AMI-Entwicklerhandbuch.

  • Starten Sie eine Inf1-Instance mit Ihrem eigenen AMI und installieren Sie den AWS Neuron SDK, mit dem Sie Deep-Learning-Modelle für AWS Inferentia kompilieren, ausführen und profilieren können.

  • Starten Sie eine Container-Instance mit einer Inf1-Instance und einem Amazon ECS-optimierten AMI. Weitere Informationen finden Sie unter Amazon Linux 2-(Inferentia)-AMIs im Amazon Elastic Container Service Developer Guide.

  • Erstellen Sie einen Amazon EKS-Cluster mit Knoten, auf denen Inf1-Instances ausgeführt werden. Weitere Informationen finden Sie unter Inferentia-Unterstützung im Amazon EKS Benutzerhandbuch.

Weitere Informationen finden Sie unter Machine Learning in AWS.

Inf1-Instances

Inf1-Instances verwenden Inferenzchip für Machine Learning von AWS Inferentia Inferentia wurde entwickelt, um eine äußerst kostengünstige Inferenzleistung mit geringer Latenz in jeder Größenordnung zu ermöglichen.

Weitere Informationen finden Sie unter Amazon EC2 Inf1-Instances.

FPGA-Instances

FPGA-basierte Instances bieten Zugriff auf große FPGAs mit Millionen von parallel geschalteten Systemlogik-Zellen. Mit FPGA-basierten Accelerated Computing-Instances können Sie u. a. die Verarbeitung von Workloads in den folgenden Bereichen beschleunigen, indem Sie benutzerdefinierte Hardwarebeschleunigung verwenden: Genomik, Finanzanalysen, Echtzeit-Videoverarbeitung, Big Data-Analysen und Sicherheit. Sie können diese Beschleunigung mit Hardwarebeschreibungssprachen wie Verilog oder VHDL erreichen, oder indem Sie höhere Programmiersprachen wie das OpenCL-Framework für die parallele Datenverarbeitung verwenden. Sie können entweder eigenen Code für die Hardwarebeschleunigung entwickeln oder eine Hardwarebeschleunigung über den AWS Marketplace erwerben.

Das FPGA Developer AMI stellt die erforderlichen Tools bereit, um AFIs zu entwickeln, zu testen und zu erstellen. Sie können das FPGA Developer AMI auf jeder EC2 Instance mit mindestens 32 GB Systemspeicher verwenden (z. B. C5-. M4- und R4-Instances).

Weitere Informationen finden Sie in der Dokumentation zum AWS FPGA Hardware Development Kit.

F1-Instances

F1-Instances verwenden Xilinx UltraScale+ VU9P FPGAs und sind dafür konzipiert, rechenintensive Algorithmen zu beschleunigen, z. B. Datenfluss- oder hochparallele Operationen, für die universelle CPUs nicht geeignet sind. Jeder FPGA in einer F1-Instance enthält ca. 2,5 Millionen logische Elemente und ca. 6 800 Digital Signal Processing-Engines (DSP), dazu 64 GB lokalen ECC-geschützten DDR-Speicher, der über eine dedizierte PCIe Gen3 x16-Verbindung mit der Instance verbunden ist. F1-Instances bieten lokale NVMe SSD-Volumes.

Entwickler können das FPGA Developer AMI und das AWS Hardware Developer Kit verwenden, um eine benutzerdefinierte Hardwarebeschleunigung für den Einsatz in einer F1-Instance zu erstellen. Das FPGA Developer AMI stellt Entwicklungstools bereit, mit denen der gesamte FPGA-Entwicklungsprozess in der Cloud stattfinden kann. Mit diesen Tools können Entwickler Amazon FPGA Images (AFIs) erstellen und freigeben, die in den FPGA einer F1-Instance geladen werden können.

Weitere Informationen finden Sie unter Amazon EC2 F1 Instances.

Hardwarespezifikationen

Im Folgenden finden Sie eine Zusammenfassung der Hardware-Spezifikationen für Instances für beschleunigte Berechnungen.

Instance-Typ Standard vCPUs Arbeitsspeicher (GiB) Accelerators
p2.xlarge 4 61 1
p2.8xlarge 32 488 8
p2.16xlarge 64 732 16
p3.2xlarge 8 61 1
p3.8xlarge 32 244 4
p3.16xlarge 64 488 8
p3dn.24xlarge 96 768 8
g2.2xlarge 8 15 1
g2.8xlarge 32 60 4
g3s.xlarge 4 30,5 1
g3.4xlarge 16 122 1
g3.8xlarge 32 244 2
g3.16xlarge 64 488 4
g4ad.4xlarge 16 64 1
g4ad.8xlarge 32 128 2
g4ad.16xlarge 64 256 4
g4dn.xlarge 4 16 1
g4dn.2xlarge 8 32 1
g4dn.4xlarge 16 64 1
g4dn.8xlarge 32 128 1
g4dn.12xlarge 48 192 4
g4dn.16xlarge 64 256 1
g4dn.metal 96 384 8
f1.2xlarge 8 122 1
f1.4xlarge 16 244 2
f1.16xlarge 64 976 8
inf1.xlarge 4 8 1
inf1.2xlarge 8 16 1
inf1.6xlarge 24 48 4
inf1.24xlarge 96 192 16

Weitere Informationen zu den Hardware-Spezifikationen für jeden Amazon EC2-Instance-Typ finden Sie unter Amazon EC2-Instance-Typen.

Weitere Informationen zur Angabe von CPU-Optionen finden Sie unter CPU-Optionen optimieren.

Instance-Leistung

Sie können verschiedene Optimierungen an den GPU-Einstellungen vornehmen, um die bestmögliche Leistung in Ihrer Instance zu erzielen. Weitere Informationen finden Sie unter Optimieren der GPU-Einstellungen.

EBS-optimierte Instances bieten die beste Leistung für Ihre EBS-Volumes, indem der Datenverkehr zwischen Amazon Amazon EBS-E/A und anderem Netzwerk-Datenverkehr von Ihrer Instance optimiert wird. Einige beschleunigte Datenverarbeitungs-Instances sind standardmäßig und ohne zusätzliche Kosten EBS-optimiert. Weitere Informationen finden Sie unter Amazon EBS–optimierte Instances.

Einige beschleunigte Datenverarbeitungs-Instance-Typen ermöglichen die Steuerung von C- und P-Prozessorzuständen unter Linux. C-Zustände steuern den Ruhezustand eines Kerns im inaktiven Zustand. P-Zustände steuern die gewünschte Leistung (CPU-Frequenz) eines Kern. Weitere Informationen finden Sie unter Steuerung des Prozessorzustands für Ihre EC2-Instance.

Netzwerkleistung

Sie können erweiterte Netzwerke für unterstützte Instance-Typen aktivieren, um eine geringere Latenz, einen geringeren Netzwerkjitter und eine höhere PPS (Paket pro Sekunde)-Leistung zu erzielen. Die meisten Anwendungen brauchen kein gleichbleibend hohes Niveau an Netzwerkleistung, können aber vom Zugriff auf eine erhöhte Bandbreite profitieren, wenn sie Daten senden oder empfangen. Weitere Informationen finden Sie unter Enhanced Networking unter Linux.

Im Folgenden finden Sie eine Zusammenfassung der Netzwerkleistung für Instances für beschleunigte Berechnungen, die Enhanced Networking unterstützen.

Instance-Typ Netzwerkleistung Enhanced Networking
f1.4xlarge und kleiner | g3.4xlarge | g4ad.4xlarge | p3.2xlarge Bis zu 10 Gbit/s † ENA
g3s.xlarge | g3.8xlarge | p2.8xlarge | p3.8xlarge 10 Gbit/s ENA
g4ad.8xlarge 15 Gbit/s ENA
g4dn.4xlarge und kleiner | inf1.2xlarge und kleiner Bis zu 25 Gbit/s † ENA
f1.16xlarge | g3.16xlarge | g4ad.16xlarge | inf1.6xlarge | p2.16xlarge | p3.16xlarge 25 Gbit/s ENA
g4dn.8xlarge | g4dn.12xlarge | g4dn.16xlarge 50 Gbit/s ENA
g4dn.metal | inf1.24xlarge | p3dn.24xlarge 100 Gbit/s ENA

† Diese Instances nutzen ein Netzwerk-E/A-Guthabensystem, mit dem Instances Netzwerkbandbreite basierend auf der durchschnittlichen Bandbreitennutzung zugewiesen wird. Sie sammeln Guthaben an, wenn ihre Bandbreite unter den Basisbandbreite liegt, und können diese Guthaben verwenden, wenn sie Netzwerk-Datenübertragungen durchführen. Um weitere Informationen zu erhalten, öffnen Sie einen Supportfall und bitten Sie um die Baseline-Bandbreite für die einzelnen Instance-Typen, an denen Sie interessiert sind.

Funktionen von Instances

Im Folgenden finden Sie eine Zusammenfassung der Funktionen von Instances für beschleunigten Berechnungen:

Nur EBS NVMe-EBS Instance-Speicher Platzierungsgruppe

G2

Nein

Nein

SSD

Ja

G3

Ja

Nein

Nein

Ja

G4ad

Nein

Ja

NVMe *

Ja

G4dn

Nein

Ja

NVMe *

Ja

Inf1

Ja

Nein

Nein

Ja

P2

Ja

Nein

Nein

Ja

P3

24xlarge: Nein

Alle anderen Größen: Ja

24xlarge: Yes

Alle anderen Größen: Nein

24xlarge: NVMe *

Ja

F1

Nein

Nein

NVMe *

Ja

* Der Root-Gerät-Datenträger muss ein Amazon EBS-Volume sein.

Weitere Informationen finden Sie unter:

Versionshinweise

  • Sie müssen die Instance mit einem HVM-AMI starten.

  • Für Instances, die auf dem Nitro-System basieren, gelten die folgenden Anforderungen:

    Die folgenden Linux-AMIs erfüllen diese Anforderungen:

    • Amazon Linux 2

    • Amazon Linux AMI 2018.03

    • Ubuntu 14.04 (mit linux-aws-Kernel) oder höher

    • Red Hat Enterprise Linux 7.4 oder höher

    • SUSE Linux Enterprise Server 12 SP2 oder höher

    • CentOS 7.4.1708 oder höher

    • FreeBSD 11.1 oder höher

    • Debian GNU/Linux 9 oder höher

  • GPU-basierte Instances können nur auf die GPU zugreifen, wenn NVIDIA-Treiber installiert wurden. Weitere Informationen finden Sie unter Installieren von NVIDIA-Treibern auf Linux-Instances.

  • Wenn eine Bare-Metal-Instance gestartet wird, wird der zugrunde liegende Server gestartet, wobei alle Hardware- und Firmwarekomponenten überprüft werden. Dies bedeutet, dass es ab dem Zeitpunkt, an dem die Instance in den Betriebszustand übergeht, 20 Minuten dauern kann, bis sie über das Netzwerk verfügbar wird.

  • Zum Anfügen und Trennen von EBS-Volumes oder sekundären Netzwerkschnittstellen von einer Bare-Metal-Instance wird nativer PCIe-Hotplug-Support benötigt. Amazon Linux 2 und die neuesten Versionen von Amazon Linux AMI unterstützen im Gegensatz zu älteren Versionen native PCIe-Hotplugs. Sie müssen die folgenden Konfigurationsoptionen des Linux-Kernels aktivieren:

    CONFIG_HOTPLUG_PCI_PCIE=y CONFIG_PCIEASPM=y
  • Bare-Metal-Instances nutzen anstelle eines auf dem E/A-Port basierenden seriellen Geräts ein PCI-basiertes serielles Gerät. Der Linux-Upstream-Kernel und die neuesten Amazon Linux AMIs unterstützen dieses Gerät. Bare-Metal-Instances ermöglichen dem System über eine ACPI SPCR-Tabelle zudem, das PCI-basierte serielle Gerät automatisch zu nutzen. Die neuesten Windows-AMIs nutzen automatisch das PCI-basierte serielle Gerät.

  • Es gilt ein Limit von 100 AFIs pro Region.

  • Die Gesamtanzahl der Instances, die Sie in einer Region starten können, ist begrenzt. Für bestimmte Instance-Typen gelten zusätzliche Einschränkungen. Weitere Informationen finden Sie unter Wie viele Instances kann ich in Amazon EC2 ausführen? in der allgemeinen Amazon EC2-FAQ.