onnxruntime/js/web/lib/wasm
Yulong Wang bb1871332f
[js/webgpu] add kernel Not and Equal (#17306)
### Description
This PR adds kernel implementation for operator "Not" and "Equal". Also
removed download cache in gpu data manager.

**Why removing download cache**
The following test case failed. ("Or" is on CPU, "Greater" and "Equal"
are on JSEP)

![image](https://github.com/microsoft/onnxruntime/assets/7679871/8d9798ad-2703-4fb9-907e-ff716c67d0b2)
after debugging, I found that both "Equal" and "Greater" are using the
same output GPU Data ID. This is because when ORT executes the graph, it
first run "Equal", allowing its shader to write into GPU Data ID 2; then
a Gpu2Cpu copy for it is issued (because currently "Or" is on CPU EP);
at this point, ORT thinks GPU Data ID=2 is free to use; so it reuse it
as output for "Greater". This means there is no allocation for output of
"Greater" kernel, and both kernel writes to GPU Data ID=2.

For gpu data manager, there will be 2 downloads from the same GPU
buffer. Previously I think this is a waste of resource so I cached the
data. But now it shoes that we need to perform 2 downloads because the
GPU data is already different. The download data cache should be
removed.


### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
2023-08-27 19:50:17 -07:00
..
binding [js/webgpu] fix jsepOnRunEnd (#17300) 2023-08-26 00:30:28 -07:00
jsep [js/webgpu] add kernel Not and Equal (#17306) 2023-08-27 19:50:17 -07:00
proxy-worker [js/webgpu] support proxy for webgpu (#15851) 2023-05-15 16:23:13 -07:00
proxy-messages.ts [js/webgpu] support proxy for webgpu (#15851) 2023-05-15 16:23:13 -07:00
proxy-wrapper.ts [js/webgpu] support proxy for webgpu (#15851) 2023-05-15 16:23:13 -07:00
run-options.ts [js/web] enable ONNX Runtime Web error messages in JS (#16335) 2023-06-15 09:45:41 -07:00
session-handler.ts [JS/Web] Added SkipLayerNormalization operator. (#17102) 2023-08-18 09:59:03 -07:00
session-options.ts [js/web] enable ONNX Runtime Web error messages in JS (#16335) 2023-06-15 09:45:41 -07:00
wasm-common.ts [js/webgpu] make IndicesHelper implementation implicit (#17193) 2023-08-23 14:41:35 -07:00
wasm-core-impl.ts [js/webgpu] fix jsepOnRunEnd (#17300) 2023-08-26 00:30:28 -07:00
wasm-factory.ts [js/web] add target ort.webgpu.min.js (#15780) 2023-05-04 10:05:39 -07:00
wasm-utils.ts [js/web] enable ONNX Runtime Web error messages in JS (#16335) 2023-06-15 09:45:41 -07:00