Reducir la sobrecarga de capas en LBSE, el motor SVG por capas de WebKit

Fuentes: Reducing layer overhead in LBSE

El LBSE (Layer Based SVG Engine) de WebKit nació con una idea central: que SVG dejara de funcionar como una isla de código aparte y reutilizara la misma maquinaria de capas que ya empleaban HTML y CSS. Así, SVG heredaría de golpe la aceleración por GPU, el compositing acelerado y las futuras mejoras del motor principal, en lugar de tener que reimplementarlas por separado. El problema es que la maquinaria compartida es generalista, mientras que el motor SVG clásico llevaba dos décadas de ajustes muy afinados. El equipo de Igalia retomó en 2026, con financiación puntual, el trabajo interrumpido en 2024 para que LBSE demuestre que es competitivo antes de poder hablar de ganancias.

En sus primeras versiones, LBSE recurrió a un atajo: cada elemento SVG recibía su propia RenderLayer. Eso facilitó la integración con el árbol de capas existente y garantizó el orden de pintado, pero resultaba demasiado costoso en memoria y rendimiento, algo que sus autores siempre asumieron como provisional.

Tras un paréntesis de más de un año, el trabajo se reanudó a principios de 2026. Primero hubo una fase de corrección: se repararon regresiones introducidas durante el periodo sin mantenimiento, fallos de renderizado de texto,崩溃 en getBBox sobre elementos