OpenXLA, et åpen kildekodeprosjekt for å øke hastigheten på og forenkle maskinlæring

OpenXLA

OpenXLA er et co-utviklet åpen kildekode ML kompilator økosystem

Nylig, de største selskapene som driver med utvikling innen maskinlæring presentert prosjektet OpenXLA, beregnet for felles utvikling av verktøy å kompilere og optimalisere modeller for maskinlæringssystemer.

Prosjektet har tatt ansvar for utviklingen av verktøy som gjør det mulig å forene kompileringen av modeller utarbeidet i TensorFlow, PyTorch og JAX rammeverk for effektiv opplæring og utførelse på forskjellige GPUer og spesialiserte akseleratorer. Selskaper som Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba og Amazon ble med i det felles arbeidet med prosjektet.

OpenXLA-prosjektet gir en toppmoderne ML-kompilator som kan skaleres midt i kompleksiteten til ML-infrastrukturen. Dens grunnleggende pilarer er ytelse, skalerbarhet, portabilitet, fleksibilitet og utvidbarhet for brukere. Med OpenXLA ønsker vi å frigjøre det virkelige potensialet til AI ved å akselerere utviklingen og leveringen.

OpenXLA gjør det mulig for utviklere å kompilere og optimalisere modeller fra alle ledende ML-rammeverk for effektiv opplæring og service på et bredt utvalg maskinvare. Utviklere som bruker OpenXLA vil se betydelige forbedringer i treningstid, ytelse, tjenesteforsinkelse, og til slutt tid til markedsføring og beregning av kostnader.

Det er å håpe at ved å delta innsats av de viktigste forskergruppene og representanter for samfunnet, det vil være mulig å stimulere til utvikling av maskinlæringssystemer og løse problemet med fragmentering av infrastruktur for ulike rammer og team.

OpenXLA gjør det mulig å implementere effektiv støtte for forskjellig maskinvare, uavhengig av rammeverket som maskinlæringsmodellen bygger på. OpenXLA forventes å redusere modelltreningstid, forbedre ytelsen, redusere ventetiden, redusere databehandlingskostnader og redusere tiden til markedet.

OpenXLA består av tre hovedkomponenter, hvis kode er distribuert under Apache 2.0-lisensen:

  1. XLA (akselerert lineær algebra) er en kompilator som lar deg optimalisere maskinlæringsmodeller for høyytelsesutførelse på forskjellige maskinvareplattformer, inkludert GPUer, CPUer og spesialiserte akseleratorer fra forskjellige produsenter.
  2. StableHLO er en grunnleggende spesifikasjon og implementering av et sett med High-Level Operations (HLOs) for bruk i maskinlæringssystemmodeller. Den fungerer som et lag mellom maskinlæringsrammeverk og kompilatorer som transformerer modellen til å kjøre på spesifikk maskinvare. Lag er forberedt for å generere modeller i StableHLO-format for PyTorch, TensorFlow og JAX-rammeverket. MHLO-pakken brukes som grunnlag for StableHLO, som utvides med støtte for serialisering og versjonskontroll.
  3. IREE (Intermediate Representation Execution Environment) er en kompilator og kjøretid som konverterer maskinlæringsmodeller til en universell mellomrepresentasjon basert på MLIR-formatet (Intermediate Multi-Level Representation) til LLVM-prosjektet. Av funksjonene fremheves muligheten for forhåndskompilering (på forhånd), støtte for flytkontroll, muligheten til å bruke dynamiske elementer i modeller, optimalisering for ulike CPUer og GPUer og lav overhead.

Når det gjelder hovedfordelene med OpenXLA, nevnes det at optimal ytelse er oppnådd uten å måtte fordype seg i å skrive kode enhetsspesifikke, i tillegg til gi ut-av-boksen optimaliseringer, inkludert forenkling av algebraiske uttrykk, effektiv minneallokering, utførelsesplanlegging, tar hensyn til reduksjon av maksimalt minneforbruk og overhead.

En annen fordel er forenkling av skalering og parallellisering av beregninger. Det er nok for en utvikler å legge til merknader for et undersett av kritiske tensorer, på grunnlag av hvilke kompilatoren automatisk kan generere kode for parallell databehandling.

Det er også fremhevet at portabilitet er utstyrt med støtte for flere maskinvareplattformer, slik som AMD og NVIDIA GPUer, x86 og ARM CPUer, Google TPU ML Accelerators, AWS Trainium Inferentia IPUer, Graphcore og Wafer-Scale Engine Cerebras.

Støtte for tilkobling av utvidelser med implementering av tilleggsfunksjoner, som støtte for å skrive dype maskinlæringsprimitiver ved å bruke CUDA, HIP, SYCL, Triton og andre språk for parallell databehandling, samt mulighet for manuell justering av flaskehalser i modeller.

Til slutt, hvis du er interessert i å vite mer om det, kan du konsultere detaljer i følgende lenke.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.