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

Prototype additional WebNN operator implementations via DirectML #1

Open
wants to merge 72 commits into
base: dml_base
Choose a base branch
from

Conversation

fdwr
Copy link
Owner

@fdwr fdwr commented Apr 14, 2023

*Not for actual review, just for comparison, since many of the needed operators do not even exist yet in WebNN v1, and since the Chromium main branch has many differences since this was forked from Mingming's original branch.

@fdwr fdwr changed the title Prototype additional op implementations via DirectML Prototype additional WebNN operator implementations via DirectML Apr 17, 2023
fdwr and others added 11 commits May 10, 2023 19:49
Reallocate DescriptorHeap if the count increases when executing an op
Fix duplicated graph inputs issue
The root cause is IDMLBindingTable::BindOutputs() use the references to
the DML_BUFFER_BINDING objects storaged in base::flat_map<>. These
references may become invalid if the flat_map reallocates the storage
when adding more outputs.

Fix this issue by reserve the flat_map capacity to avoid the
reallocation.
fdwr and others added 29 commits May 18, 2023 23:08
Fix the issue of calculating Resample2d's scales
Fix resample2d scales calculation and mode setting issue
1. Avoid mapping shared memory for every compute
2. Copy input/output and uploading/readback buffers in one big chunk
Optimize shared memory mapping and copy for input and output buffers
Count operands index from 1
… in MojoGraph::OnGraphCreated (thanks Mingming)
Non-controversial nits.
Apply CommandQueue::WaitAsync() to not block GPU main thread
Post IDMLDevice1::CompileGraph into other threads
For NPU, use D3D feature level core, switch to command list type COMPUTE, and re-enable DXCore over DXGI
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants