File size: 4,382 Bytes
f00338a 828fdc4 f00338a 828fdc4 f00338a 828fdc4 f00338a c468e03 f00338a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | {
"cases": [
{
"name": "axis1",
"preset": "smoke",
"attrs": { "axis": 1 },
"inputs": {
"data": { "dtype": "float32", "shape": [1024, 768] },
"indices": { "dtype": "int32", "shape": [1024, 128], "min": 0, "max": 768 }
},
"outputs": { "output": { "dtype": "float32", "shape": [1024, 128] } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "(numel(shapes.output) * 2 + numel(shapes.indices)) * 4" }]
}
},
{
"name": "axis0_dispatch_cliff_17M_f32",
"attrs": { "axis": 0 },
"vars": { "dtype": "float32", "count": 17301504 },
"inputs": {
"data": { "dtype": "float32", "shape": [16, 524288] },
"indices": { "dtype": "int32", "shape": [33, 524288], "min": 0, "max": 16 }
},
"outputs": { "output": { "dtype": "float32", "shape": [33, 524288] } },
"bench": {
"primary": true,
"metrics": [{ "type": "bandwidth", "value": "args.count * (dtypeBytes(args.dtype) * 2 + 4)" }]
}
},
{
"name": "axis1_f16",
"attrs": { "axis": 1 },
"vars": { "dtype": "float16", "count": 131072 },
"inputs": {
"data": { "dtype": "float16", "shape": [1024, 768] },
"indices": { "dtype": "int32", "shape": [1024, 128], "min": 0, "max": 768 }
},
"outputs": { "output": { "dtype": "float16", "shape": [1024, 128] } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.count * (dtypeBytes(args.dtype) * 2 + 4)" }] }
},
{
"name": "gather-elements-axis1-f32-4096x1023-unaligned-pathology",
"preset": "edge",
"provenance": {
"notes": "Rank-2 axis-1 gather whose width is 3 mod 4: the rank-2 vec4 route needs an output width divisible by four, so the generic kernel is the selected route with a full coordinate divide and modulo per element. Same index locality as its 1024-wide control."
},
"attrs": { "axis": 1 },
"vars": { "dtype": "float32", "count": 4190208 },
"inputs": {
"data": { "dtype": "float32", "shape": [4096, 1023], "dist": "normal", "seed": 160, "scale": 0.2 },
"indices": { "dtype": "int32", "shape": [4096, 1023], "dist": "linearMod", "seed": 160, "step": 7, "mod": 1023 }
},
"outputs": { "output": { "dtype": "float32", "shape": [4096, 1023] } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.count * (dtypeBytes(args.dtype) * 2 + 4)" }] }
},
{
"name": "gather-elements-axis1-f32-4096x1024-aligned-control",
"preset": "edge",
"provenance": {
"notes": "Aligned control for the 1023- and 1025-wide gathers: a width divisible by four takes the rank-2 vec4 route, four vec4 groups per lane at this element count."
},
"attrs": { "axis": 1 },
"vars": { "dtype": "float32", "count": 4194304 },
"inputs": {
"data": { "dtype": "float32", "shape": [4096, 1024], "dist": "normal", "seed": 161, "scale": 0.2 },
"indices": { "dtype": "int32", "shape": [4096, 1024], "dist": "linearMod", "seed": 161, "step": 7, "mod": 1024 }
},
"outputs": { "output": { "dtype": "float32", "shape": [4096, 1024] } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "args.count * (dtypeBytes(args.dtype) * 2 + 4)" }] }
},
{
"name": "gather-elements-rank3-last-axis-f32-8x512x1024",
"preset": "edge",
"attrs": { "axis": -1 },
"inputs": {
"data": { "dtype": "float32", "shape": [8, 512, 1024] },
"indices": { "dtype": "int32", "shape": [8, 512, 256], "min": 0, "max": 1024 }
},
"outputs": { "output": { "dtype": "float32", "shape": [8, 512, 256] } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "(numel(shapes.output) * 2 + numel(shapes.indices)) * 4" }]
}
},
{
"name": "gather-elements-rank2-folded-f32-4096x1024-control",
"preset": "edge",
"attrs": { "axis": 1 },
"inputs": {
"data": { "dtype": "float32", "shape": [4096, 1024] },
"indices": { "dtype": "int32", "shape": [4096, 256], "min": 0, "max": 1024 }
},
"outputs": { "output": { "dtype": "float32", "shape": [4096, 256] } },
"bench": {
"metrics": [{ "type": "bandwidth", "value": "(numel(shapes.output) * 2 + numel(shapes.indices)) * 4" }]
}
}
]
}
|