zed-industries/zed · error
Failed to create wgpu device: {e}
Error message
Failed to create wgpu device: {e} What it means
Raised in `WgpuContext::create_device` when `adapter.request_device` fails: the adapter cannot provide a logical device with the requested features/limits. Typical causes are required_features not supported by the driver, required_limits exceeding adapter.limits(), or the device being lost during creation.
Source
Thrown at crates/gpui_wgpu/src/wgpu_context.rs:279
.using_resolution(adapter.limits())
.using_alignment(adapter.limits())
};
#[cfg(not(target_family = "wasm"))]
let required_limits = wgpu::Limits::downlevel_defaults()
.using_resolution(adapter.limits())
.using_alignment(adapter.limits());
let (device, queue) = adapter
.request_device(&wgpu::DeviceDescriptor {
label: Some("gpui_device"),
required_features,
required_limits,
memory_hints: wgpu::MemoryHints::MemoryUsage,
trace: wgpu::Trace::Off,
experimental_features: wgpu::ExperimentalFeatures::disabled(),
})
.await
.map_err(|e| anyhow::anyhow!("Failed to create wgpu device: {e}"))?;
Ok((
device,
queue,
dual_source_blending,
color_atlas_texture_format,
))
}
#[cfg(not(target_family = "wasm"))]
pub fn instance(display: Box<dyn wgpu::wgt::WgpuHasDisplayHandle>) -> wgpu::Instance {
wgpu::Instance::new(wgpu::InstanceDescriptor {
backends: wgpu::Backends::VULKAN | wgpu::Backends::GL,
flags: wgpu::InstanceFlags::default(),
backend_options: wgpu::BackendOptions::default(),
memory_budget_thresholds: wgpu::MemoryBudgetThresholds::default(),
display: Some(display),
})View on GitHub (pinned to f4178619ac)
Solutions
- Derive required_limits from adapter.limits() (as this code already does) and avoid requesting features the adapter does not expose.
- Call adapter.features() and intersect with desired features before requesting.
- Retry after a device-lost event; a fresh adapter/device request may succeed.
- Update GPU drivers or fall back to software/less-capable backends.
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at crates/gpui_wgpu/src/wgpu_context.rs:279 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20).
Data as JSON: /api/errors/1bf9d245dd4d09f8.
Report an issue: GitHub.