File size: 19,694 Bytes
2760d09 62736d3 2760d09 62736d3 2760d09 62736d3 2760d09 05e7ae4 2760d09 | 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 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 | {
"cases": [
{
"name": "skip-layernorm-f32-256x128",
"preset": "smoke",
"vars": { "rows": 256, "hidden": 128 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 213, "scale": 0.2 },
"skipT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 214, "scale": 0.2 },
"gammaT": { "shape": [128], "dtype": "float32", "dist": "uniform", "seed": 215, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [128], "dtype": "float32", "dist": "normal", "seed": 216, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [256, 128], "dtype": "float32" },
"residualT": { "shape": [256, 128], "dtype": "float32" }
},
"bench": {
"primary": true,
"metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }]
}
},
{
"name": "skip-layernorm-f32-no-beta-output-256x128",
"preset": "smoke",
"vars": { "rows": 256, "hidden": 128 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 219, "scale": 0.2 },
"skipT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 220, "scale": 0.2 },
"gammaT": { "shape": [128], "dtype": "float32", "dist": "uniform", "seed": 221, "scale": 0.1, "offset": 1 }
},
"outputs": { "outputT": { "shape": [256, 128], "dtype": "float32" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (3 * args.rows * args.hidden + args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-bias-256x128",
"preset": "smoke",
"vars": { "rows": 256, "hidden": 128 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 214, "scale": 0.2 },
"skipT": { "shape": [256, 128], "dtype": "float32", "dist": "normal", "seed": 215, "scale": 0.2 },
"gammaT": { "shape": [128], "dtype": "float32", "dist": "uniform", "seed": 216, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [128], "dtype": "float32", "dist": "normal", "seed": 217, "scale": 0.1 },
"biasT": { "shape": [128], "dtype": "float32", "dist": "normal", "seed": 218, "scale": 0.05 }
},
"outputs": {
"outputT": { "shape": [256, 128], "dtype": "float32" },
"residualT": { "shape": [256, 128], "dtype": "float32" }
},
"bench": {
"primary": true,
"metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 3 * args.hidden)" }]
}
},
{
"name": "skip-layernorm-f32-4096x768",
"preset": "model",
"vars": { "rows": 4096, "hidden": 768 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 313, "scale": 0.2 },
"skipT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 314, "scale": 0.2 },
"gammaT": { "shape": [768], "dtype": "float32", "dist": "uniform", "seed": 315, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 316, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [4096, 768], "dtype": "float32" },
"residualT": { "shape": [4096, 768], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-no-beta-output-4096x768",
"preset": "model",
"vars": { "rows": 4096, "hidden": 768 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 319, "scale": 0.2 },
"skipT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 320, "scale": 0.2 },
"gammaT": { "shape": [768], "dtype": "float32", "dist": "uniform", "seed": 321, "scale": 0.1, "offset": 1 }
},
"outputs": { "outputT": { "shape": [4096, 768], "dtype": "float32" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (3 * args.rows * args.hidden + args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-bias-4096x768",
"preset": "model",
"vars": { "rows": 4096, "hidden": 768 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 314, "scale": 0.2 },
"skipT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 315, "scale": 0.2 },
"gammaT": { "shape": [768], "dtype": "float32", "dist": "uniform", "seed": 316, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 317, "scale": 0.1 },
"biasT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 318, "scale": 0.05 }
},
"outputs": {
"outputT": { "shape": [4096, 768], "dtype": "float32" },
"residualT": { "shape": [4096, 768], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 3 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-bias-output-only-4096x768",
"preset": "model",
"provenance": {
"notes": "An ordinary inference shape with bias omits all three optional outputs, uses six storage buffers, and writes only the primary output."
},
"vars": { "rows": 4096, "hidden": 768 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 314, "scale": 0.2 },
"skipT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 315, "scale": 0.2 },
"gammaT": { "shape": [768], "dtype": "float32", "dist": "uniform", "seed": 316, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 317, "scale": 0.1 },
"biasT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 318, "scale": 0.05 }
},
"outputs": { "outputT": { "shape": [4096, 768], "dtype": "float32" } },
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (3 * args.rows * args.hidden + 3 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-4096x770-hidden770-unaligned",
"preset": "model",
"vars": { "rows": 4096, "hidden": 770 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 770], "dtype": "float32", "dist": "normal", "seed": 413, "scale": 0.2 },
"skipT": { "shape": [4096, 770], "dtype": "float32", "dist": "normal", "seed": 414, "scale": 0.2 },
"gammaT": { "shape": [770], "dtype": "float32", "dist": "uniform", "seed": 415, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [770], "dtype": "float32", "dist": "normal", "seed": 416, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [4096, 770], "dtype": "float32" },
"residualT": { "shape": [4096, 770], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-4096x768-hidden768-aligned",
"preset": "model",
"vars": { "rows": 4096, "hidden": 768 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 413, "scale": 0.2 },
"skipT": { "shape": [4096, 768], "dtype": "float32", "dist": "normal", "seed": 414, "scale": 0.2 },
"gammaT": { "shape": [768], "dtype": "float32", "dist": "uniform", "seed": 415, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [768], "dtype": "float32", "dist": "normal", "seed": 416, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [4096, 768], "dtype": "float32" },
"residualT": { "shape": [4096, 768], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-rows1-hidden4096-decode",
"preset": "model",
"vars": { "rows": 1, "hidden": 4096 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [1, 4096], "dtype": "float32", "dist": "normal", "seed": 513, "scale": 0.2 },
"skipT": { "shape": [1, 4096], "dtype": "float32", "dist": "normal", "seed": 514, "scale": 0.2 },
"gammaT": { "shape": [4096], "dtype": "float32", "dist": "uniform", "seed": 515, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [4096], "dtype": "float32", "dist": "normal", "seed": 516, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [1, 4096], "dtype": "float32" },
"residualT": { "shape": [1, 4096], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-rows4096-hidden4096-prefill",
"preset": "model",
"vars": { "rows": 4096, "hidden": 4096 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 4096], "dtype": "float32", "dist": "normal", "seed": 513, "scale": 0.2 },
"skipT": { "shape": [4096, 4096], "dtype": "float32", "dist": "normal", "seed": 514, "scale": 0.2 },
"gammaT": { "shape": [4096], "dtype": "float32", "dist": "uniform", "seed": 515, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [4096], "dtype": "float32", "dist": "normal", "seed": 516, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [4096, 4096], "dtype": "float32" },
"residualT": { "shape": [4096, 4096], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-4096x4095-hidden4095-unaligned-largewidth",
"preset": "model",
"vars": { "rows": 4096, "hidden": 4095 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [4096, 4095], "dtype": "float32", "dist": "normal", "seed": 613, "scale": 0.2 },
"skipT": { "shape": [4096, 4095], "dtype": "float32", "dist": "normal", "seed": 614, "scale": 0.2 },
"gammaT": { "shape": [4095], "dtype": "float32", "dist": "uniform", "seed": 615, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [4095], "dtype": "float32", "dist": "normal", "seed": 616, "scale": 0.1 }
},
"outputs": {
"outputT": { "shape": [4096, 4095], "dtype": "float32" },
"residualT": { "shape": [4096, 4095], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 2 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-bias-8192x1025-unaligned-twopass-fallback",
"preset": "stress",
"vars": { "rows": 8192, "hidden": 1025 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [8192, 1025], "dtype": "float32", "dist": "normal", "seed": 713, "scale": 0.2 },
"skipT": { "shape": [8192, 1025], "dtype": "float32", "dist": "normal", "seed": 714, "scale": 0.2 },
"gammaT": { "shape": [1025], "dtype": "float32", "dist": "uniform", "seed": 715, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [1025], "dtype": "float32", "dist": "normal", "seed": 716, "scale": 0.1 },
"biasT": { "shape": [1025], "dtype": "float32", "dist": "normal", "seed": 717, "scale": 0.05 }
},
"outputs": {
"outputT": { "shape": [8192, 1025], "dtype": "float32" },
"residualT": { "shape": [8192, 1025], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 3 * args.hidden)" }] }
},
{
"name": "skip-layernorm-f32-bias-65535x1-wg1-lowoccupancy-fallback",
"preset": "edge",
"vars": { "rows": 65535, "hidden": 1 },
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "shape": [65535, 1], "dtype": "float32", "dist": "normal", "seed": 813, "scale": 0.2 },
"skipT": { "shape": [65535, 1], "dtype": "float32", "dist": "normal", "seed": 814, "scale": 0.2 },
"gammaT": { "shape": [1], "dtype": "float32", "dist": "uniform", "seed": 815, "scale": 0.1, "offset": 1 },
"betaT": { "shape": [1], "dtype": "float32", "dist": "normal", "seed": 816, "scale": 0.1 },
"biasT": { "shape": [1], "dtype": "float32", "dist": "normal", "seed": 817, "scale": 0.05 }
},
"outputs": {
"outputT": { "shape": [65535, 1], "dtype": "float32" },
"residualT": { "shape": [65535, 1], "dtype": "float32" }
},
"bench": { "metrics": [{ "type": "bandwidth", "value": "4 * (4 * args.rows * args.hidden + 3 * args.hidden)" }] }
},
{
"name": "independent_float32_rows257_option2",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float32", "shape": [257, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float32", "shape": [257, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [257, 1] } }
},
{
"name": "independent_float32_rows65537_option0",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 1.125 }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [65537, 1] } }
},
{
"name": "independent_float32_rows65537_option2",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [65537, 1] } }
},
{
"name": "independent_float32_rows65537_option3",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float32", "shape": [65537, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [65537, 1] },
"residualT": { "dtype": "float32", "shape": [65537, 1] }
}
},
{
"name": "independent_float16_rows257_option2",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float16", "shape": [257, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float16", "shape": [257, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": { "outputT": { "dtype": "float16", "shape": [257, 1] } }
},
{
"name": "independent_float16_rows65537_option0",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float16", "shape": [65537, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float16", "shape": [65537, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 1.125 }
},
"outputs": { "outputT": { "dtype": "float16", "shape": [65537, 1] } }
},
{
"name": "independent_float16_rows65537_option2",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float16", "shape": [65537, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float16", "shape": [65537, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": { "outputT": { "dtype": "float16", "shape": [65537, 1] } }
},
{
"name": "independent_float32_rows524289_wg8_fold",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float32", "shape": [524289, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float32", "shape": [524289, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float32", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [524289, 1] },
"residualT": { "dtype": "float32", "shape": [524289, 1] }
},
"tunables": { "MAX_WORKGROUP_SIZE": 8 }
},
{
"name": "independent_float16_rows524289_wg8_fold",
"preset": "edge",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputT": { "dtype": "float16", "shape": [524289, 1], "dist": "normal", "seed": 1301, "scale": 0.2 },
"skipT": { "dtype": "float16", "shape": [524289, 1], "dist": "normal", "seed": 1302, "scale": 0.2 },
"gammaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 1.125 },
"betaT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": -0.25 },
"biasT": { "dtype": "float16", "shape": [1], "dist": "constant", "value": 0.125 }
},
"outputs": { "outputT": { "dtype": "float16", "shape": [524289, 1] } },
"tunables": { "MAX_WORKGROUP_SIZE": 8 }
}
]
}
|