Povečanje učinkovitosti in hitrosti pri razvoju ML/AI

V hitro spreminjajočem se svetu razvoja AI/ML je ključno imeti infrastrukturo, ki lahko sledi zahtevam ML inženirjev. Počasi časi izgradnje in neučinkovitosti pri pakiranju ter distribuciji izvršilnih datotek lahko negativno vplivajo na produktivnost in zapravljajo dragocen čas.

Da bi se soočili s temi izzivi, je naša ekipa sprejela proaktivne ukrepe za reševanje počasnih gradenj in neučinkovitosti pri pakiranju, kar je privedlo do znatnega zmanjšanja nepotrebnih del in izboljšane učinkovitosti.

Namesto zanašanja na zastarele revizije, ki zahtevajo ponavljajoče se gradnje in povezovanje, smo se osredotočili na zmanjšanje gradenj z optimizacijo grafa gradnje in optimizacijo števila odvisnosti. Tak pristop je znatno zmanjšal potrebo po obsežnih gradnjah in izboljšal celotno hitrost gradnje.

Druga pomembna ovira, s katero smo se soočili, je bilo pakiranje in distribucija izvršilnih datotek. Da bi premagali ta izziv, smo uvedli inkrementalni pristop z uporabo Vsebinsko Naslovljivega Datotečnega Sistema (CAF). Z uporabo tega pristopa CAF pametno preskoči nepotrebno nalaganje datotek, ki so že prisotne v shrambi vsebinskih naslovov (CAS). S tem ne le zmanjšamo čas pakiranja, ampak tudi zmanjšamo čas nalaganja pri delu z velikimi izvršljivimi datotekami.

Za izboljšanje učinkovitosti sistema CAF smo namestili CAS daemon na večini naših strežnikov v podatkovnem centru. Ta daemon je odgovoren za vzdrževanje lokalnih predpomnilnikov, organizacijo omrežja peer-to-peer z drugimi primerki CAS daemona in optimizacijo nalaganja vsebine. S pomočjo tega omrežja lahko neposredno pridobivamo vsebino iz drugih primerkov, kar zmanjšuje zakasnitev in izkoristek pasovne širine za shranjevanje.

Za razliko od tradicionalnih rešitev, kot je Dockerjev OverlayFS, naš pristop daje prednost neposrednemu dostopu do datotek in pametnemu usmerjanju pristnosti. Tako lahko učinkovito upravljamo različne odvisnosti med več izvršljivimi datotekami brez kompleksnosti organizacije plasti. Poleg tega, z uporabo Btrfs kot našega datotečnega sistema, izkoristimo njegove sposobnosti stiskanja in zmožnost neposrednega pisanja stisnjenih podatkov shranjevanja v področja.

Z reševanjem izzivov počasnih gradenj in neučinkovitega pakiranja in distribucije izvršilnih datotek smo omogočili našim ML inženirjem, da delajo bolj učinkovito in dostavljajo vrhunske rešitve. Naša osredotočenost na zmanjšanje gradenj, optimizacijo upravljanja odvisnosti in implementacijo inkrementalne rešitve za pakiranje je prinesla pomembne prihranke časa in izboljšala produktivnost v našem postopku razvoja AI/ML.

Pogosta vprašanja:

V: S kakšnimi izzivi se je ekipa soočala pri razvoju AI/ML?
O: Ekipa se je soočala s počasnimi časi gradenj, neučinkovitostjo pri pakiranju in distribuciji izvršilnih datotek ter kompleksnostjo upravljanja različnih odvisnosti med več izvršljivimi datotekami.

V: Kako je ekipa rešila težave s počasnimi gradnjami?
O: Ekipa je odpravila počasne gradnje s poenostavitvijo grafa gradnje in optimizacijo števila odvisnosti, kar je zmanjšalo potrebo po obsežnih gradnjah in izboljšalo celotno hitrost gradnje.

V: Kako se je ekipa lotila pakiranja in distribucije izvršilnih datotek?
O: Ekipa je uvedla inkrementalni pristop z uporabo Vsebinsko Naslovljivega Datotečnega Sistemas (CAF), ki inteligentno preskoči nepotrebno nalaganje datotek, ki so že prisotne v shrambi vsebinskih naslovov (CAS). S tem se zmanjša čas pakiranja in minimizira čas nalaganja.

V: Kakšen je namen CAS daemona, nameščenega na strežnikih v podatkovnem centru?
O: CAS daemon je odgovoren za vzdrževanje lokalnih predpomnilnikov, organizacijo omrežja peer-to-peer z drugimi primerki CAS daemona in optimizacijo nalaganja vsebine. Omogoča neposredno pridobivanje vsebine iz drugih primerkov, kar zmanjšuje zakasnitev in izkoristek pasovne širine za shranjevanje.

V: Kako ekipa upravlja z odvisnostmi brez kompleksnosti organizacije plasti?
O: Za razliko od tradicionalnih rešitev ekipa daje prednost neposrednemu dostopu do datotek in pametnemu usmerjanju pristnosti namesto rešitev, ki temeljijo na plasti, kot je Dockerjev OverlayFS. Ta pristop omogoča učinkovito upravljanje različnih odvisnosti med več izvršljivimi datotekami.

V: Kateri datotečni sistem uporablja ekipa in kakšne koristi ponuja?
O: Ekipa uporablja datotečni sistem Btrfs, ki omogoča stiskanje podatkov in neposredno pisanje stisnjenih podatkov shranjevanja v področja. To izboljšuje učinkovitost in zmogljivost shranjevanja.

Opisi:

– AI/ML: Kratica za umetno inteligenco/vsako učenje, se nanaša na razvoj in uporabo algoritmov in modelov, ki omogočajo računalnikom izvajanje nalog brez eksplicitnih navodil.
– ML inženirji: Nanaša se na inženirje specializirane za strojno učenje, ki razvijajo, implementirajo in optimizirajo algoritme in modele za strojno učenje.
– Gradnje: Proces rekonstrukcije ali gradnje programske opreme ali kode.
– Pakiranje: Proces priprave programske opreme za distribucijo z združevanjem z ustrezne datoteke in odvisnostmi.
– Vsebinsko Naslovljiv Datotečni Sistem (CAF): Datotečni sistem, ki datoteke prepozna na podlagi njihove vsebine namesto njihovega mesta ali imena, kar omogoča učinkovito shranjevanje in pridobivanje podatkov.
– Shramba z Vsebinskimi Naslovi (CAS): Shramba, kjer se vsebina nanaša in identificira z edinstvenimi identifikatorji, kar omogoča odstranjevanje podvajanj in učinkovito pridobivanje podatkov.
– Odvisnost: Programska komponenta ali knjižnica, od katere druga programska oprema odvisna za pravilno izvajanje.
– Zakasnitev: Časovna zamuda med začetkom zahtevka in prejemom odgovora.
– Pasovna širina: Največja hitrost prenosa podatkov po določeni poti ali omrežju.
– Btrfs: Datotečni sistem za Linux, ki uporablja kopiranje samo ob pisanju in ponuja funkcije kot so snemanje stanja, podpomnilniki, stiskanje in prilagodljivost.

Povezani povezavi:
– Distribuirano Reaktivno Programiranje
– Amazonovo Učenje o Strojni Inteligenci
– Učinkovito Distribuirano Učenje o Strojni Inteligenci: Pogled iz Perspektive Enega Rezalnika

The source of the article is from the blog combopop.com.br

Privacy policy
Contact