- Fly.io baut eine Public Cloud auf eigener Hardware auf und entwickelte dafür Fly GPU Machines mit dem Ziel, AI/ML-Inferenz mit GPUs bereitzustellen
- Fly GPU Machines sind VMs, die Docker-/OCI-Container ausführen und so entworfen wurden, dass NVIDIA-GPUs direkt durchgereicht werden, um schnelle CUDA-Berechnungen zu ermöglichen
- Die Bedeutung von AI/ML war größer als erwartet, aber GPU-Produkte scheinen die Bedürfnisse des Marktes nicht richtig widerzuspiegeln
Technische Schwierigkeiten bei der Einführung von GPUs
- Fly GPU Machines wurden so konzipiert, dass sie statt Firecracker den Cloud Hypervisor von Intel verwenden, um PCI-Passthrough zu unterstützen
- NVIDIAs Ökosystem unterstützt keine Micro-VM-Hypervisoren, wodurch GPU-Sicherheit und Performance-Optimierung erschwert werden
- GPUs waren ein Sorgenkind für das Security-Team, da bidirektionale DMA-Übertragungen (Direct Memory Access) und vom Nutzer gesteuerte Operationen möglich sind, was ein hohes Sicherheitsrisiko verursacht
- Um GPU- und Nicht-GPU-Workloads zu trennen, wurde separate Server-Hardware verwendet, was zu einer kostenineffizienten Struktur führte
- Für die Sicherheitsvalidierung wurden umfangreiche Sicherheitsprüfungen mit Atredis und Tetrel durchgeführt, was viel Zeit und Geld kostete
Technische Irrwege und Fehlversuche
- Statt dem von NVIDIA empfohlenen Ansatz zu folgen (Aufbau eines K8s-Clusters oder Nutzung von QEMU), wurde versucht, die schnelle Startzeit von Fly Machines beizubehalten
- Der Versuch, NVIDIAs virtuelle GPU-(vGPU-)Treiber mit dem Intel Cloud Hypervisor zu verwenden, scheiterte
- Aufgrund von NVIDIAs geschlossenem Treiber-Ökosystem war es schwierig, eine Architektur zu schaffen, die GPUs effizient nutzt
- Es war nötig, das Laden von Modellgewichten mit GPUs zu optimieren, doch das ließ sich nur schwer lösen, ohne die Developer Experience (DX) zu beeinträchtigen
- Es wurden viele GPUs gekauft, aber sie lieferten nicht die erhofften Ergebnisse
Warum das GPU-Geschäftsmodell scheiterte
- Normale Entwickler wollen eher LLMs als GPUs
- Statt AI/ML-Modelle zu optimieren, ist es viel einfacher, LLM-APIs von OpenAI, Anthropic usw. zu nutzen, und der Performance-Unterschied ist auch nicht groß
- Den meisten Entwicklern ist Performance in „Tokens pro Sekunde“ wichtig; für Optimierungen im Millisekundenbereich, die GPUs bieten, interessieren sie sich kaum
- Unternehmen mit groß angelegten AI-Workloads benötigen enorme GPU-Rechenleistung, und selbst eine einzelne A100-GPU reicht nicht aus
- Große AI-Labore und Unternehmen wollen H100-Cluster auf SXM-Basis
- Es könnte einen Markt für kleine GPUs für leichte ML-Workloads geben, aber NVIDIA MIG lässt sich in einer vollständig virtualisierten Umgebung nur schwer einsetzen
- Die L40S-GPU wird sinnvoll genutzt, wurde aber nicht zu einem Wachstumstreiber für das Kerngeschäft von Fly.io
Erkenntnisse
- Anfangs (2022) wurde erwartet, dass viele verschiedene AI-Modelle entstehen würden; inzwischen hat sich der Markt auf wenige LLM-Modelle wie die von OpenAI und Anthropic verengt
- Fly.io folgt dem Grundsatz: „Wir entwerfen Funktionen für 10.000 Entwickler“
- GPUs waren nur eine Funktion für den 10.001. Entwickler und konnten sich daher nur schwer als Hauptprodukt etablieren
- Für Startups ist Lernen durch wiederholte Versuche Teil des Prozesses, und die Einführung von GPUs war eine gescheiterte Wette
- Die Investitionen in GPUs sind kein Totalverlust, da sich ein Teil der Hardware später noch verkaufen lässt
- Es ist möglich, den GPU-Support zurückzufahren und dabei Sicherheit und Developer Experience von Fly Machines zu erhalten
- So wie das ursprüngliche Produkt von Fly.io, eine JavaScript-Edge-Computing-Runtime, vom Markt nicht gewünscht war und schließlich auf Container-Support umgestellt wurde, waren auch GPUs eine Entscheidung, die nicht zum Marktbedarf passte
- Startups finden die richtige Antwort oft über falsche Annahmen, und der aktuelle GPU-Fall ist ein Teil genau dieses Prozesses
1 Kommentare
Hacker-News-Kommentare
Entwickler wollen eher LLMs als GPUs oder AI/ML-Modelle. Systemingenieure kümmern sich um CUDA und GPUs, Softwareentwickler dagegen nicht
git pusherledigt haben und Dinge wie DNS oder Linux nicht verstehen müssenSeit 2012 ist das Mooresche Gesetz faktisch vorbei. Single-Thread-Ausführung ist bei 2 GHz stehen geblieben
fly-GPU-Maschinen sind sehr schnell und zuverlässig und im Vergleich zu Alternativen nicht teuer
Ich habe eine 4090 gekauft, aber 24 GB VRAM reichen nicht aus
Kunden, die sich für Fly entscheiden, werden wahrscheinlich die letzten sein, die langfristig dedizierte GPU-Server nutzen
Schade, dass es keine GPU-Slices gibt. Kosten von 1.000 $ pro Monat sind schwer zu rechtfertigen
„Wir lagen falsch“ ist einer der edelsten und schönsten Sätze im Englischen
Fly.io zieht Entwickler an, die denen der Workers-Plattform von Cloudflare ähneln
Es hat einen Monat gedauert, bei Runpod einen serverlosen Endpunkt einzurichten, und es war teuer und unzuverlässig