Esitatud on OpenXLA, tööriistakomplekt masinõppemudelite optimeerimiseks ja kompileerimiseks

Suurimad masinõppe arendamisega tegelevad ettevõtted esitasid projekti OpenXLA, mille eesmärk on ühise arendamise kaudu luua tööriistakomplekt, mis võimaldab kompileerida ja optimeerida mudeleid masinõppesüsteemidele. Projekt hõlmab tööriistade arendamist, mis võimaldavad ühtlustada mudelite kompileerimist, mis on loodud TensorFlow, PyTorch ja JAX raamistikus, et tagada efektiivne õppimine ja teostamine erinevates GPU-des ja spetsialiseeritud kiirendites. Projekti on liitunud sellised ettevõtted nagu Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba ja Amazon.

Oodatakse, et juhtivate teadusmeeskondade ja kogukonna esindajate koostöö abil õnnestub edendada masinõppetehnoloogiate arengut ning lahendada infrastruktuuri segmenteerimise probleem erinevate raamistikude ja seadmete jaoks. OpenXLA võimaldab tõhusat erinevate seadmete tuge, sõltumata sellest, millise raamistikuga masinõppemudel on loodud. Oodatakse, et OpenXLA aitab lühendada mudelite koolitusaega, suurendada läbilaskevõimet, vähendada viivitusi, alandada arvutusressursside kulusid ja vähendada toodete turule toomise aega.

Esitatud on OpenXLA, tööriistakomplekt masinõppemudelite optimeerimiseks ja kompileerimiseks

OpenXLA koosnevad kolmest põhikomponendist, mille kood on jagatud Apache 2.0 litsentsi alusel:

  • XLA (Accelerated Linear Algebra) — kompilaator, mis võimaldab optimeerida masinõppemudeleid kõrge soorituse tagamiseks erinevatel riistvaraplattvormidel, sealhulgas GPU, CPU ja eri tootjate spetsialiseeritud kiirendites.
  • StableHLO on spetsifikatsioon ja põhiteostus kõrgema taseme operatsioonide (HLO, High-Level Operations) komplektile, et kasutada seda masinõppe süsteemide mudelites. See toimib kihina masinõppe raamistikute ja konkreetset seadmeid toetavate kompilaatorite vahel, mis muudavad mudeli teostatavaks. StableHLO mudelite genereerimise kihid on ette valmistatud PyTorch, TensorFlow ja JAX raamistikute jaoks. StableHLO aluseks on MHLO komplekt, millele on lisatud serialiseerimise ja versioneerimise tugi.
  • IREE (Intermediate Representation Execution Environment) on kompilaator ja runtime, mis muundab masinõppe mudeleid universaalseks vahepealseks esitamiseks, mis põhineb MLIR (Multi-Level Intermediate Representation) formaadil, mis on pärit LLVM projektist. Eeliseks on enneaegse kompileerimise võimalus, juhtimisvoo tugi, dünaamiliste elementide kasutamise võimalus mudelites ning optimeerimine erinevatele CPU-dele ja GPU-dele, madalad kulud.

OpenXLA tööriista peamised eelised:

  • Parim jõudlus saavutatakse ilma vajaduseta süveneda seadme spetsiifilise koodi kirjutamisse. Pakutakse valmis optimeerimisi, sealhulgas algebraliste väljendite lihtsustamine, mäluaadresside tõhus paigutamine, täitmise ajakava kavandamine, et vähendada mälutippkoormusi ja ülekoormusi.
  • Kaalumise ja arvutuste jagamise lihtsustamine. Arendajale piisab, kui lisada annotatsioonid kriitiliste tensorite alamhulgale, mille põhjal kompilaator suudab automaatselt genereerida koodi paralleelseteks arvutusteks.
  • Ühilduvuse tagamine, toetades erinevaid riistvaraplatvorme, nagu AMD ja NVIDIA GPU-d, x86 ja ARM arhitektuuril põhinevad CPU-d, Google'i TPU masinõppe kiirendajad, AWS Trainium ja Inferentia, Graphcore ja Cerebras Wafer-Scale Engine.
  • Täienduste toetamist laienduste kaudu, et rakendada täiendavaid funktsioone, nagu süvamasinõppe primitiivide kirjutamise toimetamine CUDA, HIP, SYCL, Triton ja muude paralleelsete arvutuste keeltega. Võime käsitsi häälestada mudeleid kitsaskohti.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster