# Task-grain 完整结果

全部为 FP32、W8、8 个请求的 CPU workers、full-packet 特化开启、fusion 关闭。时间为各轮 p50 的中位数（µs），配对比值单独复算；不把不同尺寸合并成一个平均加速比。

## pilot

候选策略见 notes.md；attention 不支持 local 候选，用 — 明确标出，未把未实现的路径计作胜利。

| 算子 / 尺寸 | whole | local | joint_legacy | joint_tasks | 配对比值 | 配对范围 |
|---|---:|---:|---:|---:|---:|---:|
| rmsnorm 17×65 | 1.299 | 37.542 | 36.190 | 9.637 | 0.267 | 0.250–0.284 |
| rmsnorm 64×256 | 38.197 | 35.811 | 34.100 | 5.544 | 0.163 | 0.154–0.172 |
| rmsnorm 1024×4096 | 534.707 | 266.877 | 273.469 | 268.563 | 0.982 | 0.971–0.993 |
| gelu_residual 64×256 | 66.001 | 59.702 | 58.386 | 39.814 | 0.682 | 0.679–0.685 |
| swiglu 64×256 | 53.555 | 48.670 | 48.173 | 22.233 | 0.462 | 0.459–0.464 |

## validation

候选策略见 notes.md；attention 不支持 local 候选，用 — 明确标出，未把未实现的路径计作胜利。

| 算子 / 尺寸 | whole | local | joint_legacy | joint_tasks | 配对比值 | 配对范围 |
|---|---:|---:|---:|---:|---:|---:|
| rmsnorm 3×1024 | 5.134 | 0.901 | 0.889 | 0.872 | 0.979 | 0.938–1.035 |
| rmsnorm 129×768 | 66.057 | 51.607 | 50.656 | 50.541 | 1.003 | 0.976–1.020 |
| rmsnorm 257×1538 | 107.827 | 301.522 | 298.982 | 298.585 | 1.000 | 0.997–1.003 |
| rmsnorm 4096×1024 | 533.604 | 259.271 | 264.673 | 268.801 | 1.020 | 1.004–1.060 |
| layernorm 3×1024 | 7.410 | 1.379 | 1.427 | 1.379 | 0.969 | 0.948–1.001 |
| layernorm 129×768 | 72.343 | 60.775 | 60.631 | 63.750 | 1.010 | 0.985–1.094 |
| layernorm 257×1538 | 111.495 | 496.707 | 498.232 | 498.079 | 1.000 | 0.989–1.008 |
| layernorm 4096×1024 | 644.385 | 326.886 | 359.189 | 389.362 | 1.122 | 0.926–1.218 |
| masked_softmax 3×1024 | 22.440 | 7.230 | 7.299 | 7.210 | 0.986 | 0.972–0.997 |
| masked_softmax 129×768 | 123.033 | 89.063 | 89.006 | 88.849 | 0.999 | 0.984–1.011 |
| masked_softmax 257×1538 | 204.059 | 639.346 | 634.649 | 638.338 | 1.007 | 0.985–1.020 |
| masked_softmax 4096×1024 | 1664.745 | 1379.592 | 1377.745 | 1383.724 | 1.005 | 1.002–1.185 |
| swiglu 3×1024 | 16.764 | 4.179 | 4.180 | 4.199 | 1.002 | 0.991–1.013 |
| swiglu 129×768 | 108.594 | 71.913 | 71.783 | 132.570 | 1.845 | 1.839–1.918 |
| swiglu 257×1538 | 177.304 | 355.822 | 353.987 | 354.053 | 1.000 | 0.996–1.006 |
| swiglu 4096×1024 | 1303.142 | 878.444 | 880.558 | 888.855 | 1.010 | 0.962–1.328 |
| gelu_residual 3×1024 | 32.928 | 7.526 | 7.579 | 7.576 | 1.000 | 0.983–1.001 |
| gelu_residual 129×768 | 134.133 | 90.787 | 91.224 | 90.590 | 0.995 | 0.976–1.003 |
| gelu_residual 257×1538 | 250.174 | 438.549 | 438.787 | 439.307 | 1.000 | 0.990–1.003 |
| gelu_residual 4096×1024 | 1949.058 | 1489.365 | 1496.963 | 1489.228 | 0.995 | 0.944–1.085 |
| rope 3×1024 | 5.787 | 0.849 | 0.846 | 0.856 | 1.014 | 1.011–1.020 |
| rope 129×768 | 69.660 | 53.392 | 53.553 | 53.488 | 1.004 | 0.869–1.025 |
| rope 257×1538 | 121.894 | 381.611 | 351.179 | 337.388 | 0.948 | 0.708–1.065 |
| rope 4096×1024 | 696.061 | 412.354 | 416.905 | 422.412 | 1.019 | 1.002–1.055 |
| attention 1×4×2×16×32×16×16 | 34.795 | — | 35.189 | 14.872 | 0.424 | 0.387–0.428 |
| attention 1×4×1×64×128×32×32 | 99.788 | — | 99.982 | 103.081 | 1.009 | 1.001–1.084 |

## fixed-grain

固定 local=8、block=32；最后一列候选将整个 launch 放在 caller 执行。代码与输出逐字节相同。

| 算子 / 尺寸 | grain_0 | grain_1 | grain_3 | grain_4294967295 | 配对比值 | 配对范围 |
|---|---:|---:|---:|---:|---:|---:|
| rmsnorm 17×66 | 36.241 | 42.038 | 41.396 | 9.593 | 0.266 | 0.249–0.282 |
| rmsnorm 129×768 | 52.909 | 54.001 | 49.813 | 25.662 | 0.486 | 0.469–0.502 |
| rmsnorm 1024×4096 | 281.013 | 273.490 | 258.943 | 1118.108 | 3.980 | 3.925–4.034 |
| layernorm 17×66 | 38.869 | 38.297 | 37.945 | 15.591 | 0.401 | 0.401–0.402 |
| layernorm 129×768 | 62.951 | 62.122 | 60.889 | 42.272 | 0.672 | 0.665–0.678 |
| layernorm 1024×4096 | 359.795 | 354.193 | 334.459 | 1896.006 | 5.276 | 5.053–5.498 |
| masked_softmax 17×66 | 41.428 | 41.448 | 41.617 | 20.009 | 0.483 | 0.480–0.486 |
| masked_softmax 129×768 | 85.638 | 85.855 | 85.958 | 227.854 | 2.661 | 2.630–2.692 |
| masked_softmax 1024×4096 | 1380.510 | 1379.884 | 1391.696 | 9787.093 | 7.089 | 7.084–7.095 |
| swiglu 17×66 | 34.179 | 34.133 | 33.045 | 9.768 | 0.286 | 0.282–0.290 |
| swiglu 129×768 | 73.753 | 73.501 | 70.262 | 132.546 | 1.797 | 1.797–1.798 |
| swiglu 1024×4096 | 866.057 | 846.621 | 878.659 | 5641.715 | 6.516 | 6.399–6.634 |
| gelu_residual 17×66 | 35.773 | 37.711 | 34.668 | 11.987 | 0.335 | 0.332–0.338 |
| gelu_residual 129×768 | 86.084 | 85.841 | 82.608 | 239.004 | 2.776 | 2.769–2.784 |
| gelu_residual 1024×4096 | 1457.075 | 1461.410 | 1468.600 | 10236.635 | 7.025 | 7.021–7.030 |
| rope 17×66 | 34.642 | 34.427 | 33.017 | 9.214 | 0.266 | 0.262–0.270 |
| rope 129×768 | 56.531 | 56.412 | 53.767 | 27.680 | 0.490 | 0.486–0.493 |
| rope 1024×4096 | 420.953 | 419.519 | 384.597 | 1347.823 | 3.203 | 3.071–3.336 |
