Microsoft waxay furtay koodka nidaamka qoondaynta xusuusta mimalloc

Microsoft waxay furtay maktabad hoos timaada shatiga MIT mmalloc laga bilaabo hirgelinta nidaamka qoondaynta xusuusta asal ahaan loo abuuray qaybaha runtime ee luqadaha Koka ΠΈ Lean. Mimalloc waxaa loo habeeyey si loogu isticmaalo codsiyada caadiga ah iyada oo aan la beddelin koodka waxayna u dhaqmi kartaa beddelka hufan ee shaqada malloc. Taageeradu waxay ka shaqeeyaan Windows, macOS, Linux, BSD iyo nidaamyada kale ee Unix u eg.

Tilmaamaha ugu muhiimsan ee mimalloc waa fulintiisa is haysta (in ka yar 3500 khadadka code) iyo waxqabad aad u sarreeya. IN baaritaanno la sameeyay mimalloc ayaa ka sarre maray dhammaan maktabadaha qoondaynta xusuusta ee tartamaya, oo ay ku jiraan jemalloc, tcmalloc, snmalloc, rpmalloc ΠΈ kaydin.

Si loo qiimeeyo waxqabadka, qayb ka mid ah kuwa jira imtixaanada caadiga ah Imtixaanada qaar, mimalloc ayaa marar badan ka dhakhso badan hababka kale; tusaale ahaan, tijaabada guuritaanka shayga ee u dhexeeya dunta kala duwan, mimalloc waxay soo baxday in ka badan 2.5 jeer ka badan tcmalloc iyo jemalloc. Isla mar ahaantaana, inta badan imtixaanada, isticmaalka xusuusta hoose ayaa sidoo kale lagu arkay, xaaladaha qaarkood, isticmaalka xusuusta waxaa lagu dhimi karaa 25%.

Microsoft waxay furtay koodka nidaamka qoondaynta xusuusta mimalloc

Waxqabadka sare waxaa lagu gaaraa inta badan iyadoo la isticmaalayo shaandheynta liiska bilaashka ah. Halkii laga heli lahaa liis weyn, mimalloc waxay isticmaashaa liisyo yaryar oo taxane ah, kuwaas oo mid kastaa uu ku xidhan yahay bogga xusuusta. Habkani waxa uu yareeyaa kala qaybsanaanta waxana uu kordhiyaa xogta degaanka ee xusuusta. Bogga xusuusta waa qaybo la isku daray oo cabbir isku mid ah. Nidaamyada 64-bit, cabbirka bogga waa caadi ahaan 64 KB. Haddii aysan jirin baloogyo la haysto oo ku hadhay bogga, si buuxda ayaa loo xoreeyay oo xusuusta ayaa lagu soo celiyay nidaamka hawlgalka, taas oo yaraynaysa kharashka xusuusta iyo jajabinta barnaamijyada muddada dheer.

Maktabadu waxa lagu dari karaa marxaladda isku xidhka ama waxa lagu shubi karaa barnaamij horeba la isugu keenay ("LD_PRELOAD=/usr/bin/libmimalloc.so myprogram"). Maktabadu waxay kaloo bixisaa API Isku dhafka shaqada ee wakhtiga runtime iyo xakamaynta habdhaqanka wanaagsan, tusaale ahaan, isku xidhka kuwa gacanta ku haya xusuusta caajiska ah iyo kordhinta xisaabiyeyaasha tixraaca. Waa suurtogal in la abuuro oo la isticmaalo dhowr "tuulo" codsiga qaybinta meelo kala duwan oo xusuusta ah. Waxa kale oo suurtogal ah in gebi ahaanba la xoreeyo tuubada, iyada oo aan la marin oo si gooni ah loo sii daayo walxaha lagu dhejiyay.

Waxaa suurtogal ah in la dhiso maktabadda hab badbaado leh, kaas oo boggaga gaarka ah ee hubinta xusuusta (boggaga-ilaaliyaha) lagu beddelayo xuduudaha xannibaadda, iyo kala-soocidda qaybinta block iyo sirta liisaska blocks la sii daayay ayaa la isticmaalaa. Tallaabooyinka noocan oo kale ah ayaa suurtogal ka dhigaya in la xannibo farsamooyinka caadiga ah ee ka faa'iidaysiga qulqulka kaydka ku salaysan. Markaad awood siiso Habka Badbaadada ah, wax qabadku wuxuu hoos u dhacayaa qiyaastii 3%.

Waxaa ka mid ah sifooyinka mimalloc, waxaa sidoo kale la xusay in aysan u nuglayn dhibaatooyinka bararka sababtoo ah kala qaybsanaan weyn. Xaaladda ugu xun, isticmaalka xusuusta ayaa kordhay 0.2% metadata wuxuuna gaari karaa 16.7% xusuusta la qaybiyay. Si looga fogaado isku dhacyada marka la helayo ilaha, mimalloc waxay isticmaashaa oo kaliya hawlgallada atomiga.

Source: opennet.ru

Add a comment