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
forward
down, but I think I need some help withbackward
Todo
BinaryOpWebgpuKernel.forward()
UnaryOpWebgpuKernel.forward()
(may require push constants)to_dtype
std
)f16
viashader-f16
featureOther Notes
COPY_SRC
andCOPY_DST
, but this leaves them un-mappable without an intermediateMAP_READ
buffer.