feat(webgpu): add tensor operations #904
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What This PR Does
Starts a general binary op implementation for
Webgpu. This code is based on an (old, in-progress WGPU branch)[https://github.com/DonIsaac/dfdx/tree/don/feat/wgpu2] I made a while ago.I've (mostly) got
forwarddown, but I think I need some help withbackwardTodo
BinaryOpWebgpuKernel.forward()UnaryOpWebgpuKernel.forward()(may require push constants)to_dtypestd)f16viashader-f16featureOther Notes
COPY_SRCandCOPY_DST, but this leaves them un-mappable without an intermediateMAP_READbuffer.