Skip to content

[Feat][Manifest] Promote non-LA code-present ops#1662

Merged
superAngGao merged 5 commits into
tile-ai:mainfrom
superAngGao:feat/issue-1650-wave0-non-la
Jul 7, 2026
Merged

[Feat][Manifest] Promote non-LA code-present ops#1662
superAngGao merged 5 commits into
tile-ai:mainfrom
superAngGao:feat/issue-1650-wave0-non-la

Conversation

@superAngGao

Copy link
Copy Markdown
Collaborator

Summary

Promote existing code-present operators into the release-facing manifest surface for the bounded #1660 batch, excluding Linear Attention and Mamba2/SSD work.

This PR adds manifest coverage for:

  • RoPE variants, including RopeNeoxPositionIdsOp
  • DropoutOp
  • narrow FP8 helper surfaces: FP8QuantOp, FP8LightingIndexerOp
  • TopkSelectorOp
  • standalone GroupedGemmOp
  • Engram fwd/bwd/decode
  • FFTC2COp
  • MHCPreOp / MHCPostOp

It also adds matching roofline formulas for these promoted entries.

Scope notes

This PR intentionally keeps the current runtime surface as the source of truth and avoids broad API redesigns. In particular:

  • Linear Attention and Mamba2/SSD promotion are left out of this batch.
  • New low-precision compute-core contracts such as FP8 GEMM, block-scaled GEMM, low-bit GEMM, sparse GEMM, and special swizzled layouts are out of scope.
  • _infer_output_shapes coverage and manifest-driven benchmark migration are kept as follow-up work. Existing validator warnings in those areas are advisory and do not block validate_manifest.py --strict.
  • Existing benchmark files are referenced with bench_manifest_driven: false to represent the current coverage honestly.

Validation

Ran in the TileOpsGov CI Docker image:

docker run --rm --entrypoint /bin/bash --gpus all --ipc host \
  -e PYTHONDONTWRITEBYTECODE=1 \
  -e PYTHONPYCACHEPREFIX=/tmp/pycache \
  -e RUFF_CACHE_DIR=/tmp/ruff-cache \
  -v /home/ga/TileOPs-issue1650-wave0:/workspace \
  -w /workspace \
  ghcr.io/tile-ai/tileops-runner:65dbc98-torch2.10 \
  -lc 'python scripts/validate_manifest.py --strict'
docker run --rm --entrypoint /bin/bash --gpus all --ipc host \
  -e PYTHONDONTWRITEBYTECODE=1 \
  -e PYTHONPYCACHEPREFIX=/tmp/pycache \
  -e RUFF_CACHE_DIR=/tmp/ruff-cache \
  -v /home/ga/TileOPs-issue1650-wave0:/workspace \
  -w /workspace \
  ghcr.io/tile-ai/tileops-runner:65dbc98-torch2.10 \
  -lc 'python -m ruff check tileops/perf/formulas.py'

Both passed. validate_manifest.py --strict reports existing advisory warnings for shape-infer rollout and non-manifest-driven benches, but no hard errors.

Closes #1660.
Part of #1650.

@superAngGao superAngGao requested a review from a team July 7, 2026 07:40
@superAngGao superAngGao changed the title Promote non-LA code-present ops to manifest [Feat][Manifest] Promote non-LA code-present ops Jul 7, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces several new operators to the manifest—including FP8 lighting indexer, Top-K selector, grouped GEMM, various RoPE variants, FP8 quantization, dropout, Engram, FFT, and MHC operators—along with their corresponding roofline performance formulas in tileops/perf/formulas.py. The review feedback highlights critical correctness issues in several of the newly added roofline formulas: FP8LightingIndexerOp misses element size scaling for its inputs; FFTC2COp incorrectly calculates bytes due to unsupported complex types in _dtype_itemsize; and both MHCPreOp and MHCPostOp contain severe math errors that enormously overestimate FLOPs and miscalculate memory traffic by omitting dtypes, tensors, or batch dimensions.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread tileops/perf/formulas.py
Comment thread tileops/perf/formulas.py
Comment thread tileops/perf/formulas.py Outdated
Comment thread tileops/perf/formulas.py Outdated
@superAngGao superAngGao requested a review from zhen8838 July 7, 2026 08:43

@zhen8838 zhen8838 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved after re-reviewing current head 4d660c0. The earlier manifest workload/source-path blockers are fixed and required CI is green.

@superAngGao superAngGao merged commit 79a8d61 into tile-ai:main Jul 7, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Manifest] Promote non-LA non-Mamba code-present ops

2 participants