OpenXLA, një projekt me burim të hapur për të shpejtuar dhe thjeshtuar mësimin e makinerive

OpenXLA

OpenXLA është një ekosistem përpilues ML me burim të hapur i bashkëzhvilluar

Kohët e fundit, u prezantuan kompanitë më të mëdha të angazhuara në zhvillim në fushën e mësimit të makinerive projekti OpenXLA, të destinuara për zhvillimin e përbashkët të mjeteve për të përpiluar dhe optimizuar modelet për sistemet e mësimit të makinerive.

Projekti ka marrë përsipër zhvillimin e mjeteve që lejojnë unifikimin e përpilimit të modeleve të përgatitura në kornizat TensorFlow, PyTorch dhe JAX për trajnime dhe ekzekutim efikas në GPU të ndryshme dhe përshpejtues të specializuar. Kompanitë si Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba dhe Amazon iu bashkuan punës së përbashkët të projektit.

Projekti OpenXLA ofron një përpilues ML të teknologjisë së fundit që mund të shkallëzohet në mes të kompleksitetit të infrastrukturës ML. Shtyllat e tij themelore janë performanca, shkallëzueshmëria, transportueshmëria, fleksibiliteti dhe shtrirja për përdoruesit. Me OpenXLA, ne aspirojmë të zhbllokojmë potencialin real të AI duke përshpejtuar zhvillimin dhe shpërndarjen e saj.

OpenXLA u mundëson zhvilluesve të përpilojnë dhe optimizojnë modele nga të gjitha kornizat kryesore të ML për trajnime dhe shërbime efikase në një shumëllojshmëri të gjerë harduerësh. Zhvilluesit që përdorin OpenXLA do të shohin përmirësime të rëndësishme në kohën e trajnimit, performancën, vonesën e shërbimit dhe përfundimisht kohën për të tregtuar dhe llogaritur kostot.

Shpresohet që duke bashkuar përpjekjet të ekipeve kryesore kërkimore dhe përfaqësuesve të komunitetit, do të jetë e mundur të stimulohet zhvillimi i sistemeve të mësimit të makinerive dhe të zgjidhë problemin e fragmentimit të infrastrukturës për korniza dhe ekipe të ndryshme.

OpenXLA lejon zbatimin efektiv të mbështetjes për pajisje të ndryshme, pavarësisht nga kuadri në të cilin bazohet modeli i mësimit të makinës. OpenXLA pritet të zvogëlojë kohën e trajnimit të modelit, të përmirësojë performancën, të zvogëlojë vonesën, të zvogëlojë shpenzimet kompjuterike dhe të zvogëlojë kohën në treg.

OpenXLA përbëhet nga tre komponentë kryesorë, kodi i të cilit shpërndahet nën licencën Apache 2.0:

  1. XLA (algjebra lineare e përshpejtuar) është një përpilues që ju lejon të optimizoni modelet e mësimit të makinerive për ekzekutim me performancë të lartë në platforma të ndryshme harduerike, duke përfshirë GPU, CPU dhe përshpejtues të specializuar nga prodhues të ndryshëm.
  2. StableHLO është një specifikim bazë dhe zbatim i një grupi Operacionesh të Nivelit të Lartë (HLO) për përdorim në modelet e sistemeve të mësimit të makinerive. Ai vepron si një shtresë midis kornizave të mësimit të makinerive dhe përpiluesve që transformojnë modelin për të ekzekutuar në një pajisje specifike. Shtresat janë përgatitur për të gjeneruar modele në formatin StableHLO për kornizat PyTorch, TensorFlow dhe JAX. Kompleti MHLO përdoret si bazë për StableHLO, i cili zgjerohet me mbështetje për serializimin dhe kontrollin e versionit.
  3. IREE (Intermediate Representation Execution Environment) është një përpilues dhe kohëzgjatjeje që konverton modelet e mësimit të makinerive në një paraqitje universale të ndërmjetme bazuar në formatin MLIR (Intermediate Multi-Level Representation) të projektit LLVM. Nga veçoritë, theksohet mundësia e përpilimit (para kohe), mbështetja për kontrollin e rrjedhës, aftësia për të përdorur elementë dinamikë në modele, optimizimi për CPU dhe GPU të ndryshme dhe shpenzimet e ulëta.

Lidhur me avantazhet kryesore të OpenXLA, përmendet se performanca optimale është arritur pa pasur nevojë të thellohesh në shkrimin e kodit specifike për pajisjen, përveç të sigurojë optimizime jashtë kutisë, duke përfshirë thjeshtimin e shprehjeve algjebrike, alokimin efikas të memories, planifikimin e ekzekutimit, duke marrë parasysh reduktimin e konsumit maksimal të memories dhe shpenzimeve të përgjithshme.

Një avantazh tjetër është thjeshtimi i shkallëzimit dhe paralelizimi i llogaritjeve. Mjafton që një zhvillues të shtojë shënime për një nëngrup tensorë kritikë, në bazë të të cilave përpiluesi mund të gjenerojë automatikisht kodin për llogaritjen paralele.

Theksohet gjithashtu se transportueshmëria ofrohet me mbështetje për platforma të shumta harduerike, të tilla si GPU-të AMD dhe NVIDIA, CPU-të x86 dhe ARM, Përshpejtuesit e Google TPU ML, IPU-të AWS Trainium Inferentia, Graphcore dhe Cerebrat e motorit të shkallës Wafer.

Mbështetje për lidhjen e shtesave me zbatimin e funksioneve shtesë, si mbështetje për shkrimin e primitivëve të thellë të mësimit të makinerive duke përdorur CUDA, HIP, SYCL, Triton dhe gjuhë të tjera për llogaritjen paralele, si dhe mundësia e rregullimit manual të pengesave në modele.

Së fundmi, nëse jeni të interesuar të dini më shumë për këtë, mund të konsultoheni me detajet në lidhjen vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.