W3cubDocs

/Web APIs

GPUAdapterInfo

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Web Workers.

The GPUAdapterInfo interface of the WebGPU API contains identifying information about a GPUAdapter.

An adapter's GPUAdapterInfo can be retrieved using the GPUAdapter.info property of the adapter itself, or the GPUDevice.adapterInfo property of a device that originated from the adapter.

This object allows developers to access specific details about the user's GPU so that they can preemptively apply workarounds for GPU-specific bugs, or provide different codepaths to better suit different GPU architectures. Providing such information does present a security risk — it could be used for fingerprinting — therefore the information shared is kept at a minimum, and different browser vendors are likely to share different information types and granularities.

Instance properties

architecture Read only

The name of the family or class of GPUs the adapter belongs to. Returns an empty string if it is not available.

description Read only

A human-readable string describing the adapter. Returns an empty string if it is not available.

device Read only

A vendor-specific identifier for the adapter. Returns an empty string if it is not available.

vendor Read only

The name of the adapter vendor. Returns an empty string if it is not available.

subgroupMaxSize Read only

The maximum supported subgroup size for the GPUAdapter.

subgroupMinSize Read only

The minimum supported subgroup size for the GPUAdapter.

Examples

>

Access GPUAdapterInfo via GPUAdapter.info

const adapter = await navigator.gpu.requestAdapter();
if (!adapter) {
  throw Error("Couldn't request WebGPU adapter.");
}

const adapterInfo = adapter.info;
console.log(adapterInfo.vendor);
console.log(adapterInfo.architecture);

Access GPUAdapterInfo via GPUDevice.adapterInfo

const adapter = await navigator.gpu.requestAdapter();
if (!adapter) {
  throw Error("Couldn't request WebGPU adapter.");
}

const myDevice = await adapter.requestDevice();

function optimizeForGpuDevice(device) {
  if (device.adapterInfo.vendor === "amd") {
    // Use AMD-specific optimizations
  } else if (device.adapterInfo.architecture.includes("turing")) {
    // Optimize for NVIDIA Turing architecture
  }
}

optimizeForGpuDevice(myDevice);

Specifications

Specification
WebGPU>
# gpuadapterinfo>

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet WebView Android WebView on iOS
GPUAdapterInfo
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
99Currently supported on ChromeOS, macOS, and Windows only.
26 121 No 81 26 25.0 121 26
architecture
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
99Currently supported on ChromeOS, macOS, and Windows only.
26 121 No 81 26 25.0 121 26
description
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
99Currently supported on ChromeOS, macOS, and Windows only.
26 121 No 81 26 25.0 121 26
device
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
99Currently supported on ChromeOS, macOS, and Windows only.
26 121 No 81 26 25.0 121 26
isFallbackAdapter 136 136
141Currently supported on Windows only, in all contexts except for service workers.
121 No 136 No 90 No No 136 No
subgroupMaxSize
134Currently supported on ChromeOS, macOS, and Windows only.
134Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
119Currently supported on ChromeOS, macOS, and Windows only.
No
134Currently supported on ChromeOS, macOS, and Windows only.
No
88Currently supported on ChromeOS, macOS, and Windows only.
No No
134Currently supported on ChromeOS, macOS, and Windows only.
No
subgroupMinSize
134Currently supported on ChromeOS, macOS, and Windows only.
134Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
119Currently supported on ChromeOS, macOS, and Windows only.
No
134Currently supported on ChromeOS, macOS, and Windows only.
No
88Currently supported on ChromeOS, macOS, and Windows only.
No No
134Currently supported on ChromeOS, macOS, and Windows only.
No
vendor
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
141Currently supported on Windows only, in all contexts except for service workers.
99Currently supported on ChromeOS, macOS, and Windows only.
26 121 No 81 26 25.0 121 26

See also

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/GPUAdapterInfo