onnxruntime/js/web/lib/wasm/jsep
Jiajia Qin b30e721dc8
[js/webgpu] Provide a naive vectorized matmul algorithm (#18758)
### Description
This PR provided a vectorized matmul algorithm. In most situations, we
still go to the workgroup memory optimized matmul. But for some
situations, like N and K are very small, using workgroup optimized
matmul can't fully utilize the underlying hardware due to the 32x32 tile
size. So for very small N/K, we switch to the naive vectorized matmul
algorithm to improve the hardware execution unit usage.

With this PR, matmul with input0: [1, 36864, 3], input1: [1, 3, 3],
input2: [3] becomes less than 1 ms from 4.34 ms on Intel Gen9 GPUs.
2023-12-13 09:03:23 -08:00
..
webgpu [js/webgpu] Provide a naive vectorized matmul algorithm (#18758) 2023-12-13 09:03:23 -08:00
backend-webgpu.ts [js/webgpu] allow to specify callback for profiling data (#18732) 2023-12-07 14:10:28 -08:00
init.ts [js/webgpu] allow to specify callback for profiling data (#18732) 2023-12-07 14:10:28 -08:00
log.ts
tensor-view.ts
util.ts