{"slug": "wasi-webgpu-a-proposed-webassembly-system-interface-api", "title": "Wasi: WebGPU – A Proposed WebAssembly System Interface API", "summary": "A proposed WebAssembly System Interface API, wasi:webgpu, aims to bring GPU access to WebAssembly, enabling portable, sandboxed GPU compute for applications such as server-side graphics streaming, scientific computing, and AI/ML inference. The API is based on the official WebGPU specification but deviates where that spec assumes a web or JavaScript environment, with all deviations clearly documented. The proposal is currently in Phase 2 development, targeting Linux, Windows, MacOS, Android, and Web platforms.", "body_md": "A proposed [WebAssembly System Interface](https://github.com/WebAssembly/WASI) API.\n\nPhase 2\n\n- Mendy Berger\n- Sean Isom\n\nLinux, Windows, MacOS, Android, Web.\n\n[Introduction](#introduction)[Goals [or Motivating Use Cases, or Scenarios]](#goals-or-motivating-use-cases-or-scenarios)[Non-goals](#non-goals)[API walk-through](#api-walk-through)[Detailed design discussion](#detailed-design-discussion)[Considered alternatives](#considered-alternatives)[Stakeholder Interest & Feedback](#stakeholder-interest--feedback)[References & acknowledgements](#references--acknowledgements)\n\n`wasi:webgpu`\n\nis a WASI proposal for GPU access in WebAssembly.\n\nBring the benefits of Wasm (portability, security, sandboxing) to GPU compute. Use cases include, but are not limited to:\n\n- Server-side graphics streaming.\n- Scientific computing and simulations.\n- AI/ML inference and training.\n- Image and video processing.\n- Data visualization and rendering.\n\n- Displaying to a screen / windowing API — out of scope here, but active work is happening in other projects that may eventually become their own wasi proposals (e.g.,\n[wasi-gfx](https://github.com/wasi-gfx)).\n\nThe full API documentation can be found in [imports.md](/WebAssembly/wasi-webgpu/blob/main/imports.md).\n\n`wasi:webgpu`\n\nis based on the official [WebGPU spec](https://www.w3.org/TR/webgpu/). It deviate in some cases from the webgpu spec, namely, in cases where the spec makes assumptions about running in a web or JS environment. Wherever `wasi:webgpu`\n\ndeviates from the spec, a clear explanation should be documented.\n\n[Provide example code snippets and diagrams explaining how the API would be used to solve the given problem]\n\n[etc.]\n\n[This section should mostly refer to the .wit.md file that specifies the API. This section is for any discussion of the choices made in the API which don't make sense to document in the spec file itself.]\n\n[Talk through the tradeoffs in coming to the specific design point you want to make.]\n\n```\n// Illustrated with example code.\n```\n\n[This may be an open question, in which case you should link to any active discussion threads.]\n\n[etc.]\n\n[This section is not required if you already covered considered alternatives in the design discussion above.]\n\n[Describe an alternative which was considered, and why you decided against it.]\n\n[etc.]\n\nTODO before entering Phase 3.\n\n[This should include a list of implementers who have expressed interest in implementing the proposal]\n\nMany thanks for valuable feedback and advice from:\n\n- [Person 1]\n- [Person 2]\n- [etc.]", "url": "https://wpnews.pro/news/wasi-webgpu-a-proposed-webassembly-system-interface-api", "canonical_source": "https://github.com/WebAssembly/wasi-webgpu", "published_at": "2026-06-12 15:26:58+00:00", "updated_at": "2026-06-12 15:50:43.910094+00:00", "lang": "en", "topics": ["ai-infrastructure"], "entities": ["WebAssembly", "WebGPU", "WASI", "Mendy Berger", "Sean Isom", "Linux", "Windows", "MacOS"], "alternates": {"html": "https://wpnews.pro/news/wasi-webgpu-a-proposed-webassembly-system-interface-api", "markdown": "https://wpnews.pro/news/wasi-webgpu-a-proposed-webassembly-system-interface-api.md", "text": "https://wpnews.pro/news/wasi-webgpu-a-proposed-webassembly-system-interface-api.txt", "jsonld": "https://wpnews.pro/news/wasi-webgpu-a-proposed-webassembly-system-interface-api.jsonld"}}