Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebGPU interoperability #20

Closed
anssiko opened this issue Oct 11, 2022 · 1 comment
Closed

WebGPU interoperability #20

anssiko opened this issue Oct 11, 2022 · 1 comment

Comments

@anssiko
Copy link
Member

anssiko commented Oct 11, 2022

(Related to the WebML WG Charter in development at #19)

We discussed WebGPU interoperability expectations on our 6 October 2022 call and concluded working with WebGPU contributors is important for the success of the WebNN spec. I'd want us to revise the charter language around WebNN-WebGPU interoperability expectations accordingly.

The initial charter mentions WebGPU in the context of Out of Scope and Coordination as follows:

To avoid overlap with existing work, generic primitives used by traditional machine learning algorithms such as base linear algebra operations are out of scope. The WebGL and WebGPU shaders and WebAssembly SIMD are expected to address these requirements, see the Coordination section for details.

The GPU for the Web Working Group defines a WebGPU Shading Language that may be used to implement traditional machine learning algorithms efficiently. The Web Machine Learning Working Group should coordinate with this group to avoid overlap.

This issue is open to solicit proposals how to update the above. Tagging @RafaelCintron who provided feedback on the call.

@anssiko
Copy link
Member Author

anssiko commented Nov 21, 2022

IIRC the text "base linear algebra operations are out of scope" was added to the initial charter to clarify the WebNN API spec does not try to align with the BLAS APIs, referring to the Basic Linear Algebra Subprograms spec. Some of those ops make sense in the WebNN API context, but alignment with the full BLAS API was a non-goal.

We could possibly clarify this text, proposal:

To avoid overlap with existing work, alignment with the Basic Linear Algebra Subprograms (BLAS) interface is out of scope. The WebGL and WebGPU shaders and WebAssembly SIMD are expected to address the BLAS compatibility requirement, see the Coordination section for details.

There are a number of BLAS libraries that could assist in implementation of the WebNN API. Also, there seems to be experimental BLAS implementations using WebGPU https://github.com/milhidaka/webgpu-blas and WebGL https://github.com/waylonflinn/weblas, maybe also a Wasm port exists for some of the libs.

anssiko added a commit that referenced this issue Dec 8, 2022
"base linear algebra operations are out of scope" refers to the
Basic Linear Algebra Subprograms (BLAS) interface.

Related #20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant