2 puntos por GN⁺ 2026-02-14 | Aún no hay comentarios. | Compartir por WhatsApp
  • Se reimplementó el renderizador para Linux sobre wgpu, eliminando la biblioteca gráfica Blade existente
  • Blade provocaba varios problemas en Zed y en apps de terceros, mientras que wgpu, como estándar del ecosistema Rust, ofrece mayor compatibilidad y margen de mejora
  • La nueva implementación resuelve varios problemas, incluido el congelamiento en entornos con NVIDIA y Wayland, y cierra numerosos reportes de errores relacionados
  • Durante la revisión se realizaron optimizaciones de uso de memoria y rendimiento, con una mejora de aproximadamente 20% en el uso de CPU, mientras que el tiempo de GPU se mantiene en niveles similares a los anteriores
  • Con este cambio, la estabilidad gráfica y la mantenibilidad de Zed en Linux mejoran de forma significativa

Cambio del renderizador de Linux a wgpu

  • La complejidad y los errores de la biblioteca gráfica Blade causaban problemas en Zed y en apps basadas en GPUI
    • Se reportaron fallos y congelamientos no solo en Zed, sino también en otras apps de terceros
  • La nueva implementación usa wgpu, la API gráfica estándar del ecosistema Rust
    • Comparte la misma base tecnológica que proyectos importantes como Bevy e Iced, por lo que podrá beneficiarse de futuras mejoras
  • Entre los issues relacionados están #44814, #40481, niri-wm/niri#2335, zortax/zlaunch#15

Debate sobre rendimiento y compatibilidad

  • Algunos desarrolladores señalaron el aumento en el uso de memoria de wgpu
    • En Windows, con una ventana vacía como referencia, se reportó que wgpu usa unos 100MB, mientras que el renderizador gpui anterior usaba unos 10MB
  • En respuesta, se explicó que wgpu incrementa la memoria inicial por la preasignación de buffers, pero que durante el renderizado real la diferencia no es grande
  • En la discusión sobre uso de memoria de GPU, algunos usuarios reportaron un aumento de VRAM (unos 30MB), aunque en otros entornos se confirmó que no había diferencia

Alcance por plataforma

  • En Mac y Windows se mantienen los renderizadores nativos existentes
    • reflectronic mencionó que “los renderizadores nativos de estas plataformas ofrecen mejor rendimiento y compatibilidad”
  • zortax respondió que wgpu soporta varios backends como Vulkan, DirectX12 y ANGLE (OpenGL ES), por lo que en realidad podría ampliar la compatibilidad
  • maddythewisp propuso aprovechar la naturaleza multiplataforma de wgpu para habilitarlo opcionalmente también en Mac y Windows

Optimización y benchmarks

  • reflectronic añadió varios commits de optimización, como reutilización de un solo buffer, creación anticipada de bind groups e integración de buffers globales
  • Según el commit más reciente (f988a34), el tiempo de dibujo en CPU mejora cerca de 20%, mientras que el tiempo de GPU se mantiene similar al anterior
    • La mediana de CPU bajó de 301µs a 238µs
  • También se reportó que el uso de memoria mejoró frente a Zed Stable

Fusión y conclusión

  • Tras la revisión final, reflectronic aprobó el cambio diciendo que “todo está listo”, y se fusionó en la rama main el 13 de febrero de 2026
  • El backend de Blade “ya no se usará en Zed y no está previsto seguir manteniéndolo”
  • Con esta transición, el stack gráfico de Zed en Linux queda unificado sobre wgpu, reforzando a futuro la integración técnica con el ecosistema Rust

Aún no hay comentarios.

Aún no hay comentarios.