Företaget Canonical har pÄbörjat arbetet med att lösa prestandaproblemen med snap-paketet av Firefox, som föreslogs som standard i Ubuntu 22.04 istÀllet för det vanliga deb-paketet. AnvÀndarnas frÀmsta klagan rör den mycket lÄngsamma starten av Firefox. Till exempel tar den första starten av Firefox efter installation pÄ en Dell XPS 13 7,6 sekunder, pÄ en Thinkpad X240 15 sekunder och pÄ Raspberry Pi 400 38 sekunder. à terkommande starter sker pÄ 0,86, 1,39 och 8,11 sekunder respektive.
Under analysen av problemet identifierades fyra huvudorsaker till den lÄngsamma starten, vilka kommer att prioriteras i lösningen:
- Höga overhead-kostnader vid sökning av filer inom den komprimerade squashfs-bilden, vilket Àr sÀrskilt mÀrkbart pÄ lÄgteknologiska system. Problemet planeras att lösas genom gruppering av innehÄllet för att minimera flyttoperationer inom bilden under uppstart.
- PÄ Raspberry Pi och system med AMD GPU var stora fördröjningar relaterade till misslyckanden vid identifiering av grafiska drivrutiner, vilket ledde till fallback pÄ programvaru-rendering med mycket lÄngsam shader-kompilering. En patch för att lösa problemet har redan lagts till i snapd.
- Mycket tid lades pÄ att kopiera de inbyggda tillÀggen i paketet till anvÀndarkatalogen. Snap-paketet inkluderade 98 sprÄkpaket, som alla kopierades, oavsett valt sprÄk.
- Fördröjningar uppstod ocksÄ pÄ grund av identifiering av alla tillgÀngliga typsnitt, teman, ikoner och typsnittsconfigurations.
Vid starten av Firefox frÄn snap observerades ocksÄ isolerade prestandaproblem under körning, men utvecklarna av Ubuntu har redan förberett fixar som förbÀttrar prestandan. Till exempel, frÄn och med Firefox 100.0 Àr optimeringar vid lÀnkning (LTO) och baserat pÄ resultat av kodprofilering (PGO) inkluderade i bygget. För att lösa problemen med meddelandeutbyte mellan Firefox och externa subsystem har en ny XDG Desktop Portal förberetts, vars stöd Àr under granskning för inkludering i Firefox.
Som orsaker till att frĂ€mja snap-formatet för webblĂ€sare nĂ€mns önskan att förenkla underhĂ„ll och standardisera utvecklingen för olika versioner av Ubuntu â deb-paketet krĂ€ver separat underhĂ„ll för alla stödja versioner av Ubuntu, och dĂ€rmed byggande och testande med hĂ€nsyn till olika versioner av systemkomponenter, medan snap-paketet kan skapas för alla versioner av Ubuntu samtidigt. Dessutom underhĂ„lls snap-paketet med Firefox i Ubuntu av anstĂ€llda pĂ„ Mozilla, vilket innebĂ€r att det kommer direkt frĂ„n kĂ€llan utan mellanhĂ€nder. Leveransen i snap-format har ocksĂ„ möjliggjort snabbare distribution av nya versioner av webblĂ€saren till Ubuntu-anvĂ€ndare och gett möjlighet att köra Firefox i en isolerad miljö, skapad med hjĂ€lp av AppArmor-mekanismen, för ytterligare skydd av resten av systemet frĂ„n utnyttjande av sĂ„rbarheter i webblĂ€saren.
KĂ€lla: opennet.ru
