Chrome поставляет WebGPU

После нескольких лет разработки команда Chrome выпустила WebGPU, который обеспечивает высокопроизводительную 3D-графику и параллельные вычисления в Интернете.

Франсуа Бофор
François Beaufort

Команда Chrome рада сообщить, что WebGPU теперь доступен по умолчанию в Chrome 113, который в настоящее время находится в бета-канале. WebGPU — это новый API веб-графики, который предлагает значительные преимущества, такие как значительное снижение рабочей нагрузки JavaScript для той же графики и более чем трехкратное улучшение результатов модели машинного обучения. Это возможно благодаря более гибкому программированию графического процессора и доступу к расширенным возможностям, которых нет в WebGL.

Этот первоначальный выпуск WebGPU доступен на ChromeOS, macOS и Windows. Поддержка других платформ появится позже в этом году.

Новый рассвет веб-графики

WebGPU — это новый API для Интернета, который раскрывает современные аппаратные возможности и позволяет выполнять операции рендеринга и вычислений на графическом процессоре, аналогично Direct3D 12, Metal и Vulkan. В отличие от API-интерфейсов семейства WebGL, WebGPU предлагает доступ к более продвинутым функциям графического процессора и обеспечивает первоклассную поддержку общих вычислений на графическом процессоре. API разработан с учетом веб-платформы и включает в себя идиоматический API JavaScript, интеграцию с обещаниями, поддержку импорта видео и безупречный опыт разработчика с отличными сообщениями об ошибках.

Этот первоначальный выпуск WebGPU служит строительным блоком для будущих обновлений и улучшений. API будет предлагать более продвинутые графические функции, и разработчикам рекомендуется отправлять запросы на дополнительные функции . Команда Chrome также планирует предоставить более глубокий доступ к шейдерным ядрам для еще большей оптимизации машинного обучения и дополнительной эргономики в WGSL, языке шейдинга WebGPU.

WebGPU — это результат совместных усилий группы сообщества W3C «GPU for the Web» , в которую входят вклад таких крупных компаний, как Mozilla, Apple, Intel и Microsoft. После шести лет разработки ( 90 участников, 2000 коммитов, 3000 проблем ), начиная с первоначального проекта в 2017 году, теперь доступна первая реализация в Chrome, а поддержка Firefox и Safari находится в разработке.

И библиотека Dawn для Chromium, и библиотека wgpu для Firefox доступны как отдельные пакеты и предлагают отличную мобильность и эргономичные уровни, абстрагирующие API-интерфейсы графического процессора ОС. Использование этих библиотек в нативных приложениях также упрощает портирование на WASM через Emscripten и Rust web-sys .

Поддержка браузера

Этот первоначальный выпуск WebGPU доступен в Chrome 113 на устройствах ChromeOS с поддержкой Vulkan, устройствах Windows с поддержкой Direct3D 12 и macOS. Скоро появятся Linux, Android и расширенная поддержка существующих платформ.

WebGPU находится в стадии разработки в Firefox и Safari , в дополнение к первоначальной реализации в Chrome.

Библиотечная поддержка

Многие широко используемые библиотеки WebGL уже реализуют поддержку WebGPU или уже сделали это. Это означает, что для использования WebGPU может потребоваться внести всего лишь одно изменение строки:

  • Babylon.js уже имеет полную поддержку WebGPU.
  • PlayCanvas объявила о начальной поддержке WebGPU.
  • TensorFlow.js поддерживает версии большинства операторов, оптимизированные для WebGPU.
  • Поддержка Three.js WebGPU ведется, см . примеры .

Ресурсы

WebGPU — это важная технология, и мы рекомендуем следующие ресурсы, чтобы узнать больше:

Благодарности

Большое спасибо всем участникам Chromium и особенно сотрудникам Intel за их неоценимую поддержку, сделавшую это возможным.