- Linux용 렌더러를 wgpu 기반으로 재구현하여 기존 Blade 그래픽스 라이브러리를 제거
- 기존 Blade는 Zed 사용자와 서드파티 앱에서 여러 문제를 유발했으며, wgpu는 Rust 생태계의 표준으로 더 넓은 호환성과 개선 가능성 제공
- 새 구현은 NVIDIA 및 Wayland 환경에서의 프리징 문제 등 여러 이슈를 해결하며, 관련 버그 리포트 다수를 종결
- 리뷰 과정에서 메모리 사용량과 성능 최적화가 진행되어 CPU 사용률 약 20% 개선, GPU 시간은 기존과 유사한 수준 유지
- 이번 변경으로 Zed의 Linux 그래픽스 안정성과 유지보수성이 크게 향상됨
Linux 렌더러의 wgpu 전환
- 기존 Blade 그래픽스 라이브러리의 복잡성과 오류로 인해 Zed 및 GPUI 기반 앱에서 문제가 발생
- Zed 사용자뿐 아니라 다른 3rd-party 앱에서도 충돌과 프리징 현상 보고
- 새 구현은 Rust 생태계의 표준 그래픽스 API인 wgpu를 사용
- Bevy, Iced 등 주요 프로젝트와 동일한 기술 기반으로 향후 개선 혜택 공유 가능
- 관련 이슈로는 #44814, #40481, niri-wm/niri#2335, zortax/zlaunch#15 등이 포함
성능 및 호환성 논의
- 일부 개발자는 wgpu의 메모리 사용량 증가를 지적
- Windows 환경에서 빈 창 기준 wgpu는 약 100MB, 기존 gpui 렌더러는 약 10MB 사용 보고
- 이에 대해 wgpu는 버퍼 사전 할당으로 인한 초기 메모리 증가가 있으나, 실제 렌더링 시 차이는 크지 않다고 설명
- GPU 메모리 사용량 관련 논의에서 일부 사용자는 VRAM 증가(약 30MB) 를 보고했으나, 다른 환경에서는 차이 없음 확인
플랫폼별 적용 범위
- Mac과 Windows에서는 기존 네이티브 렌더러 유지
- reflectronic은 “이들 플랫폼의 네이티브 렌더러가 더 나은 성능과 호환성을 제공”한다고 언급
- zortax는 wgpu가 Vulkan, DirectX12, ANGLE(OpenGL ES) 등 다양한 백엔드를 지원해 오히려 호환성을 넓힐 수 있다고 반론
- maddythewisp는 wgpu의 크로스플랫폼 특성을 활용해 Mac·Windows에서도 선택적으로 활성화할 수 있음을 제안
최적화 및 벤치마크
- reflectronic이 단일 버퍼 재사용, 바인드 그룹 사전 생성, 글로벌 버퍼 통합 등 최적화 커밋 다수 추가
- 최신 커밋(f988a34) 기준으로 CPU 드로우 시간 약 20% 개선, GPU 시간은 기존과 유사
- CPU median 301µs → 238µs 수준으로 감소
- 메모리 사용량도 Zed Stable 대비 개선된 것으로 보고
병합 및 결론
- reflectronic이 최종 리뷰 후 “모든 준비가 완료되었다”고 승인, 2026년 2월 13일 main 브랜치에 병합
- Blade 백엔드는 “더 이상 Zed에서 사용하지 않으며 유지보수하지 않을 예정”
- 이번 전환으로 Zed의 Linux 그래픽스 스택이 wgpu 기반으로 통합, 향후 Rust 생태계와의 기술적 연계 강화