WebGPU

WebGPU
作者 W3C
開発元 W3CAppleMozillaMicrosoftGoogleオープンソースコミュニティ英語版
初版 リリース前
リポジトリ ウィキデータを編集
プラットフォーム ウェブプラットフォーム英語版
種別 API
公式サイト webgpu.io ウィキデータを編集
テンプレートを表示

WebGPU(ウェブジーピーユー[1])は、画像処理と計算処理アクセラレーションのための将来のウェブ標準およびJavaScript APIのためのワーキングネームである。「モダンな3D画像処理と計算機能」を提供することを目的としている。AppleMozillaMicrosoftGoogleを含むさまざまな組織のエンジニアが協力して、W3CGPU for the Webコミュニティグループで開発されている[2]

WebGLとは違い、WebGPUは既存のネイティブAPIを直接ポートするものではない。VulkanMetalDirect3D 12にある概念をベースにしており、これらのモダンなグラフィックAPI上で高性能を提供することを目指している。

2017年初頭、Chromiumチームは、NXTと呼ばれる最初のコンセプトのプロトタイプを発表した。

歴史

[編集]

2016年6月8日、GoogleはWebGLワーキンググループの2年ごとにオフラインで行われるミーティングで「Explicit web graphics API(明示的なウェブグラフィックAPI)」というタイトルのプレゼンテーションを行った[3]。プレゼンテーションは最終的にWebGLを置き換える新しいAPI(別名:WebGL Next)の基本的な概念と原則について検討するものであった。

2017年1月24日、Khronosは「WebGL Next」の概念について議論を行うためにIP-free(知的財産とは無関係)のミーティングを主催し、バンクーバーで開催されたWebGLワーキンググループのミーティングと共催した[4]。Googleチームは、OpenGLを使用したChromium上またはOpenGLとMetalを使用したスタンドアローンで実行可能な、新しいAPIを実装するNXTのプロトタイプを披露した。NXTはVulkan、Direct3D 12、MetalのネイティブAPIの全てから概念を取り入れていた。AppleとMozillaの代表もそれぞれSafariとServo上に構築したプロトタイプを紹介した。これらはMetal APIの複製したものに近かった。

W3Cのワーキンググループ

[編集]

2017年2月7日、AppleのWebKitチームは、APIを設計するためのW3Cのコミュニティグループの設立を提案した。同時に、技術的なproof of conceptとAppleのMetalをベースとした「WebGPU」という名称の提案を発表した[5][6][7]。WebGPUという名称は、後にコミュニティグループにより、Appleの最初の提案に加えて、将来の標準の仮称としても採用された。Appleによる最初の提案は、さらなる混同を避けるために「WebMetal」に改名された[8]

W3Cの「GPU for the Web」コミュニティグループは2017年2月16日に設立された。この時点で、Apple、Google、Mozillaのすべてがこの領域で実験を行っていたが、Appleの提案だけが公式に「gpuweb-proposals」リポジトリに提出された[9][10]。その直後の2017年3月21日、MozillaはKhronosリポジトリ内で、Vulkanの設計をベースにしたWebGL Next向けの提案を提出した[11][12]

2018年6月1日、クロスブラウザの標準化の取り組みの中で、GoogleのChromeチームは「最も高レベルな問題の解決(resolution on most-high level issues)」について触れ、将来のWebGPU標準を実装を開始する意向を発表した[13]

技術

[編集]

WebGPUは、SPIR-V英語版へ簡単に翻訳可能なWGSLと呼ばれる独自のシェーディング言語を使用している。この選択は、Appleによるtextual WebMetal、Apple Safariによるtextual WebHLSL / WSL、MozillaによるバイナリSPIR-Vという3つの提案の妥協案である。

実装

[編集]

下記ブラウザで実装されている。

  • Google Chrome - 113以降で対応している[14]
  • Mozilla Firefox - SPIR-Vを使用したWebGPUをサポートしており、WGSLフロントエンドのための作業が進行中である。
  • Safari - Web Shading Language (WSL) を使用したWebGPUをSafari Technology Previewでサポートしている[15]

関連項目

[編集]

出典

[編集]
  1. ^ WebGPU: Next-generation 3D graphics on the web (DevFest 2019). Google Developer Groups. 4 March 2020. 2022年11月1日閲覧
  2. ^ GPU for the Web Community Group”. w3.org. 2018年9月11日閲覧。
  3. ^ Wallez. “Explicit web graphics API”. 2019年6月25日閲覧。
  4. ^ Wallez. “WebGL Next investigations”. 2019年6月25日閲覧。
  5. ^ “Next-generation 3D Graphics on the Web”. WebKit. (2017年2月7日). https://webkit.org/blog/7380/next-generation-3d-graphics-on-the-web/ 2018年8月13日閲覧。 
  6. ^ Apple seeks to position Metal as part of new 3D graphics standard for web” (英語). AppleInsider. 2018年8月13日閲覧。
  7. ^ Claburn (2017年2月8日). “Web-standards-allergic Apple unveils WebGPU, a web graphics standard”. 2017年8月14日閲覧。
  8. ^ WebGPU Prototype and Demos”. WebKit (2017年4月5日). 2019年1月10日閲覧。
  9. ^ Jackson. “Add Apple's WebGPU proposal”. 2019年3月8日閲覧。
  10. ^ Malyshau. “Prototyping a new 3D API for the Web”. 2016年12月16日閲覧。
  11. ^ Malyshau, Dzmitry (2017年3月21日). “Defining the Web platform”. https://kvark.github.io/web/3d/api/mozilla/2017/03/21/web-platform.html 2018年9月11日閲覧。 
  12. ^ Malyshau. “Mozilla's contribution: Obsidian API”. 2019年3月8日閲覧。
  13. ^ Chrome ships WebGPU - Chrome Developers
  14. ^ Implementation Status” (英語). GitHub. gpuweb. 2022年9月20日閲覧。

外部リンク

[編集]