v148 · WebGPU
Adapter Detection
Request both a core and a compatibility adapter on this device. The results reveal which GPU backends are available and whether compatibility mode is needed to run WebGPU on this hardware.
Feature detection: checking…
Core adapter
requestAdapter({ featureLevel: "core" })
Probing…
| — |
Compatibility adapter
requestAdapter({ featureLevel: "compatibility" })
Probing…
| — |
// Core adapter — requires Vulkan / Metal / D3D12
const coreAdapter = await navigator.gpu.requestAdapter({
featureLevel: "core"
});
// Compatibility adapter — works on OpenGL ES 3.1 / D3D11
// (Origin trial in Chrome 148)
const compatAdapter = await navigator.gpu.requestAdapter({
featureLevel: "compatibility"
});
// Fall back gracefully
const adapter = coreAdapter ?? compatAdapter;
if (!adapter) {
// WebGPU not available on this device at all
}
// Check what you got
const info = await adapter.requestAdapterInfo();
console.log(info.vendor, info.device, info.architecture);
see also
- Feature Limits — core vs compat limit comparison
- Compatibility Rendering — rendering in compat mode
- Compat vs Core Comparison
implementation reference
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗