Esimene stabiilne versioon pÀringul Mold, mida arendab LLVM lld arendaja.

Rui Ueyama, LLVM lld linkija ja chibicc kompilaatori autor, tutvustas uue kĂ”rge jĂ”udlusega linkija Mold esimest stabiilset versioon, mis on mĂ€rkimisvÀÀrselt kiirem kui GNU gold ja LLVM lld objekti failide ĂŒhendamiseks. Projekt on tunnustatud tööstuslikuks kasutamiseks valmis ja vĂ”ib olla kiire, lĂ€bipaistva asendajana GNU linkija jaoks Linuxi sĂŒsteemides. JĂ€rgmise suure vĂ€ljaande plaanides on toeks macOS platvorm, pĂ€rast mida algab Moldi kohandamine Windowsile.

Mold on kirjutatud C++ (C++20) keeles ja levitatakse AGPLv3 litsentsi alusel, mis on ĂŒhilduv GPLv3-ga, kuid mitte GPLv2-ga, kuna nĂ”uab muudatuste avaldamist vĂ”rguteenuste arendamisel. Selline valik on seletatav sooviga saada arendustegevuseks rahastust — autor on valmis mĂŒĂŒma koodi Ă”igusi litsentsi andmiseks vabamatel tingimustel, nĂ€iteks MIT, vĂ”i pakkuma eraldi kommertslitsentsi neile, kellele AGPL ei sobi.

Mold toetab kĂ”iki GNU linkeri vĂ”imalusi ja eristub ÀÀrmiselt kĂ”rge jĂ”udlusega — linkimine toimub kiirusel, mis on vaid kaks korda aeglasem kui failide kopeerimine cp utiliidiga. NĂ€iteks Chrome 96 (koodi suurus 1,89 GB) ehitamisel on 8- tuumalise arvuti puhul GNU gold kasutamisega tĂ€itmine 53 sekundit, LLVM lld — 11,7 sekundit, kuid Mold kulub vaid 2,2 sekundit (26 korda kiiremini kui GNU gold). Clang 13 (3,18 GB) linkimisel on GNU gold jaoks vajalik 64 sekundit, LLVM lld — 5,8 sekundit ja Mold — 2,9 sekundit. Firefox 89 (1,64 GB) linkimisel kulub GNU gold 32,9 sekundit, LLVM lld — 6,8 sekundit ja Mold — 1,4 sekundit.

Esimene stabiilne versioon pÀringul Mold, mida arendab LLVM lld arendaja.

Koodikomponeerimise aja lĂŒhendamine vĂ”imaldab oluliselt suurendada suuremate projektide arendamise mugavust, vĂ€hendades ootamist, mis tekib tĂ€itmisfailide koostamisel vigadeotsimise ja muudatuste testimise kĂ€igus. Moldi loomise pĂ”hjus oli Ă€rritus, mis tulenes vajadusest oodata koostamise lĂ”petamist iga koodimuudatuse jĂ€rel, sama kui ka olemasolevate koostajate madal efektiivsus mitme tuuma sĂŒsteemide peal ning soov katsetada tĂ€iesti erinevat koostamise arhitektuuri, vĂ€ltides samas liiga keeruliste mudelite nagu inkrementaalne koostamine kasutamist.

Moldi kompileerimise kĂ”rge tootlikkus saavutatakse suure arvu eelnevalt koostatud objektifailide abil, kasutades kiiremaid algoritme, CPU saadaval olevate tuumade vahel operatsioonide aktiivset paralleelset töötlemist ja tĂ”husamaid andmestruktuure. NĂ€iteks on Moldis rakendatud intensiivsete arvutuste teostamise tehnika koos failide kopeerimisega, objektifailide ennetav laadimine mĂ€lu, kiirete rippmenĂŒĂŒ plaanide kasutamine sĂŒmbolite lahendamisel, kohalike tabelite skaneerimine eraldi protsessis ja korduvate ĂŒhendavate sektsioonide deduplikatsioon erinevates failides.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster