Heim > Artikel > Technologie-Peripheriegeräte > Einheitliche KI-Entwicklung: Google OpenXLA ist Open Source und integriert alle Frameworks und KI-Chips
Auf der Google Cloud Next 2022-Veranstaltung im Oktober letzten Jahres wurde das OpenXLA-Projekt offiziell vorgestellt, ein Open-Source-KI-Framework, das von Google und Technologieunternehmen wie Alibaba, AMD, Arm, Amazon, Intel, NVIDIA und gefördert wird Andere Technologieunternehmen setzen sich dafür ein, verschiedene Frameworks für maschinelles Lernen zusammenzuführen, um Entwicklern für maschinelles Lernen die Möglichkeit zu geben, Frameworks und Hardware proaktiv auszuwählen.
Am Mittwoch gab Google bekannt, dass das OpenXLA-Projekt offiziell Open Source ist.
Projektlink: https://github.com /openxla/xla
OpenXLA beschleunigt maschinelles Lernen durch die Erstellung eines einheitlichen Machine-Learning-Compilers, der mit vielen verschiedenen Machine-Learning-Frameworks und Hardwareplattformen zusammenarbeitet. Anwendungsbereitstellung und -bereitstellung größere Code-Portabilität. Dies ist ein bedeutendes Projekt für die KI-Forschung und -Anwendungen, und Jeff Dean hat es auch in sozialen Netzwerken beworben.
Heutzutage werden die Entwicklung und Bereitstellung von maschinellem Lernen durch eine fragmentierte Infrastruktur behindert. Die Auswirkungen Diese Infrastrukturen können je nach Framework, Hardware und Anwendungsfall variieren. Diese Isolation begrenzt die Geschwindigkeit, mit der Entwickler arbeiten können, und schafft Hindernisse für die Portabilität, Effizienz und Produktion von Modellen.
Am 8. März haben Google und andere mit der Eröffnung des OpenXLA-Projekts, das die Repositorys XLA, StableHLO und IREE umfasst, einen wichtigen Schritt zur Beseitigung dieser Hindernisse unternommen. Schritt.
OpenXLA ist ein Open-Source-ML-Compiler-Ökosystem, das gemeinsam von Branchenführern im Bereich KI/maschinelles Lernen entwickelt wurde. Zu den Mitwirkenden gehören Alibaba, AWS, AMD, Apple, Arm, Cerebras, Google, Graphcore, Hugging Face, Intel, Meta und Nvidia. Es ermöglicht Entwicklern, Modelle aus allen führenden Frameworks für maschinelles Lernen zu kompilieren und zu optimieren, um sie effizient zu trainieren und auf einer Vielzahl von Hardware bereitzustellen. Entwickler, die OpenXLA verwenden, können erhebliche Verbesserungen bei der Trainingszeit, dem Durchsatz, der Service-Latenz und letztendlich bei den Release- und Rechenkosten beobachten.
Während die KI-Technologie in die praktische Phase eintritt, nutzen Entwicklungsteams in vielen Branchen maschinelles Lernen, um reale Lösungen zu finden -weltliche Herausforderungen wie die Vorhersage und Prävention von Krankheiten, personalisierte Lernerfahrungen und die Erforschung der Physik schwarzer Löcher.
Da die Anzahl der Modellparameter exponentiell wächst und sich der Rechenaufwand für Deep-Learning-Modelle alle sechs Monate verdoppelt, sind Entwickler bestrebt, die Leistung und Auslastung der Infrastruktur zu maximieren. Eine große Anzahl von Teams nutzt eine Vielzahl von Hardwaremodellen, von energieeffizienten ASICs speziell für maschinelles Lernen im Rechenzentrum bis hin zu KI-Edge-Prozessoren, die schnellere Reaktionszeiten bieten. Um die Effizienz zu verbessern, verwenden diese Hardwaregeräte dementsprechend angepasste und einzigartige Algorithmen und Softwarebibliotheken.
Aber wenn es andererseits keinen universellen Compiler gibt, der verschiedene Hardwaregeräte mit den verschiedenen heute verwendeten Frameworks (wie TensorFlow, PyTorch) verbindet, wird man es tun Es erfordert viel Aufwand, maschinelles Lernen effektiv durchzuführen. In der Praxis müssen Entwickler die Modelloperationen für jedes Hardwareziel manuell optimieren. Das bedeutet, dass die Verwendung benutzerdefinierter Softwarebibliotheken oder das Schreiben gerätespezifischen Codes Domänenkenntnisse erfordert.
Dies ist ein paradoxes Ergebnis. Der Einsatz spezialisierter Technologie zur Verbesserung der Effizienz führt zu isolierten, nicht verallgemeinerbaren Pfaden über Frameworks und Hardware hinweg, was wiederum zu hohen Wartungskosten führt Dies führt zu einer Anbieterbindung und verlangsamt den Fortschritt der maschinellen Lernentwicklung.
Das OpenXLA-Projekt bietet einen hochmodernen ML-Compiler, der mit der Komplexität der ML-Infrastruktur skaliert. Die Grundpfeiler sind Leistung, Skalierbarkeit, Portabilität, Flexibilität und Benutzerfreundlichkeit. Mit OpenXLA streben wir danach, das größere Potenzial der KI in der realen Welt auszuschöpfen, indem wir die Entwicklung und Bereitstellung von KI beschleunigen.
OpenXLA zielt darauf ab:
Die Herausforderungen, denen wir heute in der Infrastruktur für maschinelles Lernen gegenüberstehen, sind riesig, das kann keine einzelne Organisation Diese Herausforderungen allein effektiv bewältigen können. Die OpenXLA-Community bringt Entwickler und Branchenführer zusammen, die auf verschiedenen Ebenen des KI-Stacks tätig sind – von Frameworks bis hin zu Compilern, Laufzeiten und Chips – und ist daher ideal geeignet, die Fragmentierung, die wir im ML-Bereich beobachten, anzugehen.
Als Open-Source-Projekt hält sich OpenXLA an die folgenden Grundsätze:
OpenXLA eliminiert die Entwicklung maschinellen Lernens mit modularen Toolchains. Es wird von allen führenden Unternehmen unterstützt Frameworks über eine gemeinsame Compiler-Schnittstelle, nutzt portable standardisierte Modelldarstellungen und stellt domänenspezifischen Compilern leistungsstarke zielorientierte und hardwarespezifische Optimierungen zur Verfügung. Die Toolchain umfasst XLA, StableHLO und IREE, die alle MLIR nutzen: eine Compiler-Infrastruktur, die es ermöglicht, Modelle für maschinelles Lernen konsistent auf Hardware darzustellen, zu optimieren und auszuführen.
#🎜. 🎜 #Umfang der Anwendungsfälle für maschinelles Lernen
Die aktuelle Nutzung von OpenXLA deckt das Spektrum der ML-Anwendungsfälle ab, einschließlich DeepMinds AlphaFold, GPT2 und Swin auf Alibaba Cloud-Modellen wie z als Transformer verfügen über eine umfassende Ausbildung sowie multimodale LLM-Schulungen auf Amazon.com. Kunden wie Waymo nutzen OpenXLA für Echtzeit-Inferenz im Fahrzeug. Darüber hinaus wird OpenXLA verwendet, um Stable Diffusion-Dienste auf lokalen Maschinen zu optimieren, die mit AMD RDNA™ 3 ausgestattet sind.
Beste Leistung, sofort einsatzbereit
OpenXLA Use Developers kann die Modellleistung problemlos beschleunigen, ohne gerätespezifischen Code schreiben zu müssen. Es verfügt über umfassende Funktionen zur Modelloptimierung, einschließlich der Vereinfachung algebraischer Ausdrücke, der Optimierung des speicherinternen Datenlayouts und der Verbesserung der Planung, um die Spitzenspeichernutzung und den Kommunikationsaufwand zu reduzieren. Fortschrittliche Operator-Fusion und Kernel-Generierung tragen dazu bei, die Geräteauslastung zu verbessern und den Bedarf an Speicherbandbreite zu reduzieren.
Workloads einfach skalieren
Effiziente Parallelisierungsalgorithmen entwickeln Sehr zeitaufwändig und erfordert Fachwissen. Mit Funktionen wie GSPMD müssen Entwickler nur eine Teilmenge der Schlüsseltensoren mit Anmerkungen versehen, die dann vom Compiler verwendet werden können, um automatisch parallele Berechnungen zu generieren. Dadurch entfällt der erhebliche Aufwand für die Partitionierung und effiziente Parallelisierung von Modellen über mehrere Hardware-Hosts und Beschleuniger hinweg. #? --the-box-Unterstützung, einschließlich AMD- und NVIDIA-GPUs, x86-CPUs und ARM-Architekturen sowie ML-Beschleuniger wie Google TPU, AWS Trainium und Inferentia, Graphcore IPU, Cerebras Wafer-Scale Engine und mehr. OpenXLA unterstützt auch TensorFlow, PyTorch und JAX über StableHLO, eine tragbare Ebene, die als Eingabeformat für OpenXLA verwendet wird.
Flexibilität
OpenXLA bietet Benutzern die Flexibilität, Modell-Hotspots manuell anzupassen. Erweiterungsmechanismen wie benutzerdefinierte Aufrufe ermöglichen es Benutzern, Deep-Learning-Grundelemente in CUDA, HIP, SYCL, Triton und anderen Kernelsprachen zu schreiben, um die Hardwarefunktionen voll auszunutzen.
StableHLO
StableHLO ist eine tragbare Schicht zwischen ML-Frameworks und ML-Compilern, eine Reihe von Operationen, die High-Level-Operationen (HLO) für Dynamik, Quantisierung und Sparsity unterstützen. Darüber hinaus kann es in MLIR-Bytecode serialisiert werden, um Kompatibilitätsgarantien zu bieten. Alle wichtigen ML-Frameworks (JAX, PyTorch, TensorFlow) können StableHLO erzeugen. Im Jahr 2023 plant Google eine enge Zusammenarbeit mit dem PyTorch-Team, um die Integration mit PyTorch Version 2.0 zu erreichen.
Das obige ist der detaillierte Inhalt vonEinheitliche KI-Entwicklung: Google OpenXLA ist Open Source und integriert alle Frameworks und KI-Chips. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!