Download build/webgpu/bench.json from webgpu-kernels/ai.onnx.LinearAttention: direct link, hf CLI and curl.
- Browser
- Download file 2.65 kB
-
https://huggingface.co/kernels/webgpu-kernels/ai.onnx.LinearAttention/resolve/v1/build/webgpu/bench.json
- Command line
-
hf download hf://webgpu-kernels/ai.onnx.LinearAttention@v1/build/webgpu/bench.json
-
curl -L -o bench.json https://huggingface.co/kernels/webgpu-kernels/ai.onnx.LinearAttention/resolve/v1/build/webgpu/bench.json
2.65 kB
| { | |
| "cases": [ | |
| { | |
| "name": "linear-attention-standard-gqa-f32", | |
| "preset": "smoke", | |
| "vars": { "batch": 1, "seq": 32, "qHeads": 4, "kvHeads": 2, "dk": 16, "dv": 16 }, | |
| "attrs": { "q_num_heads": 4, "kv_num_heads": 2, "update_rule": "linear", "scale": 0.25 }, | |
| "inputs": { | |
| "queryT": { "shape": [1, 32, 64], "dtype": "float32", "dist": "normal", "seed": 401, "scale": 0.2 }, | |
| "keyT": { "shape": [1, 32, 32], "dtype": "float32", "dist": "normal", "seed": 402, "scale": 0.2 }, | |
| "valueT": { "shape": [1, 32, 32], "dtype": "float32", "dist": "normal", "seed": 403, "scale": 0.2 } | |
| }, | |
| "outputs": { | |
| "outputT": { "shape": [1, 32, 64], "dtype": "float32" }, | |
| "presentStateT": { "shape": [1, 2, 16, 16], "dtype": "float32" } | |
| }, | |
| "bench": { | |
| "primary": true, | |
| "metrics": [ | |
| { "type": "gflops", "value": "2 * args.batch * args.seq * (args.qHeads + args.kvHeads) * args.dk * args.dv" } | |
| ] | |
| } | |
| }, | |
| { | |
| "name": "linear-attention-standard-gated-delta-state-f16", | |
| "preset": "smoke", | |
| "vars": { "batch": 1, "seq": 32, "qHeads": 4, "kvHeads": 2, "dk": 16, "dv": 16 }, | |
| "attrs": { "q_num_heads": 4, "kv_num_heads": 2, "update_rule": "gated_delta", "scale": 0.25 }, | |
| "inputs": { | |
| "queryT": { "shape": [1, 32, 64], "dtype": "float16", "dist": "normal", "seed": 411, "scale": 0.2 }, | |
| "keyT": { "shape": [1, 32, 32], "dtype": "float16", "dist": "normal", "seed": 412, "scale": 0.2 }, | |
| "valueT": { "shape": [1, 32, 32], "dtype": "float16", "dist": "normal", "seed": 413, "scale": 0.2 }, | |
| "pastStateT": { "shape": [1, 2, 16, 16], "dtype": "float16", "dist": "normal", "seed": 414, "scale": 0.1 }, | |
| "decayT": { | |
| "shape": [1, 32, 32], | |
| "dtype": "float16", | |
| "dist": "uniform", | |
| "seed": 415, | |
| "scale": 0.19, | |
| "offset": -0.2 | |
| }, | |
| "betaT": { | |
| "shape": [1, 32, 2], | |
| "dtype": "float16", | |
| "dist": "uniform", | |
| "seed": 416, | |
| "scale": 0.5, | |
| "offset": 0.4 | |
| } | |
| }, | |
| "outputs": { | |
| "outputT": { "shape": [1, 32, 64], "dtype": "float16" }, | |
| "presentStateT": { "shape": [1, 2, 16, 16], "dtype": "float16" } | |
| }, | |
| "bench": { | |
| "primary": true, | |
| "metrics": [ | |
| { | |
| "type": "gflops", | |
| "value": "2 * args.batch * args.seq * (args.qHeads + 2 * args.kvHeads) * args.dk * args.dv" | |
| } | |
| ] | |
| } | |
| } | |
| ], | |
| "tunableSpace": { "tileV": [4, 8], "gatedTileV": [2, 4], "dvGroups": [1, 2, 4] } | |
| } | |