HTTP/2 301
content-length: 162
content-type: text/html
date: Wed, 15 Oct 2025 04:58:21 GMT
location: https://developer.mozilla.org/en-US/docs/Web/API/GPUDevice/createQuerySet
server: nginx
strict-transport-security: max-age=60; includeSubDomains
via: 1.1 google
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
HTTP/2 200
content-type: text/html
x-guploader-uploadid: AAwnv3Iw7qVgVSmAwoff_f-kaFvLlxYihm3V23CrPtCw4XWCSfmzEdWrHnVs1RUhD1fcH0NLPayFnZc
cache-control: public, max-age=3600
expires: Wed, 15 Oct 2025 05:58:22 GMT
last-modified: Tue, 14 Oct 2025 01:05:38 GMT
etag: W/"7951fb4b529e92cee5a1d77e0003ba11"
x-goog-generation: 1760403938328787
x-goog-metageneration: 1
x-goog-stored-content-encoding: identity
x-goog-stored-content-length: 142785
x-goog-meta-goog-reserved-file-mtime: 1760402412
x-goog-hash: crc32c=qzFywg==, md5=eVH7S1Keks7lodd+AAO6EQ==
x-goog-storage-class: STANDARD
accept-ranges: none
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
alt-svc: clear
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
strict-transport-security: max-age=63072000
content-security-policy: default-src 'self'; script-src 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://www.googletagmanager.com/gtag/js assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; script-src-elem 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://www.googletagmanager.com/gtag/js assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; style-src 'report-sample' 'self' 'unsafe-inline'; object-src 'none'; base-uri 'self'; connect-src 'self' developer.allizom.org bcd.developer.allizom.org bcd.developer.mozilla.org updates.developer.allizom.org updates.developer.mozilla.org https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com https://incoming.telemetry.mozilla.org https://observatory-api.mdn.allizom.net https://observatory-api.mdn.mozilla.net https://api.github.com/search/issues stats.g.doubleclick.net https://api.stripe.com; font-src 'self'; frame-src 'self' interactive-examples.mdn.mozilla.net interactive-examples.mdn.allizom.net mdn.github.io live-samples.mdn.mozilla.net live-samples.mdn.allizom.net *.mdnplay.dev *.mdnyalp.dev *.play.test.mdn.allizom.net https://v2.scrimba.com https://scrimba.com jsfiddle.net www.youtube-nocookie.com codepen.io survey.alchemer.com https://js.stripe.com; img-src 'self' data: *.githubusercontent.com *.googleusercontent.com *.gravatar.com mozillausercontent.com firefoxusercontent.com profile.stage.mozaws.net profile.accounts.firefox.com developer.mozilla.org mdn.dev interactive-examples.mdn.mozilla.net interactive-examples.mdn.allizom.net wikipedia.org upload.wikimedia.org https://mdn.github.io/shared-assets/ https://mdn.dev/ https://*.google-analytics.com https://*.googletagmanager.com www.gstatic.com; manifest-src 'self'; media-src 'self' archive.org videos.cdn.mozilla.net https://mdn.github.io/shared-assets/; child-src 'self'; worker-src 'self';
x-frame-options: DENY
origin-trial: AxVILwizhbMjxFeHOn1P3R8niO1RJY/smaK4B4d1rLzc1gTaxtXMSaTi+FoigYgCw40uFRDwFcEAeqDR+vVLOW4AAABfeyJvcmlnaW4iOiJodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZyIsImZlYXR1cmUiOiJQcml2YXRlQXR0cmlidXRpb25WMiIsImV4cGlyeSI6MTc0MjA3OTYwMH0=
x-cloud-trace-context: b96634bb9edaccde71101c16999f3cba
date: Wed, 15 Oct 2025 04:58:23 GMT
server: Google Frontend
via: 1.1 google
vary: Accept-Encoding
content-encoding: gzip
x-cache: miss
GPUDevice: createQuerySet() method - Web APIs | MDN
createQuerySet(descriptor)
descriptor
An object containing the following properties:
count
A number specifying the number of queries to be managed by the resulting GPUQuerySet
.
label
Optional
A string providing a label that can be used to identify the object, for example in GPUError
messages or console warnings.
type
An enumerated value specifying the type of queries to be managed by the resulting GPUQuerySet
. Possible values are:
"occlusion"
Occlusion queries are available on render passes to query the number of fragment samples that pass all the per-fragment tests for a set of drawing commands (including scissor, sample mask, alpha to coverage, stencil, and depth tests). To run an occlusion query, an appropriate GPUQuerySet
must be provided as the value of the occlusionQuerySet
descriptor property when invoking GPUCommandEncoder.beginRenderPass()
to run a render pass.
"timestamp"
Timestamp queries allow applications to write timestamps to a GPUQuerySet
. To run a timestamp query, appropriate GPUQuerySet
s must be provided inside the value of the timestampWrites
descriptor property when invoking GPUCommandEncoder.beginRenderPass()
to run a render pass, or GPUCommandEncoder.beginComputePass()
to run a compute pass. Alternatively, you can run a single timestamp query at any time by invoking GPUCommandEncoder.writeTimeStamp()
with an appropriate GPUQuerySet
as a parameter.
Note:
The timestamp-query
feature needs to be enabled to use timestamp queries.
A GPUQuerySet
object instance.
The following criteria must be met when calling createQuerySet()
, otherwise a GPUValidationError
is generated and an invalid GPUQuerySet
object is returned:
count
is less than or equal to 4096.
The following snippet creates a GPUQuerySet
that holds 32 occlusion query results:
const querySet = device.createQuerySet({
type: "occlusion",
count: 32,
});