WebKit cambia a usar la biblioteca Skia para renderizar gráficos 2D

El motor de navegador WebKit, desarrollado por Apple y utilizado en navegadores como Safari y Epiphany (GNOME Web), pasa a utilizar la biblioteca Skia para la renderización de gráficos 2D, que se utiliza en Google Chrome, ChromeOS, Android y Flutter, y que soporta renderización usando GPU. La portación fue realizada por Igalia como parte de una iniciativa para optimizar el rendimiento de WebKitGTK para GNOME. La razón de la migración menciona haber alcanzado un límite en el proceso de optimización del rendimiento en la renderización 2D usando CPU, y la necesidad de utilizar GPU para seguir mejorando el rendimiento.

Los intentos de agregar a la biblioteca Cairo, que se utilizaba en WebKit, la capacidad de renderización 2D usando GPU no tuvieron éxito debido a las características arquitectónicas de dicha biblioteca, y el proyecto de crear una biblioteca de renderización propia fue descartado debido a la dificultad de lograr un balance entre rendimiento y calidad de impresión. Al final, los desarrolladores de Igalia regresaron a la idea de usar la biblioteca Skia, que era la solución óptima, pero que fue rechazada inicialmente por la falta de una API estable, problemas al ser utilizada como dependencia externa y la necesidad de mantener un módulo externo en WebKit.

La decisión de trasladar WebKit a la biblioteca Skia fue facilitada por el hecho de que los inconvenientes asociados con el cambio de dependencias superaron las ventajas, que se traducían no solo en un aumento en el rendimiento de renderización, sino también en simplificación de la base de código y expansión de las posibilidades para desarrollar nueva funcionalidad. En términos de rendimiento, la portación inicial de WebKit a Skia, al pasar las pruebas de MotionMark en PC, mostró una aceleración de la renderización en un 100% en comparación con el antiguo código que usaba CPU.

En febrero de 2024, la rama de WebKit que se trasladó a Skia alcanzó la preparación para ser integrada en la base de código principal de WebKit. Después de discutir con desarrolladores de Google, Sony, Apple y Red Hat, se tomó la decisión de migrar WebKit de la biblioteca Cairo a Skia, y actualmente el código para soportar Skia ya ha sido aceptado en la rama principal de WebKit.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster