Распрацоўнікі Ubuntu прыступілі да рашэння праблем з павольным запускам snap-пакета Firefox

Кампанія Canonical прыступіла да рашэння праблем з прадукцыйнасцю snap-пакета з Firefox, які быў прапанаваны па змаўчанні ў Ubuntu 22.04 замест звычайнага deb-пакета. Асноўная незадаволенасць карыстачоў злучана з вельмі павольным запускам Firefox. Напрыклад, на ноўтбуку Dell XPS 13 першы запуск Firefox пасля ўстаноўкі займае 7.6/240 секунд, на ноўтбуку Thinkpad X15 – 400 секунд, а на плаце Raspberry Pi 38 – 0.86 секунд. Паўторныя запускі выконваюцца ўжо за 1.39, 8.11 і XNUMX/XNUMX секунд адпаведна.

У ходзе аналізу праблемы былі выяўлены 4 асноўныя прычыны павольнага запуску, вырашэнню якіх будзе нададзена асноўная ўвага:

  • Высокія накладныя выдаткі пры пошуку файлаў усярэдзіне сціснутай выявы squashfs, якія асабліва прыкметныя на маламагутных сістэмах. Праблему плануецца вырашыць праз групоўку змесціва для мінімізацыі аперацый перасоўвання па выяве падчас запуску.
  • На Raspberry Pi і сістэмах з GPU AMD вялікія затрымкі апынуліся злучаны са збоем пры азначэнні графічнага драйвера і адкатам на ўжыванне праграмнай адмалёўкі c вельмі павольнай кампіляцыяй шэйдараў. Патч для вырашэння праблемы ўжо дададзены ў snapd.
  • Шмат часу марнавалася на капіраванне убудаваных у пакет дапаўненняў у каталог карыстальніка. У snap-пакет было ўбудавана 98 моўных пакетаў, якія ўсё капіраваліся, незалежна ад абранай мовы.
  • Затрымкі таксама ўзнікалі з-за вызначэння ўсіх даступных шрыфтоў, тым піктаграм і канфігурацый шрыфтоў.

Пры запуску Firefox з snap таксама назіраліся асобныя праблемы з прадукцыйнасцю падчас прац, але распрацоўнікамі Ubuntu ужо падрыхтаваны выпраўленні, якія паляпшаюць прадукцыйнасць. Напрыклад, пачынальна з Firefox 100.0 пры зборцы ўключаны аптымізацыі на этапе звязвання (LTO) і на аснове вынікаў прафілявання кода (PGO). Для рашэння праблем з абменам паведамленнямі паміж Firefox і вонкавымі падсістэмамі падрыхтаваны новы XDG Desktop Portal, падтрымка якога знаходзіцца на стадыі рэцэнзавання для ўключэння ў Firefox.

У якасці прычын прасоўвання фармату snap для браўзэраў адзначаецца жаданне спрасціць суправаджэнне і ўніфікаваць распрацоўку для розных версій Ubuntu — пакет deb патрабуе асобнага суправаджэння для ўсіх падтрымліваемых галінак Ubuntu і, адпаведна, зборкі і тэсціравання з улікам розных версій сістэмных кампанентаў, а пакет snap для ўсіх галінак Ubuntu. Больш за тое, прапанаваны ў Ubuntu snap-пакет з Firefox суправаджаюць супрацоўнікі Mozilla, г.зн. ён фармуецца з першых рук без пасярэднікаў. Пастаўка ў фармаце snap таксама дазволіла паскорыць давядзенне новых версій браўзэра да карыстачоў Ubuntu і дала магчымасць запускаць Firefox у ізаляваным асяроддзі, створаным пры дапамозе механізму AppArmor, для дадатковай абароны астатняй сістэмы ад эксплуатацыі ўразлівасцяў у браўзэры.

Крыніца: opennet.ru

Дадаць каментар