| { |
| "op": "ai.onnx.ReduceMax", |
| "tunableSpace": { "WORKGROUP_SIZE": [64, 128, 256] }, |
| "cases": [ |
| { |
| "name": "reduce-max-axis0-1024x512", |
| "preset": "smoke", |
| "vars": { "dtype": "float32", "rows": 1024, "cols": 512 }, |
| "attrs": { "axes": [0], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [1024, 512], "dtype": "float32", "dist": "normal", "seed": 941, "scale": 1 } }, |
| "outputs": { "y": { "shape": [512], "dtype": "float32" } }, |
| "bench": { |
| "primary": true, |
| "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * dtypeBytes(args.dtype)" }] |
| } |
| }, |
| { |
| "name": "reduce-max-axis1-1024x4096", |
| "preset": "smoke", |
| "vars": { "dtype": "float32", "rows": 1024, "cols": 4096 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [1024, 4096], "dtype": "float32", "dist": "normal", "seed": 940, "scale": 1 } }, |
| "outputs": { "y": { "shape": [1024], "dtype": "float32" } }, |
| "bench": { |
| "primary": true, |
| "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * dtypeBytes(args.dtype)" }] |
| } |
| }, |
| { |
| "name": "reducemax-lastaxis-f32-4096x4096", |
| "preset": "smoke", |
| "vars": { "rows": 4096, "cols": 4096 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [4096, 4096], "dtype": "float32", "dist": "normal", "seed": 117, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [4096], "dtype": "float32" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * 4" }] } |
| }, |
| { |
| "name": "reducemax-r3-last-64x64x4096", |
| "preset": "smoke", |
| "vars": { "rows": 4096, "cols": 4096 }, |
| "attrs": { "axes": [2], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [64, 64, 4096], "dtype": "float32", "dist": "normal", "seed": 71, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [64, 64], "dtype": "float32" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * 4" }] } |
| }, |
| { |
| "name": "axis0-large-65536x512", |
| "preset": "smoke", |
| "vars": { "rows": 65536, "cols": 512 }, |
| "attrs": { "axes": [0], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [65536, 512], "dtype": "float32", "dist": "normal", "scale": 0.2, "seed": 311 } }, |
| "outputs": { "y": { "shape": [512], "dtype": "float32" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * 4" }] } |
| }, |
| { |
| "name": "axis0-tall-16384x1024", |
| "preset": "smoke", |
| "vars": { "rows": 16384, "cols": 1024 }, |
| "attrs": { "axes": [0], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [16384, 1024], "dtype": "float32", "dist": "normal", "scale": 0.2, "seed": 312 } }, |
| "outputs": { "y": { "shape": [1024], "dtype": "float32" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * 4" }] } |
| }, |
| { |
| "name": "reducemax-lastaxis-f32-1024x4095-scalar", |
| "preset": "smoke", |
| "vars": { "dtype": "float32", "rows": 1024, "cols": 4095 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [1024, 4095], "dtype": "float32", "dist": "normal", "seed": 614, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [1024], "dtype": "float32" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * dtypeBytes(args.dtype)" }] } |
| }, |
| { |
| "name": "reducemax-lastaxis-f32-8x50257-vocab-scalar", |
| "preset": "smoke", |
| "vars": { "dtype": "float32", "rows": 8, "cols": 50257 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [8, 50257], "dtype": "float32", "dist": "normal", "seed": 615, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [8], "dtype": "float32" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * dtypeBytes(args.dtype)" }] } |
| }, |
| { |
| "name": "reducemax-r3-axis1-middle-64x128x256", |
| "preset": "smoke", |
| "vars": { "dtype": "float32" }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [64, 128, 256], "dtype": "float32", "dist": "normal", "seed": 616, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [64, 256], "dtype": "float32" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "64 * 128 * 256 * dtypeBytes(args.dtype)" }] } |
| }, |
| { |
| "name": "reducemax-lastaxis-i32-1024x4096", |
| "preset": "smoke", |
| "vars": { "dtype": "int32", "rows": 1024, "cols": 4096 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [1024, 4096], "dtype": "int32", "dist": "normal", "seed": 617, "scale": 1000 } }, |
| "outputs": { "y": { "shape": [1024], "dtype": "int32" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "args.rows * args.cols * dtypeBytes(args.dtype)" }] } |
| }, |
| { |
| "name": "reducemax-all-axes-flat-miss-single-thread-2M", |
| "preset": "stress", |
| "vars": { "rows": 2146689, "cols": 1 }, |
| "attrs": { "keepdims": 0 }, |
| "inputs": { "x": { "shape": [129, 129, 129], "dtype": "float32", "dist": "normal", "seed": 711, "scale": 1 } }, |
| "outputs": { "y": { "shape": [], "dtype": "float32", "dist": "empty" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "129 * 129 * 129 * 4" }] } |
| }, |
| { |
| "name": "reducemax-rank3-spatial-axes12-f32-128x256x256-pathology", |
| "preset": "stress", |
| "provenance": { |
| "source": "authored for branch coverage", |
| "notes": "Rank-3 multi-axis reduction with 128 output lanes, each serially scanning a 256x256 plane." |
| }, |
| "attrs": { "axes": [1, 2], "keepdims": 1 }, |
| "inputs": { "x": { "shape": [128, 256, 256], "dtype": "float32", "dist": "normal", "seed": 305, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [128, 1, 1], "dtype": "float32", "dist": "empty" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "128 * 256 * 256 * 4" }] } |
| }, |
| { |
| "name": "reducemax-spatial-axes23-f32-2x64x256x256-pathology", |
| "preset": "stress", |
| "provenance": { |
| "source": "authored for branch coverage", |
| "notes": "Rank-4 multi-axis reduction with 128 output lanes, each serially scanning a 256x256 plane." |
| }, |
| "attrs": { "axes": [2, 3], "keepdims": 1 }, |
| "inputs": { "x": { "shape": [2, 64, 256, 256], "dtype": "float32", "dist": "normal", "seed": 304, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [2, 64, 1, 1], "dtype": "float32", "dist": "empty" } }, |
| "bench": { "primary": true, "metrics": [{ "type": "bandwidth", "value": "2 * 64 * 256 * 256 * 4" }] } |
| }, |
| { |
| "name": "reducemax-axis0-cols3-ultra-low-parallelism", |
| "preset": "stress", |
| "vars": { "rows": 65536, "cols": 3 }, |
| "attrs": { "axes": [0], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [65536, 3], "dtype": "float32", "dist": "normal", "seed": 812, "scale": 1 } }, |
| "outputs": { "y": { "shape": [3], "dtype": "float32", "dist": "empty" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "65536 * 3 * 4" }] } |
| }, |
| { |
| "name": "reducemax-rank3-axis1-starvation-1x65536x8", |
| "preset": "smoke", |
| "vars": { "numel": 524288 }, |
| "attrs": { "axes": [1], "keepdims": 0 }, |
| "inputs": { "x": { "shape": [1, 65536, 8], "dtype": "float32", "dist": "normal", "seed": 119, "scale": 0.2 } }, |
| "outputs": { "y": { "shape": [1, 8], "dtype": "float32" } }, |
| "bench": { "metrics": [{ "type": "bandwidth", "value": "args.numel * 4" }] } |
| } |
| ] |
| } |
|
|