Skip to content

Commit

Permalink
WebNN: Implement MLBuffer dispatch
Browse files Browse the repository at this point in the history
Adds support to execute MLGraphs using MLBuffers. Allows the WebNN
developer to directly bind MLBuffers as input/outputs to graphs
for execution, which keeps MLBuffer data on-device after execution
completes. In future CLs, dispatch can be further optimized.

* Moves out per graph resources required by Dispatch().
* MLGraphBuilder.build no longer pre-allocates I/O.

webmachinelearning/webnn#482

Bug: 1472888
Change-Id: I7400704cf60c149c47c20f22c50d5f12bff89cf9
Cq-Include-Trybots: luci.chromium.try:win11-blink-rel
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5173678
Reviewed-by: Austin Sullivan <asully@chromium.org>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Reviewed-by: ningxin hu <ningxin.hu@intel.com>
Cr-Commit-Position: refs/heads/main@{#1296971}
  • Loading branch information
bbernhar authored and chromium-wpt-export-bot committed May 6, 2024
1 parent 4dc8d69 commit 1cc0daf
Show file tree
Hide file tree
Showing 2 changed files with 438 additions and 1 deletion.
1 change: 1 addition & 0 deletions webnn/conformance_tests/buffer.https.any.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ if (navigator.ml) {
testDestroyWebNNBuffer('destroyTwice');
testReadWebNNBuffer('read');
testWriteWebNNBuffer('write');
testDispatchWebNNBuffer('dispatch');
} else {
test(() => assert_implements(navigator.ml, 'missing navigator.ml'));
}
Loading

0 comments on commit 1cc0daf

Please sign in to comment.