GPUComputePipeline: label property

Limited availability

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

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

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 label property of the GPUComputePipeline interface provides a label that can be used to identify the object, for example in GPUError messages or console warnings.

This can be set by providing a label property in the descriptor object passed into the originating GPUDevice.createComputePipeline() or GPUDevice.createComputePipelineAsync() call, or you can get and set it directly on the GPUComputePipeline object.

Value

A string. If this has not been previously set as described above, it will be an empty string.

Examples

Setting and getting a label via GPUComputePipeline.label:

js
// ...

const computePipeline = device.createComputePipeline({
  layout: device.createPipelineLayout({
    bindGroupLayouts: [bindGroupLayout],
  }),
  compute: {
    module: shaderModule,
    entryPoint: "main",
  },
});

computePipeline.label = "my_compute_pipeline";

console.log(computePipeline.label); // "my_compute_pipeline"

Setting a label via a GPUDevice.createComputePipeline() call, and then getting it via GPUComputePipeline.label:

js
// ...

const computePipeline = device.createComputePipeline({
  layout: device.createPipelineLayout({
    bindGroupLayouts: [bindGroupLayout],
  }),
  compute: {
    module: shaderModule,
    entryPoint: "main",
  },
  label: "my_compute_pipeline",
});

console.log(computePipeline.label); // "my_compute_pipeline"

Specifications

Specification
WebGPU
# dom-gpuobjectbase-label

Browser compatibility

BCD tables only load in the browser

See also