Браузерный движок WebKit (Safari и Epiphany) переходит на использование для отрисовки 2D-графики библиотеки Skia, применяемой в Google Chrome, Firefox, ChromeOS, Android и Flutter и поддерживающей отрисовку с использованием GPU.
Портирование проведено компанией Igalia в рамках инициативы по оптимизации производительности WebKitGTK для GNOME. В качестве причины миграции упоминается достижение предела в процессе оптимизации производительности 2D-отрисовки с использованием CPU и возникновение необходимости задействовать GPU для дальнейшего повышения производительности.
Попытки добавления в библиотеку Cairo, которая применялась в WebKit, возможности 2D‑отрисовки с использованием GPU не увенчались успехом из‑за архитектурных особенностей решения, а проект написания собственной библиотеки отрисовки был отброшен из‑за трудности в достижении баланса между производительностью и качеством.
Что касается производительности, то начальный порт WebKit на Skia при прохождении тестов MotionMark на ПК показал ускорение отрисовки в два раза, по сравнению со старым кодом, использующим CPU.
В феврале 2024 года ветка WebKit, переведённая на Skia, достигла готовности к передаче в основной состав кодовой базы WebKit. После обсуждения с разработчиками из Google, Sony, Apple и Red Hat было принято решение о переводе WebKit с библиотеки Cairo на Skia, и в настоящее время код для поддержки Skia уже принят в основную ветку WebKit.
Источник: OpenNET.