Itusilẹ iduroṣinṣin akọkọ ti Akole Mold ni idagbasoke nipasẹ LLVM ld

Rui Ueyama, onkọwe ti ọna asopọ LLVM ld ati olupilẹṣẹ chibicc, ṣafihan itusilẹ iduroṣinṣin akọkọ ti ọna asopọ Mold giga-giga tuntun, eyiti o jẹ akiyesi yiyara ju GNU goolu ati awọn alasopọ LLVM lld ni iyara sisopọ awọn faili ohun. Ise agbese na ni a gba pe o ti ṣetan fun imuse iṣelọpọ ati pe o le ṣee lo bi yiyara, rirọpo sihin fun ọna asopọ GNU lori awọn eto Linux. Awọn ero fun itusilẹ pataki ti nbọ pẹlu ipari atilẹyin fun pẹpẹ macOS, lẹhin eyi iṣẹ yoo bẹrẹ lori isọdọtun Mold fun Windows.

Mold ti kọ ni C ++ (C++ 20) ati pe o ni iwe-aṣẹ labẹ AGPLv3, eyiti o ni ibamu pẹlu GPLv3, ṣugbọn ko ni ibamu pẹlu GPLv2, nitori o nilo awọn ayipada ṣiṣi nigbati awọn iṣẹ nẹtiwọọki n dagbasoke. Yiyan yii jẹ alaye nipasẹ ifẹ lati gba igbeowosile idagbasoke - onkọwe jẹ setan lati ta awọn ẹtọ si koodu fun atunkọ labẹ iwe-aṣẹ igbanilaaye, gẹgẹbi MIT, tabi pese iwe-aṣẹ iṣowo lọtọ fun awọn ti ko ni itẹlọrun pẹlu AGPL.

Mimu ṣe atilẹyin fun gbogbo awọn ẹya ti ọna asopọ GNU ati pe o ni iṣẹ ṣiṣe ti o ga pupọ - ọna asopọ ni a ṣe ni iyara kan nikan idaji ni iyara bi didakọ awọn faili nirọrun pẹlu ohun elo cp. Fun apẹẹrẹ, nigba kikọ Chrome 96 (koodu koodu 1.89 GB), o gba to iṣẹju-aaya 8 lati so awọn faili ṣiṣe pẹlu debuginfo lori kọnputa 53-core nipa lilo GNU goolu, LLVM ld - awọn aaya 11.7, ati Mold nikan ni iṣẹju-aaya 2.2 (awọn akoko 26 yiyara ju GNU goolu). Nigbati o ba so Clang 13 (3.18 GB), o gba iṣẹju 64 ni goolu GNU, awọn aaya 5.8 ni LLVM ld, ati awọn aaya 2.9 ni Mold. Nigbati o ba n kọ Firefox 89 (1.64 GB), o gba iṣẹju 32.9 ni goolu GNU, awọn aaya 6.8 ni LLVM ld, ati awọn aaya 1.4 ni Mold.

Itusilẹ iduroṣinṣin akọkọ ti Akole Mold ni idagbasoke nipasẹ LLVM ld

Idinku akoko kikọ le ṣe ilọsiwaju irọrun ti idagbasoke awọn iṣẹ akanṣe nla nipasẹ didin idaduro ninu ilana ti ipilẹṣẹ awọn faili ṣiṣe nigbati n ṣatunṣe aṣiṣe ati awọn ayipada idanwo. Iwuri fun ṣiṣẹda Mold jẹ ibanujẹ ti nini lati duro de sisopo lati pari lẹhin iyipada koodu kọọkan, iṣẹ ti ko dara ti awọn ọna asopọ ti o wa tẹlẹ lori awọn ọna ṣiṣe-ọpọlọpọ, ati ifẹ lati gbiyanju ọna asopọ ọna asopọ ipilẹ ti o yatọ laisi lilo si awọn awoṣe idiju pupọju bii iru. bi afikun sisopọ.

Išẹ giga ti sisopọ faili ti o le ṣiṣẹ lati nọmba nla ti awọn faili ohun ti a pese silẹ ni Mold jẹ aṣeyọri nipasẹ lilo awọn algoridimu yiyara, isọdọkan ti nṣiṣe lọwọ ti awọn iṣẹ laarin awọn ohun kohun Sipiyu ti o wa ati lilo awọn ẹya data daradara siwaju sii. Fun apẹẹrẹ, Mold ṣe imuse awọn ilana fun ṣiṣe awọn iṣiro to lekoko lakoko didakọ awọn faili, iṣaju iṣakojọpọ awọn faili ohun sinu iranti, lilo awọn tabili hash yara fun ipinnu ohun kikọ, ṣiṣayẹwo awọn tabili iṣipopada ni okun lọtọ, ati yọkuro awọn apakan ti a dapọ ti o tun ṣe kọja awọn faili oriṣiriṣi.

orisun: opennet.ru

Fi ọrọìwòye kun