ai.onnx.MaxPool / build /webgpu /bench.json
Xenova's picture
Xenova HF Staff
sync 2e7068faf55e
955a636 verified
Raw
History Blame
9.44 kB
{
"op": "ai.onnx.MaxPool",
"cases": [
{
"name": "nchw_1x64x112x112",
"preset": "smoke",
"attrs": { "kernel_shape": [3, 3], "strides": [2, 2], "pads": [1, 1, 1, 1] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 64, 112, 112] } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 64, 56, 56] } }
},
{
"name": "nchw_8x64x112x112_k2s2_unrolled",
"preset": "smoke",
"vars": { "batch": 8, "channels": 64, "inH": 112, "inW": 112 },
"attrs": { "kernel_shape": [2, 2], "strides": [2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [8, 64, 112, 112], "dist": "normal", "seed": 204 } },
"outputs": { "y": { "dtype": "float32", "shape": [8, 64, 56, 56], "dist": "empty" } },
"bench": {
"primary": true,
"metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }]
}
},
{
"name": "nchw_f16_8x64x112x112_k2s2",
"preset": "smoke",
"vars": { "batch": 8, "channels": 64, "inH": 112, "inW": 112 },
"attrs": { "kernel_shape": [2, 2], "strides": [2, 2] },
"inputs": { "x": { "dtype": "float16", "shape": [8, 64, 112, 112], "dist": "normal", "seed": 208 } },
"outputs": { "y": { "dtype": "float16", "shape": [8, 64, 56, 56], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 2" }] }
},
{
"name": "nchw_f16_8x64x112x114_k2s2_walign_cliff",
"preset": "smoke",
"vars": { "batch": 8, "channels": 64, "inH": 112, "inW": 114 },
"attrs": { "kernel_shape": [2, 2], "strides": [2, 2] },
"inputs": { "x": { "dtype": "float16", "shape": [8, 64, 112, 114], "dist": "normal", "seed": 209 } },
"outputs": { "y": { "dtype": "float16", "shape": [8, 64, 56, 57], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 2" }] }
},
{
"name": "nchw_f32_1x256x56x56_k5s2pad2_generic_loop",
"preset": "smoke",
"vars": { "batch": 1, "channels": 256, "inH": 56, "inW": 56 },
"attrs": { "kernel_shape": [5, 5], "strides": [2, 2], "pads": [2, 2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 256, 56, 56], "dist": "normal", "seed": 211 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 256, 28, 28], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }] }
},
{
"name": "nchw_f32_1x256x56x56_k3s2pad1_unrolled_sibling",
"preset": "smoke",
"vars": { "batch": 1, "channels": 256, "inH": 56, "inW": 56 },
"attrs": { "kernel_shape": [3, 3], "strides": [2, 2], "pads": [1, 1, 1, 1] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 256, 56, 56], "dist": "normal", "seed": 212 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 256, 28, 28], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }] }
},
{
"name": "ncl1d_f32_8x256x4096_k2s2",
"preset": "smoke",
"vars": { "batch": 8, "channels": 256, "inW": 4096 },
"attrs": { "kernel_shape": [2], "strides": [2] },
"inputs": { "x": { "dtype": "float32", "shape": [8, 256, 4096], "dist": "normal", "seed": 213 } },
"outputs": { "y": { "dtype": "float32", "shape": [8, 256, 2048], "dist": "empty" } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "(args.batch * args.channels * args.inW + numel(shapes.y)) * 4" }]
}
},
{
"name": "ncdhw3d_f32_1x32x32x32x32_k2s2",
"preset": "smoke",
"vars": { "batch": 1, "channels": 32, "inD": 32, "inH": 32, "inW": 32 },
"attrs": { "kernel_shape": [2, 2, 2], "strides": [2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 32, 32, 32, 32], "dist": "normal", "seed": 214 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 32, 16, 16, 16], "dist": "empty" } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inD * args.inH * args.inW * 4" }]
}
},
{
"name": "nchw_f16_8x128x112x112_k3s2pad1_unrolled",
"preset": "smoke",
"vars": { "batch": 8, "channels": 128, "inH": 112, "inW": 112 },
"attrs": { "kernel_shape": [3, 3], "strides": [2, 2], "pads": [1, 1, 1, 1] },
"inputs": { "x": { "dtype": "float16", "shape": [8, 128, 112, 112], "dist": "normal", "seed": 208 } },
"outputs": { "y": { "dtype": "float16", "shape": [8, 128, 56, 56], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 2" }] }
},
{
"name": "nchw_f32_1x128x160x160_k11s2pad5_generic_bigwindow",
"preset": "stress",
"vars": { "batch": 1, "channels": 128, "inH": 160, "inW": 160 },
"attrs": { "kernel_shape": [11, 11], "strides": [2, 2], "pads": [5, 5, 5, 5] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 128, 160, 160], "dist": "normal", "seed": 301, "scale": 2 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 128, 80, 80], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }] }
},
{
"name": "nchw_int8_1x64x224x224_k7s2pad3_generic_widened",
"preset": "stress",
"vars": { "batch": 1, "channels": 64, "inH": 224, "inW": 224 },
"attrs": { "kernel_shape": [7, 7], "strides": [2, 2], "pads": [3, 3, 3, 3] },
"inputs": {
"x": { "dtype": "int8", "shape": [1, 64, 224, 224], "dist": "randint", "seed": 302, "min": -120, "max": 120 }
},
"outputs": { "y": { "dtype": "int8", "shape": [1, 64, 112, 112], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW" }] }
},
{
"name": "ncdhw3d_f32_1x16x48x48x48_k5s1pad2_generic_3d",
"preset": "stress",
"vars": { "batch": 1, "channels": 16, "inD": 48, "inH": 48, "inW": 48 },
"attrs": { "kernel_shape": [5, 5, 5], "pads": [2, 2, 2, 2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 16, 48, 48, 48], "dist": "normal", "seed": 303, "scale": 2 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 16, 48, 48, 48], "dist": "empty" } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inD * args.inH * args.inW * 4" }]
}
},
{
"name": "ncdhw3d_f32_1x16x49x48x48_k5s1pad2_tiled_depth_tail",
"preset": "stress",
"vars": { "batch": 1, "channels": 16, "inD": 49, "inH": 48, "inW": 48 },
"attrs": { "kernel_shape": [5, 5, 5], "pads": [2, 2, 2, 2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 16, 49, 48, 48], "dist": "normal", "seed": 304, "scale": 2 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 16, 49, 48, 48], "dist": "empty" } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inD * args.inH * args.inW * 4" }]
}
},
{
"name": "global-maxpool-rank5-serial-reduction-pathology",
"preset": "stress",
"provenance": {
"source": "authored for variant coverage",
"notes": "Rank-5 global max pool over 131072 spatial values per plane verifies global_window_parallel coverage and its workgroup-tree feature-tier fallback."
},
"vars": { "batch": 1, "channels": 32, "inD": 32, "inH": 64, "inW": 64 },
"attrs": { "kernel_shape": [32, 64, 64] },
"inputs": {
"x": { "dtype": "float32", "shape": [1, 32, 32, 64, 64], "dist": "normal", "seed": 5102, "scale": 0.2 }
},
"outputs": { "y": { "dtype": "float32", "shape": [1, 32, 1, 1, 1], "dist": "empty" } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inD * args.inH * args.inW * 4" }]
}
},
{
"name": "nchw_f32_1x128x160x160_k5s2pad2_separable_breakeven",
"preset": "stress",
"vars": { "batch": 1, "channels": 128, "inH": 160, "inW": 160 },
"attrs": { "kernel_shape": [5, 5], "strides": [2, 2], "pads": [2, 2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 128, 160, 160], "dist": "normal", "seed": 307, "scale": 2 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 128, 80, 80], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }] }
},
{
"name": "nchw_f32_1x128x160x160_k6s2pad2_separable_gate_floor",
"preset": "stress",
"vars": { "batch": 1, "channels": 128, "inH": 160, "inW": 160 },
"attrs": { "kernel_shape": [6, 6], "strides": [2, 2], "pads": [2, 2, 2, 2] },
"inputs": { "x": { "dtype": "float32", "shape": [1, 128, 160, 160], "dist": "normal", "seed": 311, "scale": 2 } },
"outputs": { "y": { "dtype": "float32", "shape": [1, 128, 80, 80], "dist": "empty" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.batch * args.channels * args.inH * args.inW * 4" }] }
}
],
"tunableSpace": { "WORKGROUP_SIZE": [64, 128, 256] }
}