Szybszy Firefox 54 i wreszcie z wieloprocesowością

Nowa wersja przeglądarki Firefox 54 wreszcie otrzymała wieloprocesowość, po ośmiu latach od rozpoczęcia prac na projektem!

Firefox 54.0 (Mozilla)

Firefox 54 został w końcu wyposażony w procesy równoczesnego przetwarzania treści, proces UI i proces przyspieszania GPU. Osiem lat od rozpoczęcia projektu o nazwie Electrolysis (E10S), Mozilla wydała przeglądarkę internetową Firefox 54.0 nazywając ją „najlepszym wydaniem Firefoksa w historii” i chyba jest w tym sporo prawdy (chociaż Firefox 3.5 też był całkiem dobry).

Teoretycznie przejście do wieloprocesowości powinno zwiększyć stabilność i wydajność (jedna obciążająca komputer karta nie powinna spowalniać sprzętu po otwarciu innej). Mozilla poinformowała, że ciężko pracuje nad tym, aby uniknąć zwiększania zużycia pamięci przez przeglądarkę i w rezultacie domyślnie dostajemy tylko cztery procesy.

Najwyraźniej jest to złoty środek pomiędzy użyciem zbyt dużej ilości pamięci RAM a pełnym wykorzystaniem wielordzeniowych procesorów. Domyślnie Google Chrome rozpoczyna nowy proces dla każdej z kart, co jest jednym z powodów tak dużego użycia pamięci przez to oprogramowanie.

Chrome v.s. Firefox 54 - architektura procesów UI
Chrome v.s. Firefox 54 – architektura procesów UI

Zobacz również: Przeglądarka Chrome szybsza o 10-20% niż rok temu

W niektórych testach Firefox 54 rzeczywiście działa nieco szybciej niż wcześniej i zużywa mniej pamięci niż Chrome przy takim samym zestawie otwartych kart. Jeśli po zainstalowaniu Firefoksa 54 nie widzisz w menedżerze zadań więcej niż dwóch procesów Firefoksa, musisz ręcznie zmienić dom.ipc.processCount na liczbę większą niż 1.

Aby uzyskać więcej informacji na temat podejścia Firefoksa do wielu procesów dla zawartości, Ryan Pollock z Mozilli opublikował pouczający artykuł ten temat.

Poniżej mało precyzyjny wykres udostępniony przez Mozillę, który ilustruje porównanie wykorzystania pamięci w 64-bitowym Firefoksie 54 i konkurencyjnych przeglądarkach internetowych (Google Chrome, Safari, Edge i 32-bitowy Firefox):

Porównanie użycia pamięci przez przeglądarki internetowe (czerwiec 2017)
Porównanie użycia pamięci przez przeglądarki internetowe (czerwiec 2017)

Oprócz wieloprocesowości dla treści (zawartości internetowych) Firefox 54 zawiera także nowe interfejsy WebExtension API, działające w wielu przeglądarkach. Na przykład wersja Vue.js w wersji Chrome działa teraz w Firefoksie bez żadnych modyfikacji. W listopadzie, gdy Firefox 57 zostanie wydany, Firefox będzie obsługiwać dodatki, które korzystają z interfejsów WebExtension APIs.

Firefox nadal się rozwija i robi wszystko, aby konkurować na najwyższym poziomie z innymi z branży. Twórcy zapowiedzieli oczywiście, że to nie jest ostatnie słowo i możemy oczekiwać kolejnych nowości i optymalizacji. Ogłoszono także plany zbudowania zupełnie nowego silnika o nazwie Project Quantum, który będzie wykorzystaywał wszystkie możliwości techniczne nowoczesnych urządzeń. Możemy oczekiwać, że nowy silnik pojawi się już pod koniec 2017 roku, zarówno na komputery PC jak i urządzenia mobilne.

Szczegółowe informacje na temat nowości w tym wydaniu przeglądarki znajdziesz na stronie: Version 54.0, first offered to Release channel users on June 13, 2017

źródło: ArsTechnica – Firefox 54 finally goes multiprocess, eight years after work began via Mozilla Blog – The Best Firefox Ever