Commits


Yulong Wang authored and GitHub committed bb1871332f5
[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)  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. -->