diff --git a/hooks.py b/hooks.py index 838c0afe..f7b01b8d 100644 --- a/hooks.py +++ b/hooks.py @@ -78,9 +78,9 @@ def on_page_markdown(markdown, page, config, files): # page reaches the nav without editing this list. _BENCH_ORDER = [ "index.md", "reading.md", - "elementwise.md", "reduction.md", "normalization.md", "conv-pool.md", - "gemm.md", "quantization.md", "attention.md", "moe.md", - "linear-attention.md", "ssm.md", "other.md", + "elementwise.md", "rope.md", "reduction.md", "normalization.md", + "conv-pool.md", "gemm.md", "quantization.md", "attention.md", + "moe.md", "linear-attention.md", "ssm.md", "other.md", ] diff --git a/scripts/gen_bench_pages.py b/scripts/gen_bench_pages.py index b9b4999d..f19c3f84 100644 --- a/scripts/gen_bench_pages.py +++ b/scripts/gen_bench_pages.py @@ -95,7 +95,7 @@ def tier_of(tag: str) -> str: "ssm": "SSM", "scan": "Scan", "normalization": "Normalization", "moe": "MoE", "linear_algebra": "GEMM", "reduction": "Reduction", "elementwise": "Elementwise", "convolution": "Convolution", "pool": "Pooling", - "quantization": "Quantization", "positional": "Positional Encoding", + "quantization": "Quantization", "positional": "RoPE", "fft": "FFT", "mhc": "MHC", "topk": "Top-k", "other": "Other", } # Ops a family lists in a fixed order rather than by verdict, named as the page @@ -108,12 +108,14 @@ def tier_of(tag: str) -> str: "BmmFp8NKFwd", "BmmFp8KNFwd"], } # (slug, page title, families in display order). One page per family, ordered -# from the simplest op to the most composed: pointwise, then reductions over an -# axis, then the normalizations built on them, then the sliding-window ops, then -# the matrix-multiply pages, then the sequence-mixing ops. `Other` is last and -# holds every family too small to carry a page. +# from the simplest op to the most composed: pointwise, then the positional +# rotation applied to one tensor, then reductions over an axis, then the +# normalizations built on them, then the sliding-window ops, then the +# matrix-multiply pages, then the sequence-mixing ops. `Other` is last and holds +# every family too small to carry a page. DATA_PAGES = [ ("elementwise", "Elementwise", ["elementwise"]), + ("rope", "RoPE", ["positional"]), ("reduction", "Reduction", ["reduction"]), ("normalization", "Normalization", ["normalization"]), ("conv-pool", "Conv & Pool", ["convolution", "pool"]), @@ -123,8 +125,7 @@ def tier_of(tag: str) -> str: ("moe", "MoE", ["moe"]), ("linear-attention", "Linear Attention", ["linear_attention"]), ("ssm", "SSM", ["ssm"]), - ("other", "Other", - ["positional", "fft", "mhc", "topk", "scan", "other"]), + ("other", "Other", ["fft", "mhc", "topk", "scan", "other"]), ] _KEYWORD_FAMILY = [ (("mamba", "ssd", "ssm"), "ssm"),