2 points par GN⁺ 2026-02-14 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Le renderer pour Linux a été réimplémenté sur la base de wgpu, supprimant l’ancienne bibliothèque graphique Blade
  • Blade provoquait plusieurs problèmes pour les utilisateurs de Zed et les applications tierces ; wgpu, standard de l’écosystème Rust, offre une compatibilité plus large et davantage de possibilités d’amélioration
  • La nouvelle implémentation résout plusieurs problèmes, dont les freezes sur NVIDIA et sous Wayland, et clôt de nombreux rapports de bug associés
  • Pendant la revue, des optimisations de l’usage mémoire et des performances ont été effectuées, avec une amélioration d’environ 20 % de l’utilisation CPU, tandis que le temps GPU reste comparable à l’existant
  • Ce changement améliore fortement la stabilité graphique et la maintenabilité de Zed sur Linux

Passage du renderer Linux à wgpu

  • Des problèmes survenaient dans Zed et les applications basées sur GPUI en raison de la complexité et des erreurs de la bibliothèque graphique Blade
    • Des crashs et freezes ont été signalés non seulement par les utilisateurs de Zed, mais aussi dans d’autres applications tierces
  • La nouvelle implémentation utilise wgpu, l’API graphique standard de l’écosystème Rust
    • Elle repose sur la même base technologique que des projets majeurs comme Bevy et Iced, ce qui permettra de profiter des améliorations futures
  • Parmi les issues liées, on trouve #44814, #40481, niri-wm/niri#2335, zortax/zlaunch#15

Performances et compatibilité

  • Certains développeurs ont signalé une hausse de l’utilisation mémoire avec wgpu
    • Sous Windows, pour une fenêtre vide, wgpu utiliserait environ 100MB, contre environ 10MB pour l’ancien renderer gpui
  • En réponse, il a été expliqué que wgpu présente une hausse initiale de mémoire due à la préallocation des buffers, mais que l’écart est faible lors du rendu réel
  • Dans les discussions sur l’utilisation de la mémoire GPU, certains utilisateurs ont signalé une augmentation de la VRAM (environ 30MB), tandis que d’autres n’ont constaté aucune différence selon leur environnement

Portée selon les plateformes

  • Sur Mac et Windows, le renderer natif existant est conservé
    • reflectronic a indiqué que « les renderers natifs sur ces plateformes offrent de meilleures performances et une meilleure compatibilité »
  • zortax a rétorqué que wgpu prend en charge divers backends comme Vulkan, DirectX12 et ANGLE (OpenGL ES), ce qui pourrait au contraire élargir la compatibilité
  • maddythewisp a proposé de tirer parti du caractère cross-platform de wgpu pour l’activer de manière optionnelle aussi sur Mac et Windows

Optimisations et benchmarks

  • reflectronic a ajouté plusieurs commits d’optimisation, notamment la réutilisation d’un buffer unique, la précréation des bind groups et l’unification des buffers globaux
  • Sur la base du dernier commit (f988a34), le temps CPU de draw s’améliore d’environ 20 %, tandis que le temps GPU reste similaire à l’existant
    • La médiane CPU passe d’environ 301µs à 238µs
  • L’utilisation mémoire est également annoncée en amélioration par rapport à Zed Stable

Fusion et conclusion

  • Après la revue finale, reflectronic a validé que « tout était prêt », et le changement a été fusionné dans la branche main le 13 février 2026
  • Le backend Blade « n’est plus utilisé dans Zed et ne sera plus maintenu »
  • Avec cette transition, la stack graphique Linux de Zed est unifiée autour de wgpu, renforçant à l’avenir les liens techniques avec l’écosystème Rust

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.