Skip to content

[TPU] Make --list-impls-for-benchmark-ci TPU-aware#3020

Draft
norx1991 wants to merge 1 commit into
mainfrom
yifeixu/tpu-list-impls-device
Draft

[TPU] Make --list-impls-for-benchmark-ci TPU-aware#3020
norx1991 wants to merge 1 commit into
mainfrom
yifeixu/tpu-list-impls-device

Conversation

@norx1991

@norx1991 norx1991 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

--list-impls-for-benchmark-ci reads the static dashboard metric map and prints the impls + baseline for a kernel, which the nightly uses to auto-derive --only. On --device tpu, this now filters to the implementations that actually run on TPU — Helion (Pallas), the eager baseline, and torch.compile — and drops Triton/CUDA-specific kernels (triton_*, liger_*, mamba_ssm, flash-linear-attention, cutlass/quack, …) which crash on TPU (no active Triton driver).

Uses a positive allowlist of TPU-capable execution-mode prefixes, so new GPU-only backends are excluded by default; only a genuinely new TPU-runnable execution mode needs a central edit. Kernels whose baseline is itself a GPU-only kernel (e.g. fp8_attention's Triton baseline) are skipped with a warning. Non-TPU behavior is unchanged.

Inert until a TPU bridge nightly consumes it (a follow-up will add benchmark_tpu_bridge.yml on top of this). Enables that workflow to reuse the GPU nightly's auto-discovery instead of hardcoding per-kernel --only lists.

On --device tpu, filter the CI impl list to the implementations that actually
run on TPU -- Helion (Pallas), the eager baseline, and torch.compile -- and drop
Triton/CUDA-specific kernels (triton_*, liger_*, mamba_ssm, flash-linear-
attention, cutlass/quack, etc.) which crash on TPU (no active Triton driver).

Uses a positive allowlist of TPU-capable execution-mode prefixes, so new
GPU-only backends are excluded by default; only a genuinely new TPU-runnable
execution mode needs a central tuple edit. Kernels whose baseline is itself a
GPU-only kernel (e.g. fp8_attention's triton baseline) are skipped with a
warning. Non-TPU behavior is unchanged.

Enables benchmark_tpu_bridge.yml to reuse the GPU nightly's auto-discovery
(--list-impls) instead of hardcoding per-kernel --only lists.
@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Meta Open Source bot. label Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Meta Open Source bot.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant