v139 · Web APIs · Compatibility Demo
Compatibility Demo
Requests WebGPU adapters in both core and compatibility modes and compares what Chrome reports for each, including the feature level and adapter info.
On systems where only OpenGL is available (no Vulkan/Metal/D3D12), compatibility mode may return an adapter while core mode does not. On modern systems with Vulkan, both modes typically return an adapter, but the compatibility mode adapter may have reduced limits.
adapter comparison
core mode — requestAdapter()
statusNot checked
featureLevel—
vendor—
backend—
compatibility mode — requestAdapter({ featureLevel: 'compatibility' })
statusNot checked
featureLevel—
vendor—
backend—
runtime decision: no adapter request yet.
code
// Request adapters in both modes
async function compareAdapters() {
if (!navigator.gpu) {
console.log('WebGPU not supported');
return;
}
// Core mode (default)
const coreAdapter = await navigator.gpu.requestAdapter();
if (coreAdapter) {
console.log('Core:', coreAdapter.featureLevel, coreAdapter.info?.vendor);
}
// Compatibility mode
const compatAdapter = await navigator.gpu.requestAdapter({
featureLevel: 'compatibility',
});
if (compatAdapter) {
console.log('Compat:', compatAdapter.featureLevel, compatAdapter.info?.vendor);
}
}