Programiści Ubuntu zaczęli rozwiązywać problemy z wolnym uruchamianiem pakietu snap Firefox.

Firma Canonical rozpoczęła rozwiązanie problemów z wydajnością pakietu snap Firefox, który został domyślnie zaproponowany w Ubuntu 22.04 zamiast zwykłego pakietu deb. Główne niezadowolenie użytkowników związane jest z bardzo wolnym uruchamianiem Firefox. Na przykład na laptopie Dell XPS 13 pierwsze uruchomienie Firefox po instalacji zajmuje 7.6 sekundy, na laptopie Thinkpad X240 — 15 sekund, a na płycie Raspberry Pi 400 — 38 sekund. Kolejne uruchomienia są już realizowane w czasie 0.86, 1.39 i 8.11 sekundy odpowiednio.

Podczas analizy problemu zidentyfikowano 4 główne przyczyny wolnego uruchamiania, którym zostanie poświęcona szczególna uwaga:

  • Wysokie koszty podczas wyszukiwania plików wewnątrz skompresowanego obrazu squashfs, które są szczególnie widoczne na słabszych systemach. Problem planowane jest rozwiązanie poprzez grupowanie treści, aby zminimalizować operacje przesuwania w obrębie obrazu w czasie uruchamiania.
  • Na Raspberry Pi i systemach z GPU AMD duże opóźnienia były związane z błędem w określaniu sterownika graficznego i powrotem do korzystania z renderowania oprogramowania z bardzo wolnym kompilowaniem shaderów. Łatka, która rozwiązuje ten problem, została już dodana do snapd.
  • Dużo czasu marnowano na kopiowanie wbudowanych w pakiet dodatków do katalogu użytkownika. W pakiecie snap było 98 pakietów językowych, które wszystkie kopiowały się, niezależnie od wybranego języka.
  • Opóźnienia występowały również z powodu ustalania wszystkich dostępnych czcionek, tematów ikon i konfiguracji czcionek.

Podczas uruchamiania Firefox z pakietu snap zaobserwowano również pewne problemy z wydajnością podczas pracy, ale programiści Ubuntu już przygotowali poprawki, które poprawiają wydajność. Na przykład od wersji Firefox 100.0 w konstrukcji włączono optymalizacje na etapie linkowania (LTO) oraz na podstawie wyników profilowania kodu (PGO). Aby rozwiązać problemy z komunikacją między Firefox a zewnętrznymi podsystemami, przygotowano nowy portal XDG Desktop, którego wsparcie jest obecnie w fazie przeglądu przed włączeniem do Firefox.

Jako powody promowania formatu snap dla przeglądarek wskazuje się chęć uproszczenia wsparcia i ujednolicenia rozwoju dla różnych wersji Ubuntu — pakiet deb wymaga oddzielnego wsparcia dla wszystkich wspieranych gałęzi Ubuntu i odpowiednio budowania oraz testowania z uwzględnieniem różnych wersji komponentów systemowych, natomiast pakiet snap może być tworzony od razu dla wszystkich gałęzi Ubuntu. Co więcej, oferowany w Ubuntu pakiet snap z Firefoxem jest wspierany przez pracowników Mozilla, tzn. jest tworzony bezpośrednio, bez pośredników. Dostarczenie w formacie snap pozwoliło również przyspieszyć wprowadzanie nowych wersji przeglądarki do użytkowników Ubuntu i umożliwiło uruchamianie Firefoxa w izolowanym środowisku stworzonym za pomocą mechanizmu AppArmor, dla dodatkowej ochrony pozostałego systemu przed wykorzystaniem luk w przeglądarce.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster