Spec-Zone.ru › Web APIs

GPUComputePipeline

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Экспериментальная: Это экспериментальная технология
Перед использованием в производстве внимательно изучите таблицу совместимости с браузерами.

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.

Примечание: Эта функция доступна в Web Workers.

Интерфейс GPUComputePipeline API WebGPU представляет собой конвейер, который управляет этапом компиляции шейдеров и может использоваться в GPUComputePassEncoder.

Объект GPUComputePipeline может быть создан с помощью методов GPUDevice.createComputePipeline() или GPUDevice.createComputePipelineAsync().

Свойства экземпляра

label Экспериментальная

Строка, предоставляющая метку, которая может использоваться для идентификации объекта, например, в сообщениях GPUError или предупреждениях консоли.

Методы экземпляра

getBindGroupLayout() Экспериментальная

Возвращает объект GPUBindGroupLayout конвейера с заданным индексом (т. е. включенный в макет конвейера исходного вызова GPUDevice.createComputePipeline() или GPUDevice.createComputePipelineAsync()).

Примеры

Примечание: В примерах WebGPU представлено гораздо больше примеров.

Базовый пример

Наш базовый пример вычислений демонстрирует процесс:

  • Создание макета группы связей с помощью GPUDevice.createBindGroupLayout().
  • Передача bindGroupLayout в GPUDevice.createPipelineLayout() для создания GPUPipelineLayout.
  • Немедленное использование этого значения в вызове createComputePipeline() для создания GPUComputePipeline.
// ...

const bindGroupLayout = device.createBindGroupLayout({
  entries: [
    {
      binding: 0,
      visibility: GPUShaderStage.COMPUTE,
      buffer: {
        type: "storage",
      },
    },
  ],
});

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

// ...

Спецификации

Спецификация
WebGPU
# gpucomputepipeline

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
GPUComputePipeline
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
previewВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
preview 121 Нет 81 Нет 25.0 121
getBindGroupLayout
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
previewВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
preview 121 Нет 81 Нет 25.0 121
label
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
previewВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
preview 121 Нет 81 Нет 25.0 121

См. также

  • The WebGPU API

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API