Projekti Gentoo prezantoi sistemin e menaxhimit të paketave Portage 3.0

Stabilizuar lanson sistemin e menaxhimit të paketave Portage 3.0, e cila përdoret në distribuimin Gentoo Linux. Kjo degë përfundoi një punë të gjatë për kalimin në Python 3 dhe ndalimin e përkrahjes për Python 2.7.

PĂ«rveç ndalimit tĂ« pĂ«rkrahjes pĂ«r Python 2.7, njĂ« ndryshim tjetĂ«r i rĂ«ndĂ«sishĂ«m ishte pĂ«rfshirja optimizations, e cila lehtĂ«soi pĂ«rshpejtimin e llogaritjeve tĂ« lidhjeve me 50-60%. ËshtĂ« interesante se disa zhvillues propozuan qĂ« tĂ« riprogramohej kodi i zgjidhjes sĂ« lidhjeve nĂ« C/C++ ose Go pĂ«r ta pĂ«rshpejtuar, por problemi u zgjidh me pak pĂ«rpjekje.

NjĂ« analizĂ« e kodit ekzistues tregoi se koha kryesore e llogaritjes Ă«shtĂ« e shpenzuar nĂ« thirrjet e funksioneve use_reduce dhe catpkgsplit me njĂ« grup argumentesh qĂ« pĂ«rsĂ«riten (p.sh., funksioni catpkgsplit Ă«shtĂ« thirrur nga 1 deri nĂ« 5 milion herĂ«). PĂ«r tĂ« усĐșĐŸŃ€uar procesin, u pĂ«rdor caching i rezultateve tĂ« kĂ«tyre funksioneve duke pĂ«rdorur fjalorĂ«. Funksioni lru_cache ishte optimal pĂ«r ruajtjen e cache-it, por ai ishte i disponueshĂ«m vetĂ«m nĂ« versionet e Python, duke filluar nga 3.2. PĂ«r t'u siguruar pĂ«r pajtueshmĂ«rinĂ« me versionet mĂ« tĂ« hershme, u shtua njĂ« zĂ«vendĂ«sim qĂ« zĂ«vendĂ«sonte lru_cache, por vendimi pĂ«r tĂ« ndaluar mbĂ«shtetje pĂ«r Python 2.7 nĂ« Portage 3.0 e thjeshtoi shumĂ« procesin dhe lejoj tĂ« shmangej kjo ndĂ«rmjetĂ«sim.

PĂ«rdorimi i cache-it mundĂ«soi uljen e kohĂ«s sĂ« ekzekutimit tĂ« operacionit «emerge -uDvpU —with-bdeps=y @world» nĂ« laptopin ThinkPad X220 nga 5 minuta 20 sekonda nĂ« 3 minuta 16 sekonda (63%). Testet nĂ« sisteme tĂ« tjera treguan njĂ« rritje tĂ« performancĂ«s jo mĂ« tĂ« ulĂ«t se 48%.

Programuesi që përgatiti ndryshimin gjithashtu përpiqej të realizonte një prototip të kodit të zgjidhjes së varësive në C++ ose Rust, por detyra u tregua tepër e komplikuar, pasi kërkonte portimin e një sasi të madhe kodi, dhe në të njëjtën kohë, ishte e dyshimtë se rezultati i arritur do të ishte i vlefshëm për përpjekjet e investuara.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster