Firma Google podsumowała optymalizacje w Chrome, wprowadzone od sierpnia ubiegłego roku. Zmiany pozwoliły na przyspieszenie testu Speedometer 3 o 22% (z 42,84 wzrosło do 52,35 punktów) i osiągnięcie najlepszych wyników spośród wszystkich przeglądarek. Wspomniano, że uzyskany wzrost wydajności pozwoli na zaoszczędzenie 58 milionów godzin oczekiwania na ładowanie stron przez wszystkich użytkowników przeglądarki, jeśli każdy użytkownik korzysta z Chrome przez zaledwie 10 minut dziennie. Co ciekawe, od kwietnia 2022 roku do sierpnia 2024 roku wydajność w teście Speedometer 3 w Chrome wzrosła o 94% (Chrome 101 osiągał około 22 punkty, a Chrome 128 - 42,84 punkty).


Wśród zmian, które przyczyniły się do poprawy wydajności przeglądarki, wymieniono:
- Optymalizację umiejscowienia w pamięci wewnętrznych struktur związanych z DOM, CSS, układami stron oraz renderowaniem;
- Zachowywanie tylko niezbędnych stanów w silniku Blink;
- Zwiększenie efektywności wykorzystania pamięci podręcznej CPU;
- Optymalizację działania zbieracza śmieci Oilpan;
- Udoskonalenie operacji ze stringami oraz przejście na algorytm haszowania rapidhash w procesie renderowania;
- Zastosowanie optymalnych algorytmów haszowania, filtrowania i weryfikacji w różnych strukturach danych;
- Przyspieszenie operacji kompozycji glifów (shaping) przy wyświetlaniu tekstu.
Zbiór testowy Speedometer 3.0 został przygotowany wspólnie przez firmy Mozilla, Google, Microsoft oraz Apple i ma na celu ocenę opóźnień podczas symulacji pracy użytkownika z typowymi aplikacjami webowymi. W testach ocenia się wydajność frameworków Angular, Backbone, jQuery, Lit, Preact, React, React+Redux, Svelte oraz Vue, renderowanie przy użyciu elementu Canvas, generowanie SVG, przetwarzanie złożonych CSS, pracę z bardzo dużymi drzewami DOM oraz wykorzystanie metod stosowanych przy edytowaniu treści w trybie WYSIWYG i przy pracy z serwisami informacyjnymi. Podczas testowania mierzona jest prędkość pracy z notatkami w różnych implementacjach frameworka TodoMVC, sprawdzane jest przetwarzanie tekstu w edytorach WYSIWYG CodeMirror i TipTap, wykonywane są operacje z diagramami przy użyciu bibliotek Observable Plot, chart.js oraz react-stockcharts, symulowane jest interakcja z treściami na stronach korzystających z frameworków webowych Next.js i Nuxt.
Źródło: opennet.ru
