FlashInfer: Kernel Library for LLM Serving
This report presents the forensic synthetic code analysis of flashinfer-ai/flashinfer, a Python project with 6,274 GitHub stars. SynthScan v2.0 examined 1,185,501 lines of code across 2129 source files, recording 14715 pattern matches distributed across 22 syntactic categories. The overall adjusted score of 20.1 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 14715 distinct pattern matches across 22 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | csrc/fused_moe/monomoe/src/ptx_utils.h | 14 | // ── cp.async scalar helpers (sm_80+) ────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/ptx_utils.h | 35 | // ── Hopper WGMMA (sm_90a) helpers ───────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/ptx_utils.h | 148 | // ── Hopper mbarrier helpers (sm_90a) ────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/ptx_utils.h | 309 | // ── Hopper TMA bulk-tensor copy (sm_90a) ────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_tma.h | 214 | // ─── Device-side TMA load helpers ──────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_tma.h | 437 | // ─── Down-projection (Phase 4) TMA load helpers ────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_interface.h | 40 | // ── Single fixed-shape Dims (E=256, N=512, K=2048 block-wise FP8) ───────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 24 | // ── KernelConfig opt-in detection ─────────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 257 | // ── Sentinel-based Phase 3 → 4 handoff state (tail fields) ──────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 285 | // ── Phase 4 → 5 readiness flags (replaces the site-#3 barrier) ──────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 285 | // ── Phase 4 → 5 readiness flags (replaces the site-#3 barrier) ──────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 306 | // ── Sentinel handoff helpers (Phase 3 → 4) ──────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 409 | // ── WGMMA tile geometry ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 427 | // ── Down-proj outer K-step (K_STEP_DOWN tunable) ────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 437 | // ── Down-proj TMA pipeline depth (DOWN_PIPE_DEPTH tunable) ──────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 451 | // ── Up-proj outer K-step (K_STEP_UP tunable) ────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 462 | // ── Up-proj weight-TMA lookahead (UP_W_SLOTS tunable) ───────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 483 | // ── Up-proj col-halves (M-axis 128-row atoms per block) ─────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 501 | // ── Down-projection grid layout ─────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 665 | // ── mbarriers (16-B alignment required by SM90 mbarrier PTX) ───── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 678 | // ── Phase 3 → Phase 4 (expert, token) reorganization tables ────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 730 | // ── Common fields ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | csrc/fused_moe/monomoe/src/moe_internal.h | 781 | // ── Warp identity helpers ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 751 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 753 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1467 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1469 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1588 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1590 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1654 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1656 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1686 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 1688 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2108 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2110 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2154 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2156 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2226 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2228 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2286 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2288 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2456 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2458 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2467 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2469 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2539 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/kda/test_recurrent_kda.py | 2541 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 42 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 44 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 112 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 114 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 133 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 135 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 512 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 514 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 906 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 908 | # ============================================================================== | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 1068 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 1070 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/kda/test_recurrent_kda.py | 1369 | # ------------------------------------------------------------------------------ | COMMENT |
| 3488 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build_backend.py | 349 | def _synthesize_nccl_builddir(build: Path) -> None: | CODE |
| LOW | build_backend.py | 407 | def _check_nccl_version_drift(wheel: Path) -> None: | CODE |
| LOW | build_backend.py | 686 | def _install_nvep_runtime_wheels(built_nixl: bool) -> None: | CODE |
| LOW | build_backend.py | 780 | def _install_cuda_tile_compile_deps() -> None: | CODE |
| LOW⚡ | build_backend.py | 1129 | def get_requires_for_build_wheel(config_settings=None): | CODE |
| LOW⚡ | build_backend.py | 1134 | def get_requires_for_build_sdist(config_settings=None): | CODE |
| LOW⚡ | build_backend.py | 1139 | def get_requires_for_build_editable(config_settings=None): | CODE |
| LOW⚡ | build_backend.py | 1144 | def prepare_metadata_for_build_wheel(metadata_directory, config_settings=None): | CODE |
| LOW⚡ | build_backend.py | 1149 | def prepare_metadata_for_build_editable(metadata_directory, config_settings=None): | CODE |
| LOW | build_utils.py | 35 | def get_dependency_requirements( | CODE |
| LOW⚡ | build_utils.py | 61 | def get_build_dependency_requirements( | CODE |
| LOW⚡ | build_utils.py | 68 | def get_cuda_extra_dependency_requirements( | CODE |
| LOW⚡ | build_utils.py | 75 | def get_ci_image_dependency_requirements( | CODE |
| LOW | flashinfer-cubin/build_backend.py | 110 | def get_requires_for_build_wheel(config_settings=None): | CODE |
| LOW | flashinfer-cubin/build_backend.py | 118 | def get_requires_for_build_editable(config_settings=None): | CODE |
| LOW | ci/validate_cuda_versions.py | 116 | def _validate_dependency_policy( | CODE |
| LOW | tests/conftest.py | 13 | def _patch_cutlass_dsl_operand_major_mode(): | CODE |
| LOW | tests/conftest.py | 81 | def _set_torch_compile_options(): | CODE |
| LOW | tests/conftest.py | 87 | def _monkeypatch_add_torch_compile(func): | CODE |
| LOW | tests/conftest.py | 180 | def pytest_collection_modifyitems(config, items): | CODE |
| LOW | tests/test_env.py | 70 | def test_env_var_overrides_package(monkeypatch, tmp_path): | CODE |
| LOW⚡ | tests/test_env.py | 81 | def test_package_used_when_no_env_var(monkeypatch, tmp_path): | CODE |
| LOW⚡ | tests/test_env.py | 91 | def test_env_var_used_when_no_package(monkeypatch, tmp_path): | CODE |
| LOW⚡ | tests/test_env.py | 99 | def test_default_when_nothing_set(monkeypatch): | CODE |
| LOW | tests/test_artifacts.py | 13 | def test_sanity_check_urllib_behavior(): | CODE |
| LOW | tests/test_artifacts.py | 217 | def _mock_file_index_responses(): | STRING |
| LOW | tests/test_artifacts.py | 231 | def test_get_available_cubin_files(): | STRING |
| LOW | tests/test_artifacts.py | 282 | def test_get_checksums_unreachable_pin_raises(monkeypatch, tmp_path): | CODE |
| LOW | tests/test_artifacts.py | 302 | def test_get_checksums_falls_back_to_cached_manifest(monkeypatch, tmp_path): | CODE |
| LOW | tests/test_artifacts.py | 327 | def test_get_subdir_file_list(monkeypatch, tmp_path): | CODE |
| LOW | tests/test_artifacts.py | 467 | def test_get_checksums_keys_by_full_path(monkeypatch, tmp_path): | STRING |
| LOW | tests/test_fuzz_ledger.py | 17 | def test_fuzz_ledger_requires_tracking_issue(): | CODE |
| LOW | tests/test_fuzz_ledger.py | 22 | def test_fuzz_ledger_quarantine_precedes_tolerated_overlap(): | CODE |
| LOW⚡ | tests/test_fuzz_ledger.py | 38 | def test_fuzz_ledger_backend_scope_is_exact(): | CODE |
| LOW⚡ | tests/test_fuzz_ledger.py | 48 | def test_fuzz_ledger_global_quarantine_xfails_before_launch(): | CODE |
| LOW⚡ | tests/test_fuzz_ledger.py | 58 | def test_fuzz_ledger_reports_accumulated_expected_failures_as_xfail(): | CODE |
| LOW | tests/test_fuzz_ledger.py | 70 | def test_fuzz_ledger_unexpected_pass_is_strict_failure(): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 257 | def test_exact_supported_shape_table(name, seq_lens, num_heads, packed): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 277 | def test_unsupported_shapes_are_rejected(shape, cu_numel): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 282 | def test_high_metadata_matches_chunk_schedule(): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 318 | def test_packed_offsets_with_same_total_and_count_are_rejected(monkeypatch): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 342 | def test_scale_and_lower_bound_are_fixed(monkeypatch, scale, lower_bound, match): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 379 | def test_high_ffi_abi_and_capture_prepare_flag(monkeypatch): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 420 | def test_backward_matches_pytorch_reference(seq_lens, num_heads, packed): | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 448 | def test_backward_matches_fla_reference_all_supported_shapes( | CODE |
| LOW | tests/kda/test_recurrent_kda_backward.py | 467 | def test_cuda_graph_capture_after_exact_warmup(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 763 | def test_non_contiguous_gate_stride(H: int, D: int): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 1473 | def test_spec_decode_padded_cuda_graph(D): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 1593 | def test_spec_decode_shape_validation(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 1659 | def test_spec_decode_cu_seqlens_validation(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 1691 | def test_spec_decode_num_accepted_tokens(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2113 | def test_spec_decode_checkpoint_correctness(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2159 | def test_spec_decode_non_compact_state(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2231 | def test_spec_decode_all_padded(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2291 | def test_spec_decode_validate_slots_collision(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2472 | def test_spec_decode_batched_vs_cuseqlens(): | CODE |
| LOW⚡ | tests/kda/test_recurrent_kda.py | 2544 | def test_spec_decode_batched_auto_ssi(): | CODE |
| LOW | tests/kda/test_recurrent_kda.py | 97 | def naive_kda_lowerbound_gate( | CODE |
| LOW | tests/kda/test_recurrent_kda.py | 152 | def _make_vs_reference_tensors(B, T, H, D, gate_logit_normalizer, dtype): | CODE |
| LOW | tests/kda/test_recurrent_kda.py | 182 | def test_recurrent_kda_vs_naive( | CODE |
| 4871 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | build_backend.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/attention/test_nvfp4_attention_sm120.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/attention/test_workspace_size.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/attention/test_cake_vsa.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/attention/test_cake_vsa_planning.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/trace/test_b12x_moe_trace.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe_ep/test_sm90_push_fp8_gemm.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/mamba/test_cake_ssd_combined.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/comm/test_mixed_comm_checkpoint.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/comm/test_pcie_ipc_all_reduce.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/utils/test_collect_env.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/utils/test_gen_module_symlink_race_condition.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/utils/test_gated_act_mxfp8.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/gemm/test_group_gemm_fp4.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe/test_cute_dsl_mxfp8_mxfp4_grouped_gemm.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe/test_b12x_fused_moe.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe/test_unified_moe_mxfp4.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe/test_hash_topk.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | tests/moe/test_trtllm_gen_moe_autotune_tactics.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/bench_sm120_attention.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/gdn_triton_reference.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/routines/gdn.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/routines/mamba.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/routines/kda.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | benchmarks/routines/sampling.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/mhc.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/collect_env.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/nvfp4_attention_sm120.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/kda_backward.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/cake_vsa.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/msa_ops/proxy_score.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/msa_ops/sparse_prefill.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/msa_ops/sparse_topk_select.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | …e_ep/kernel_src/sm90/push_style_megamoe/shim/runner.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | …/moe_ep/kernel_src/sm90/push_style_megamoe/shim/jit.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | …_ep/kernel_src/sm90/push_style_megamoe/shim/weights.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/mamba/cake_ssd_combined.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/comm/mixed_comm.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/comm/ulysses_topology.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/comm/pcie_ipc_topology.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/comm/pcie_ipc_ar.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/fused_moe/hash_topk.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/fused_moe/trtllm_gen_routing.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/mla/_core.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/gemm/gemm_mm_fp4_cute_dsl.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/gemm/gemm_mm_mxfp8_cute_dsl.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/gemm/gemm_svdquant.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/rmsnorm_silu.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/gdn_fused_decode.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/cake_flash_kda_packed_t1.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/cake_dcp.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/hash_topk.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/flash_kda_training.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/mhc.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/flash_kda_backward.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/cute_dsl_core.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/cake_router_gemm.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/blackwell_msa.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/flash_kda.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| HIGH | flashinfer/jit/nvfp4_attention_sm120.py | 0 | copyright (c) 2025 by flashinfer team. licensed under the apache license, version 2.0 (the "license"); you may not use t | STRING |
| 636 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/test_ci_image.py | 4 | CODE | |
| LOW | ci/validate_cuda_versions.py | 4 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle_nvfp4.py | 23 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle.py | 46 | CODE | |
| LOW | tests/kda/test_recurrent_kda_prefill_sm120.py | 37 | CODE | |
| LOW | tests/attention/test_attention_ts_decode.py | 17 | CODE | |
| LOW | tests/attention/test_sparse_mla_sm120.py | 31 | CODE | |
| LOW | tests/attention/test_dcp_spec_fp8.py | 3 | CODE | |
| LOW | tests/attention/test_attention_ts_block_sparse.py | 17 | CODE | |
| LOW | tests/attention/test_attention_ts_context.py | 17 | CODE | |
| LOW | tests/attention/cake_dcp_public_validation.py | 8 | CODE | |
| LOW | tests/attention/test_attention_ts_mla_decode.py | 17 | CODE | |
| LOW | tests/attention/test_rope.py | 19 | CODE | |
| LOW | tests/trace/test_moe_shared_experts_trace.py | 4 | CODE | |
| LOW | tests/trace/reference_utils.py | 3 | CODE | |
| LOW | tests/trace/test_fi_trace_template_consistency.py | 727 | CODE | |
| LOW | tests/trace/template_registry.py | 28 | CODE | |
| LOW | tests/moe_ep/test_mega_cuda_graph.py | 22 | CODE | |
| LOW | tests/moe_ep/smoke_nixl_ep.py | 12 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_packaging.py | 3 | CODE | |
| LOW | tests/moe_ep/test_fleet_create.py | 3 | CODE | |
| LOW | tests/moe_ep/test_weight_pack_union.py | 9 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_fault_tolerance_multirank.py | 21 | CODE | |
| LOW | tests/moe_ep/conftest.py | 3 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_bf16_cutedsl_mega_multirank.py | 8 | CODE | |
| LOW | tests/moe_ep/test_workspace_pool.py | 10 | CODE | |
| LOW | tests/moe_ep/test_nvfp4_cutedsl_kernel_vs_reference.py | 23 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_mxfp8_dispatch_multirank.py | 17 | CODE | |
| LOW | tests/moe_ep/test_bf16_cutedsl_kernel_vs_reference.py | 3 | CODE | |
| LOW | tests/moe_ep/test_compute_bridge.py | 18 | CODE | |
| LOW | tests/moe_ep/test_fault_tolerance_api.py | 7 | CODE | |
| LOW | tests/moe_ep/_sm90_push_fp8_reference.py | 3 | CODE | |
| LOW | …sts/moe_ep/test_moe_ep_sm90_pull_fp8_mega_multirank.py | 43 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_backend.py | 3 | CODE | |
| LOW | tests/moe_ep/test_layer_factory.py | 3 | CODE | |
| LOW | tests/moe_ep/test_deep_gemm_mega_kernel_vs_reference.py | 29 | CODE | |
| LOW | tests/moe_ep/test_fused_quant_stage.py | 17 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_compute_correctness.py | 11 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_compute_correctness_nvfp4.py | 16 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_kernel.py | 3 | CODE | |
| LOW | tests/moe_ep/test_fault_tolerance_reconcile.py | 8 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_gemm_contract.py | 3 | CODE | |
| LOW | tests/moe_ep/test_split_kernels.py | 7 | CODE | |
| LOW | tests/moe_ep/test_constraints.py | 3 | CODE | |
| LOW | …sts/moe_ep/test_split_fused_moe_kernel_vs_reference.py | 25 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_ht_correctness.py | 15 | CODE | |
| LOW | tests/moe_ep/test_deprecated_aliases.py | 14 | CODE | |
| LOW | tests/moe_ep/_sm90_push_fp8_baseline.py | 3 | CODE | |
| LOW | tests/moe_ep/test_mxfp8_mxfp4_cutedsl_split_kernel.py | 16 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_deep_gemm_mega_multirank.py | 22 | CODE | |
| LOW | tests/moe_ep/test_sm90_pull_fp8_kernel_vs_reference.py | 27 | CODE | |
| LOW | tests/moe_ep/test_config.py | 3 | CODE | |
| LOW | tests/moe_ep/test_fused_moe_weights.py | 3 | CODE | |
| LOW | tests/moe_ep/test_moe_ep_layer_multirank.py | 12 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_orchestrator.py | 3 | CODE | |
| LOW | tests/moe_ep/smoke_ft_ep.py | 20 | CODE | |
| LOW | …sts/moe_ep/test_moe_ep_mxfp8_cutedsl_mega_multirank.py | 29 | CODE | |
| LOW | tests/moe_ep/test_sm90_pull_fp8_config.py | 13 | CODE | |
| LOW | tests/moe_ep/test_arch_and_build.py | 3 | CODE | |
| LOW | tests/moe_ep/test_knob_cache.py | 11 | CODE | |
| 1919 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | requirements.txt | 1 | apache-tvm-ffi>=0.1.6,!=0.1.8,!=0.1.8.post0,<0.2 | COMMENT |
| LOW | .pre-commit-config.yaml | 1 | # To use: | COMMENT |
| LOW | pyproject.toml | 1 | # Copyright (c) 2024 by FlashInfer team. | COMMENT |
| LOW | build_backend.py | 301 | # We do NOT stage the base NIXL libraries (libnixl.so, libnixl_capi.so, | COMMENT |
| LOW | build_backend.py | 481 | dst = _moe_ep_pkg / "backends" / "split" / "comm" / "nccl_ep" / "_libs" | COMMENT |
| LOW | csrc/topk_transform_checks.h | 21 | // (radix_topk_page_table_transform and cub_topk_page_table_transform), so the backends | COMMENT |
| LOW | csrc/fmha_v2/fused_multihead_attention.h | 201 | int64_t softmax_stats_stride_in_bytes; | COMMENT |
| LOW | …/fmha_v2/fused_multihead_attention_kernel_4x1_hopper.h | 461 | // Create buffer_full barriers with 1 arrive count | COMMENT |
| LOW | csrc/fmha_v2/fused_multihead_attention_utils.h | 801 | int const* cu_mask_rows) { | COMMENT |
| LOW | …/fused_multihead_flash_attention_kernel_noloop_tiled.h | 241 | float global_sum[Softmax::ROWS_PER_THREAD]; | COMMENT |
| LOW | csrc/fmha_v2/fused_multihead_attention_kernel.h | 21 | #include <fmha/smem_tile_o.h> | COMMENT |
| LOW | csrc/fmha_v2/fused_multihead_attention_kernel.h | 41 | // - P = norm * K^T * Q , where norm is the normalization term (a scalar), | COMMENT |
| LOW | …c/fmha_v2/fused_multihead_attention_demo_bert_params.h | 101 | // The stride between matrices of packed mask. | COMMENT |
| LOW | …c/fmha_v2/fused_multihead_attention_demo_bert_params.h | 181 | #ifdef SKIP_SOFTMAX_STAT | COMMENT |
| LOW | csrc/fmha_v2/fmha/softmax.h | 1041 | } | COMMENT |
| LOW | csrc/fmha_v2/fmha/mask.h | 341 | } | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 21 | #include <__clang_cuda_builtin_vars.h> | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 61 | using Unpack_remaining = typename Unpack<Ns...>::Type; | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 81 | // (84): here | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 101 | struct Cond_inspect_ns { | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 801 | // asm volatile("fma.rn.f16x2.relu %0, %1, %2, %3;" : "=r"(c) : "r"(a), "r"(one), | COMMENT |
| LOW | csrc/fmha_v2/fmha/utils.h | 821 | // return dst; | COMMENT |
| LOW | csrc/fmha_v2/fmha/paged_kv_cache.h | 21 | struct Kv_block_array { | COMMENT |
| LOW | csrc/fmha_v2/fmha/gmem_tile_o_packed.h | 1281 | // The scale. | COMMENT |
| LOW | csrc/fmha_v2/fmha/kernel_traits.h | 21 | #include <fmha/gmem_tile_qkv.h> | COMMENT |
| LOW | csrc/fmha_v2/fmha/fragment.h | 141 | f.reg(4 * ii + 0) = tmp.x; | COMMENT |
| LOW | csrc/fmha_v2/fmha/smem_tile_v.h | 481 | t[3] = y; | COMMENT |
| LOW | csrc/fmha_v2/fmha/smem_tile_v.h | 601 | // Jump by 8*16 rows per K but account for packing. | COMMENT |
| LOW | csrc/fmha_v2/fmha/smem_tile_v.h | 921 | uint2 tmp_0; | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/dma.h | 341 | q_steps, | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/dma.h | 721 | named_barrier_wait(SYNC_BARRIER, NUM_THREADS_IN_DMA_GROUP); | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/dma.h | 741 | // | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/compute.h | 581 | // results once. For example, STEP_KV=256, qgmma.K=32, then 256/32=8 MMAs are needs, | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/kernel_traits.h | 41 | int Q_BUFFERS_, | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/kernel_traits.h | 201 | // Apply the exp2f optimization (fuse bmm1_scale and -max into FMAs). | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/kernel_traits.h | 421 | // The step size in key/value sequence dimension (N of BMM1 and K of BMM2). | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/arrive_wait.h | 21 | COMMENT | |
| LOW | csrc/fmha_v2/fmha/hopper/arrive_wait.h | 41 | #endif | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/smem_tile.h | 1801 | tmp[nii][ki].w); // PRMT 2+3 | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/smem_tile.h | 1821 | // [g0, g1] [o0, o1] => y: [g0, h0, o0, p0], i.e. col 0 | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/smem_tile.h | 2001 | // [00, 01] | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/smem_tile.h | 2121 | BYTES_PER_STS, 1, 0, ROWS_PER_XOR_PATTERN, 1>; | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/smem_tile.h | 2321 | // w: +24 (o) | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/gmem_tile_o_packed.h | 601 | int64_t row_offset = | COMMENT |
| LOW | csrc/fmha_v2/fmha/hopper/fragment.h | 281 | Gmma_single_desc_b::TRANS_MODE == fmha::Gmma_descriptor_transpose::TRANS ? true : false, | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/ptx_utils.h | 1 | #ifndef PTX_UTILS_H | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/ptx_utils.h | 141 | "wgmma.mma_async.sync.aligned.m64n8k32.f32.e4m3.e4m3 " | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_tma.h | 1 | #ifndef MOE_TMA_H | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_tma.h | 21 | // CUDA Driver API: provides `CUtensorMap` and `cuTensorMapEncodeTiled`. | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_tma.h | 441 | // `create_down_weight_tma_desc` and `create_down_activation_tma_desc`. | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_interface.h | 61 | static constexpr uint32_t DOWN_SCALE_COLS = (N + BLOCK_SCALE_COL - 1) / BLOCK_SCALE_COL; // 4 | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 241 | static constexpr size_t TEMP_FP8_OFFSET = offsetof(MoEGemmSpec<Dims>, temp_fp8); | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 261 | // sites): a `temp_act_scale` cell doubles as the readiness | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 281 | // to preserve the head-field layout invariant documented above. | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 561 | static constexpr uint32_t FP8_ACT_NUM_CHUNKS = CoreDims::K_STEP_WGMMA / FP8_ACT_K_CHUNK; // 8 | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 601 | // trailing sync (before any weight TMA fires), and w_wgmma's last | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 641 | // prefetch/epilogue slots hidden behind WGMMA and TMA waits, so padding | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 681 | // for expert id (expert-sorted layout). | COMMENT |
| LOW | csrc/fused_moe/monomoe/src/moe_internal.h | 701 | // the top-k index k with topk_ids_flat[tok*MAX_TOPK + k] == id (0xFF | COMMENT |
| LOW | …rc/nv_internal/include/tensorrt_llm/common/cudaUtils.h | 21 | #include <cuda.h> | COMMENT |
| 982 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build_backend.py | 544 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle_nvfp4.py | 40 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle_nvfp4.py | 41 | CODE | |
| LOW | tests/conftest.py | 180 | CODE | |
| LOW | tests/conftest.py | 230 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle.py | 63 | CODE | |
| LOW | tests/repro_ikr_zero_token_idle.py | 64 | CODE | |
| LOW | tests/kda/test_recurrent_kda_prefill.py | 1545 | CODE | |
| LOW | tests/attention/test_attention_ts_decode.py | 292 | CODE | |
| LOW | tests/attention/conftest.py | 230 | CODE | |
| LOW | tests/attention/conftest.py | 367 | CODE | |
| LOW | tests/attention/test_trtllm_gen_sparse_mla_dsv4.py | 194 | CODE | |
| LOW | tests/attention/test_attention_ts_block_sparse.py | 513 | CODE | |
| LOW | tests/attention/test_fmha_v2_prefill.py | 63 | CODE | |
| LOW | tests/attention/test_fmha_v2_prefill.py | 236 | CODE | |
| LOW | tests/attention/test_fmha_v2_prefill.py | 921 | CODE | |
| LOW | tests/attention/test_fmha_v2_prefill.py | 1743 | CODE | |
| LOW | tests/attention/test_batch_prefill_kernels.py | 113 | CODE | |
| LOW | tests/attention/test_batch_prefill_kernels.py | 457 | CODE | |
| LOW | tests/attention/test_attention_sink.py | 36 | CODE | |
| LOW | tests/attention/test_xqa.py | 164 | CODE | |
| LOW | tests/attention/test_mla_wrapper.py | 1229 | CODE | |
| LOW | tests/attention/test_mla_wrapper.py | 1871 | CODE | |
| LOW | tests/attention/test_cute_dsl_hca_dsv4.py | 671 | CODE | |
| LOW | tests/attention/test_vsa_block_sparse_sm120.py | 230 | CODE | |
| LOW | tests/attention/test_vsa_block_sparse_sm120.py | 476 | CODE | |
| LOW | tests/attention/test_cute_dsl_mla_decode.py | 1623 | CODE | |
| LOW | tests/attention/test_attention_ts_mla_decode.py | 1136 | CODE | |
| LOW | tests/attention/test_rope.py | 1417 | CODE | |
| LOW | tests/attention/test_cute_dsl_mla_dcp.py | 426 | CODE | |
| LOW | tests/attention/test_cute_dsl_mla_dcp.py | 456 | CODE | |
| LOW | tests/attention/test_trtllm_gen_block_sparse_decode.py | 115 | CODE | |
| LOW | tests/attention/test_vsa_block_sparse.py | 301 | CODE | |
| LOW | tests/attention/test_vsa_block_sparse.py | 1006 | CODE | |
| LOW | tests/attention/test_vsa_block_sparse.py | 1319 | CODE | |
| LOW | tests/trace/test_fi_trace_template_consistency.py | 234 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 39 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 84 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 130 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 299 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 352 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 601 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 1018 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 1197 | CODE | |
| LOW | tests/msa_ops/test_msa_ops.py | 1618 | CODE | |
| LOW | tests/msa_ops/test_sparse_prefill.py | 54 | CODE | |
| LOW | tests/msa_ops/test_sparse_prefill.py | 137 | CODE | |
| LOW | tests/msa_ops/test_blackwell_msa_sm100.py | 600 | CODE | |
| LOW | tests/msa_ops/test_proxy_fp4.py | 61 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_packaging.py | 129 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_kernel.py | 701 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_kernel.py | 1124 | CODE | |
| LOW | tests/autotuner/test_autotuner_core.py | 1173 | CODE | |
| LOW | tests/mamba/test_cake_selective_state_update.py | 87 | CODE | |
| LOW | tests/mamba/conftest.py | 1055 | CODE | |
| LOW | tests/mamba/test_cake_ssd_combined.py | 1065 | CODE | |
| LOW | tests/mamba/test_cake_ssd_combined.py | 1260 | CODE | |
| LOW | tests/mamba/test_cake_ssd_combined.py | 1384 | CODE | |
| LOW | tests/mamba/test_cake_ssd_combined.py | 1507 | CODE | |
| LOW | tests/mamba/triton_reference/ssd_chunk_scan.py | 88 | CODE | |
| 770 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build_backend.py | 140 | except Exception: | CODE |
| LOW | build_backend.py | 211 | except Exception: | CODE |
| LOW | build_backend.py | 226 | except Exception: | CODE |
| LOW | build_backend.py | 345 | except Exception: | CODE |
| LOW | build_backend.py | 422 | except Exception: | CODE |
| LOW | build_backend.py | 576 | except Exception: | CODE |
| LOW | build_backend.py | 985 | except Exception as e: | CODE |
| LOW | build_utils.py | 103 | except Exception: | CODE |
| LOW | tests/kda/test_recurrent_kda_prefill_sm120.py | 1061 | except Exception as exc: # noqa: BLE001 -- the type and text are the assertion | CODE |
| LOW | tests/kda/test_recurrent_kda_prefill_sm120.py | 1447 | except Exception as exc: # noqa: BLE001 -- reported below | CODE |
| MEDIUM | tests/kda/test_recurrent_kda_prefill_sm120.py | 1058 | def outcome(backend): | CODE |
| LOW | tests/attention/conftest.py | 439 | except Exception as e: | CODE |
| LOW | tests/attention/conftest.py | 493 | except Exception: # pragma: no cover - diagnostics must never fail the run | CODE |
| LOW | tests/attention/test_deepseek_mla.py | 102 | except Exception as e: | CODE |
| MEDIUM | tests/attention/test_deepseek_mla.py | 42 | def warmup_jit(): | CODE |
| LOW | …sts/trace/test_tgv_gemm_sm100_reference_correctness.py | 39 | except Exception as exc: | CODE |
| LOW | …sts/trace/test_mxfp8_quantize_reference_correctness.py | 25 | except Exception as exc: | CODE |
| LOW | tests/trace/test_mm_bf16_fp4_reference_correctness.py | 44 | except Exception as exc: | CODE |
| LOW | tests/trace/test_single_decode_reference_correctness.py | 31 | except Exception as exc: | CODE |
| LOW | …ize_fp8_append_paged_kv_cache_reference_correctness.py | 69 | except Exception as exc: | CODE |
| LOW | tests/trace/test_bmm_fp8_reference_correctness.py | 38 | except Exception as exc: | CODE |
| LOW | …/trace/test_cutlass_fused_moe_reference_correctness.py | 62 | except Exception as exc: | CODE |
| LOW | …s/trace/test_segment_gemm_run_reference_correctness.py | 34 | except Exception as exc: | CODE |
| LOW | …s/trace/test_block_sparse_run_reference_correctness.py | 58 | except Exception as exc: | CODE |
| LOW | …s/trace/test_xqa_batch_decode_reference_correctness.py | 74 | except Exception as exc: | CODE |
| LOW | …sts/trace/test_mxfp4_quantize_reference_correctness.py | 33 | except Exception as exc: | CODE |
| LOW | …ace/test_var_block_sparse_run_reference_correctness.py | 67 | except Exception as exc: | CODE |
| LOW | tests/trace/test_bmm_bf16_reference_correctness.py | 29 | except Exception as exc: | CODE |
| LOW | tests/trace/test_mm_bf16_reference_correctness.py | 29 | except Exception as exc: | CODE |
| LOW | tests/trace/test_fi_trace_template_consistency.py | 303 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | …ace/test_xqa_batch_decode_mla_reference_correctness.py | 72 | except Exception as exc: | CODE |
| LOW | …trace/test_cudnn_batch_decode_reference_correctness.py | 80 | except Exception as exc: | CODE |
| LOW⚡ | tests/trace/example.py | 466 | except Exception: | CODE |
| LOW⚡ | tests/trace/example.py | 477 | except Exception: | CODE |
| LOW⚡ | tests/trace/example.py | 495 | except Exception: | CODE |
| LOW⚡ | tests/trace/example.py | 505 | except Exception: | CODE |
| LOW | tests/trace/example.py | 444 | except Exception: | CODE |
| LOW | tests/trace/example.py | 523 | except Exception: | CODE |
| LOW | tests/trace/example.py | 537 | except Exception: | CODE |
| LOW | tests/trace/example.py | 549 | except Exception: | CODE |
| LOW | tests/trace/example.py | 1190 | except Exception: | CODE |
| LOW | …race/test_batch_attention_run_reference_correctness.py | 61 | except Exception as exc: | CODE |
| LOW | …e/test_trtllm_fmha_v2_prefill_reference_correctness.py | 62 | except Exception as exc: | CODE |
| LOW | tests/trace/test_concat_mla_k_reference_correctness.py | 30 | except Exception as exc: | CODE |
| LOW | …/test_trtllm_batch_decode_mla_reference_correctness.py | 68 | except Exception as exc: | CODE |
| LOW | …sts/trace/test_single_prefill_reference_correctness.py | 31 | except Exception as exc: | CODE |
| LOW | …/test_multi_level_cascade_run_reference_correctness.py | 61 | except Exception as exc: | CODE |
| LOW | …race/test_cudnn_batch_prefill_reference_correctness.py | 91 | except Exception as exc: | CODE |
| LOW | …/test_fused_add_rmsnorm_quant_reference_correctness.py | 32 | except Exception as exc: | CODE |
| LOW | …t_pod_with_paged_kv_cache_run_reference_correctness.py | 70 | except Exception as exc: | CODE |
| LOW | tests/trace/test_rmsnorm_quant_reference_correctness.py | 27 | except Exception as exc: | CODE |
| LOW | …sts/trace/test_nvfp4_quantize_reference_correctness.py | 26 | except Exception as exc: | CODE |
| LOW | tests/trace/test_batch_pod_run_reference_correctness.py | 76 | except Exception as exc: | CODE |
| LOW | tests/moe_ep/test_sm90_push_fp8_backend.py | 25 | except Exception: | CODE |
| LOW | tests/moe_ep/test_sm90_push_fp8_kernel.py | 28 | except Exception: | CODE |
| LOW | tests/moe_ep/test_fault_tolerance_reconcile.py | 43 | except Exception as e: # noqa: BLE001 - surfaced to the assertion below | CODE |
| LOW | tests/moe_ep/test_fault_tolerance_reconcile.py | 174 | except Exception as e: # noqa: BLE001 - asserted on below | CODE |
| MEDIUM | tests/moe_ep/test_fault_tolerance_reconcile.py | 32 | def work(r): | CODE |
| MEDIUM | tests/moe_ep/test_fault_tolerance_reconcile.py | 163 | def run(r, timeout_s): | CODE |
| LOW | tests/moe_ep/test_sm90_push_fp8_gemm_contract.py | 356 | except Exception: | CODE |
| 371 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/kda/test_recurrent_kda_decode_export.py | 930 | CODE | |
| LOW | tests/attention/test_modular_fmha_prefill_paged.py | 127 | CODE | |
| LOW | tests/attention/test_dcp_spec_fp8.py | 622 | CODE | |
| LOW | tests/attention/test_dcp_spec_jit.py | 352 | CODE | |
| LOW | tests/attention/test_attention_ts_block_sparse.py | 741 | CODE | |
| LOW | tests/attention/test_fmha_v2_prefill.py | 63 | CODE | |
| LOW | tests/attention/test_mla_decode_kernel.py | 177 | CODE | |
| LOW | tests/attention/test_mla_decode_kernel.py | 398 | CODE | |
| LOW | tests/attention/test_xqa.py | 120 | CODE | |
| LOW | tests/attention/test_cute_dsl_mla_decode.py | 327 | CODE | |
| LOW | tests/attention/test_trtllm_gen_attention_decode.py | 623 | CODE | |
| LOW | tests/attention/test_batch_attention.py | 91 | CODE | |
| LOW | tests/msa_ops/test_blackwell_msa_sm100.py | 31 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_kernel.py | 109 | CODE | |
| LOW | tests/moe_ep/test_sm90_push_fp8_gemm_contract.py | 442 | CODE | |
| LOW | tests/mamba/test_chunk_scan_combined.py | 27 | CODE | |
| LOW | tests/mamba/utils.py | 16 | CODE | |
| LOW | tests/mamba/test_checkpointing_ssu.py | 168 | CODE | |
| LOW | …amba/triton_reference/selective_state_update_varlen.py | 272 | CODE | |
| LOW | tests/mamba/triton_reference/selective_state_update.py | 431 | CODE | |
| LOW | …amba/triton_reference/replay_selective_state_update.py | 1976 | CODE | |
| LOW | …amba/triton_reference/replay_selective_state_update.py | 3653 | CODE | |
| LOW | tests/mamba/triton_reference/ssd_combined.py | 32 | CODE | |
| LOW | tests/mamba/triton_reference/ssd_combined.py | 197 | CODE | |
| LOW | tests/mamba/triton_reference/causal_conv1d_triton.py | 1004 | CODE | |
| LOW | tests/comm/test_all_gather_matmul.py | 45 | CODE | |
| LOW | tests/comm/test_mixed_comm.py | 36 | CODE | |
| LOW | tests/gemm/test_cute_dsl_gemm_allreduce_two_shot.py | 139 | CODE | |
| LOW | tests/gemm/test_groupwise_scaled_gemm_mxfp4.py | 73 | CODE | |
| LOW | tests/gdn/test_fused_decode.py | 393 | CODE | |
| LOW | tests/gdn/reference_delta_rule.py | 125 | CODE | |
| LOW | tests/test_helpers/utils_fp4.py | 51 | CODE | |
| LOW | tests/moe/test_dpsk_fused_moe_fp8.py | 279 | CODE | |
| LOW | tests/moe/test_dpsk_fused_moe_fp8.py | 370 | CODE | |
| LOW | tests/moe/test_unified_moe_fp8.py | 740 | CODE | |
| LOW | tests/moe/trtllm_gen_fused_moe_utils.py | 2561 | CODE | |
| LOW | tests/moe/trtllm_gen_fused_moe_utils.py | 2709 | CODE | |
| LOW | tests/moe/trtllm_gen_fused_moe_utils.py | 3501 | CODE | |
| LOW | tests/moe/trtllm_gen_fused_moe_utils.py | 321 | CODE | |
| LOW | tests/moe/trtllm_gen_fused_moe_utils.py | 3118 | CODE | |
| LOW | tests/moe/test_unified_moe_mxint4.py | 88 | CODE | |
| LOW | tests/moe/utils.py | 322 | CODE | |
| LOW | docs/tutorials/jax_tvm_ffi/gemma3_flashinfer_jax.py | 834 | CODE | |
| LOW | flashinfer-jit-cache/build_backend.py | 237 | CODE | |
| LOW | examples/pytorch/wan/transformer_wan_flashinfer.py | 318 | CODE | |
| LOW | examples/pytorch/wan/transformer_wan_flashinfer.py | 563 | CODE | |
| LOW | benchmarks/bench_gdn_decode.py | 337 | CODE | |
| LOW | benchmarks/bench_gdn_decode.py | 1046 | CODE | |
| LOW | benchmarks/bench_gdn_decode.py | 1477 | CODE | |
| LOW | benchmarks/bench_topk.py | 509 | CODE | |
| LOW | benchmarks/bench_moe_deepseek.py | 320 | CODE | |
| LOW | benchmarks/bench_moe_deepseek.py | 572 | CODE | |
| LOW | benchmarks/bench_moe_deepseek.py | 695 | CODE | |
| LOW | benchmarks/bench_moe_deepseek.py | 949 | CODE | |
| LOW | benchmarks/bench_moe_deepseek.py | 1086 | CODE | |
| LOW | scripts/codeowner_analyzer.py | 22 | CODE | |
| LOW | flashinfer/xqa.py | 188 | CODE | |
| LOW | flashinfer/gdn_prefill.py | 116 | CODE | |
| LOW | flashinfer/tactics_blocklist_gen.py | 511 | CODE | |
| LOW | flashinfer/kda.py | 54 | CODE | |
| 357 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | flashinfer-cubin/flashinfer_cubin/__init__.py | 80 | __all__ = ["get_cubin_dir", "list_cubins", "get_cubin_path", "CUBIN_DIR"] | CODE |
| LOW | tests/attention/conftest.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/comm/test_nvshmem_allreduce.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/comm/test_vllm_custom_allreduce.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/utils/test_topk.py | 668 | def set_selected_scores(use_prefix: bool) -> None: | CODE |
| LOW | tests/gemm/test_cute_dsl_gemm_allreduce_two_shot.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | flashinfer-jit-cache/flashinfer_jit_cache/__init__.py | 38 | __all__ = [ | CODE |
| LOW | examples/pytorch/wan/transformer_wan_flashinfer.py | 63 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/pytorch/wan/transformer_wan_flashinfer.py | 303 | def set_ulysses_communicator(comm: Optional["UlyssesCommunicator"]) -> None: | CODE |
| LOW | scripts/aot_memory_monitor.py | 265 | def update_stats(stats: MemoryStats, sample: dict[str, int]) -> None: | CODE |
| LOW | scripts/test_sharding/__init__.py | 5 | __all__ = ["ALGORITHM_VERSION", "SCHEMA_VERSION"] | CODE |
| LOW | flashinfer/gated_act_mxfp8.py | 281 | __all__ = [ | STRING |
| LOW | flashinfer/cake_dcp.py | 681 | __all__ = [ | CODE |
| LOW | flashinfer/fp8_quantization.py | 20 | __all__ = [ | CODE |
| LOW | flashinfer/compilation_context.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | flashinfer/_kda_training_impl.py | 1696 | __all__ = [ | CODE |
| LOW | flashinfer/kda_prefill_cute.py | 492 | __all__ = [ | CODE |
| LOW | flashinfer/kda_training.py | 19 | __all__ = [ | CODE |
| LOW | flashinfer/utils.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | flashinfer/utils.py | 827 | def set_log_level(lvl_str: str) -> None: | CODE |
| LOW | flashinfer/fp4_quantization.py | 45 | __all__ = [ | CODE |
| LOW | flashinfer/artifacts.py | 309 | def update_pbar_cb(_) -> None: | CODE |
| LOW | flashinfer/_kda_training_dispatch.py | 277 | __all__ = ["_TrainingRouteSpec", "_select_training_route"] | CODE |
| LOW | flashinfer/deep_gemm.py | 45 | logger = logging.getLogger(__name__) | CODE |
| LOW | flashinfer/kda_backward.py | 1235 | __all__ = [ | STRING |
| LOW | flashinfer/cake_vsa.py | 991 | __all__ = ["plan_cake_vsa", "run_cake_vsa"] | CODE |
| LOW | flashinfer/attention/__init__.py | 20 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/__init__.py | 42 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/context.py | 2235 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/block_sparse.py | 834 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/mla_decode.py | 2012 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/decode.py | 2645 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/_tensor_aliasing.py | 104 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/kernels/tensor_map.py | 563 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/kernels/tcgen05_compat.py | 77 | __all__ = ["tcgen05_mma_ws"] | CODE |
| LOW | …n/prims_ts/kernels/fmha_decode/block_sparse_inspect.py | 276 | __all__ = ["compile_block_sparse_inspection"] | CODE |
| LOW | …/kernels/fmha_decode/fmha_decode_resources/__init__.py | 139 | __all__ = [ | CODE |
| LOW | …de/fmha_decode_resources/smem_block_sparse_metadata.py | 1074 | __all__ = [ | CODE |
| LOW | …ims_ts/kernels/mla_decode/throughput_2cta/resources.py | 234 | def update_from(self, other) -> None: | CODE |
| LOW | …a_decode/throughput_latency_1cta/resources/__init__.py | 35 | __all__ = [ | CODE |
| LOW | …ention/prims_ts/kernels/fmha_context/fmha_resources.py | 4035 | def set_p_base(self, stage_info: StageInfo, *, tmem_p_base: Int32) -> None: | CODE |
| LOW | flashinfer/attention/prims_ts/_block_sparse/plan.py | 392 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/_block_sparse/config.py | 552 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/_block_sparse/compiler.py | 341 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/_block_sparse/prepared.py | 250 | __all__ = [ | CODE |
| LOW | flashinfer/attention/prims_ts/_block_sparse/runtime.py | 522 | __all__ = [ | CODE |
| LOW | …shinfer/attention/prims_ts/_block_sparse/inspection.py | 151 | __all__ = ["_BlockSparseInspection", "_inspect_block_sparse_bsr"] | CODE |
| LOW | flashinfer/trace/solution.py | 278 | __all__ = [ | CODE |
| LOW | flashinfer/trace/__init__.py | 42 | __all__ = [ | CODE |
| LOW | flashinfer/trace/templates/gated_act_mxfp8.py | 362 | __all__ = [ | CODE |
| LOW | flashinfer/trace/templates/_init_helpers.py | 258 | __all__ = [ | CODE |
| LOW | flashinfer/msa_ops/_blackwell_sm100.py | 2726 | __all__ = [ | CODE |
| LOW | flashinfer/msa_ops/_blackwell_sm100_reverse_plan.py | 683 | __all__ = [ | CODE |
| LOW | flashinfer/msa_ops/__init__.py | 33 | __all__ = [ | CODE |
| LOW | flashinfer/moe_ep/__init__.py | 160 | __all__ = [ | CODE |
| LOW | flashinfer/moe_ep/layer.py | 16 | __all__ = ["MoEEpLayer", "MoEEpMegaLayer", "MoEEpSplitLayer"] | CODE |
| LOW | flashinfer/moe_ep/core/__init__.py | 13 | __all__ = [ | CODE |
| LOW | flashinfer/moe_ep/core/bootstrap_utils.py | 118 | __all__ = [ | CODE |
| LOW | flashinfer/moe_ep/core/runtime/bootstrap.py | 291 | __all__ = [ | CODE |
| LOW | flashinfer/moe_ep/core/runtime/__init__.py | 17 | __all__ = [ | CODE |
| 220 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/attention/test_rope.py | 888 | # Step 1: Pre-populate cache with existing tokens | COMMENT |
| LOW | tests/attention/test_rope.py | 1099 | # Step 2: Append new tokens to the pre-populated cache | COMMENT |
| LOW | …_quantize_fp8_append_paged_kv_cache_h8_kv2_rope64.json | 194 | "reference": "from __future__ import annotations\nimport math\nimport torch\nimport torch.nn.functional as F\n\n@torch | CODE |
| LOW | …tize_fp8_append_paged_kv_cache_h8_kv2_rope64_ps16.json | 195 | "reference": "from __future__ import annotations\nimport math\nimport torch\nimport torch.nn.functional as F\n\n@torch | CODE |
| LOW⚡ | tests/utils/test_fp4_quantize.py | 310 | # Step 1: Quantize with fp4_quantize | COMMENT |
| LOW⚡ | tests/utils/test_fp4_quantize.py | 320 | # Step 2: Dequantize with e2m1_and_ufp8sf_scale_to_float | COMMENT |
| LOW | tests/utils/test_fp4_quantize.py | 335 | # Step 3: Compare results | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1081 | # Step 1: Compute g = -exp(A_log) * softplus(a + dt_bias) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1136 | # Step 1: Apply gating to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1139 | # Step 2: Delta rule: v -= k^T @ h ([B,H,K] x [B,H,K,V] -> [B,H,V]) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1142 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1145 | # Step 4: Update hidden state with outer product: h += k ⊗ v_new | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1148 | # Step 5: Compute output: o = q^T @ h | COMMENT |
| LOW | tests/gdn/reference_delta_rule.py | 1098 | # Step 2: Compute beta = sigmoid(b) | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 63 | ### Step 1: Choose Your Test Routine | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 70 | ### Step 2: Run a Single Benchmark | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 118 | ### Step 3: Understand the Output | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 134 | ### Step 4: Run Batch Benchmarks | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 156 | ### Step 5: Common Flags | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 174 | ### Step 1: Write Your Benchmark Script | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 210 | ### Step 2: Run Your Benchmark | COMMENT |
| LOW | .claude/skills/benchmark-kernel/SKILL.md | 229 | ### Step 3: Advanced Options | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 24 | ## Step 1: Enable API Logging | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 109 | ## Step 2: Reproduce the Crash | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 146 | ## Step 3: Common CUDA Errors and How to Debug | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 249 | ## Step 4: Multi-Process Debugging | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 268 | ## Step 5: Advanced Debugging with compute-sanitizer | COMMENT |
| LOW | .claude/skills/debug-cuda-crash/SKILL.md | 309 | ## Step 6: Kernel-Level Debugging with printf() | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 18 | ## Step 1: Define CUDA Kernel in `include/` | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 76 | ## Step 2: Create Launcher in `csrc/` | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 163 | ## Step 3: Create TVM-FFI Binding in `csrc/` | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 183 | ## Step 4: Create JIT Generator (No Jinja for Simple Case) | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 387 | ## Step 5: Create Python API in `flashinfer/` | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 628 | ## Step 6: Add a Trace Template | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 776 | ## Step 7: Write Tests in `tests/` | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 846 | ## Step 7: Register in AOT | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 872 | ## Step 8: Export API | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 883 | ## Step 9: Run and Test | COMMENT |
| LOW | .claude/skills/add-cuda-kernel/SKILL.md | 893 | ## Step 10: Add Benchmark | COMMENT |
| LOW | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 176 | # Step 1 - Compile and load the TVM FFI module | COMMENT |
| LOW | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 197 | # Step 2 - Register as a JAX FFI target | COMMENT |
| LOW | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 240 | # Step 3 - Call as a regular JAX expression | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 149 | # Step 1: Add | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 151 | # Step 2: RMSNorm | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 153 | # Step 3: FP4 quantize (with global_scale for NVFP4) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 179 | # Step 1: Apply decay to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 182 | # Step 2: Delta rule: v -= sum(h * k, dim=0) = k @ h | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 187 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 190 | # Step 4: Update hidden state: h += outer(k, v) = k[:, None] * v[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 193 | # Step 5: Compute output: o = q @ h = sum(q[:, None] * h, dim=0) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 361 | # Step 1: Apply decay: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 364 | # Step 2: Delta rule: v -= h @ k (h is [BV, BK], k is [BK]) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 369 | # Step 3: Apply beta gating | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 372 | # Step 4: Update state: h += outer(v, k) = v[:, None] * k[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 376 | # Step 5: Compute output: o = h @ q = sum(h * q[None, :], axis=1) -> [BV] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 633 | # Step 1: Apply decay to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 636 | # Step 2: Delta rule: v -= h @ k = sum(h * k[None, :], axis=1) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 640 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 643 | # Step 4: Update hidden state: h += outer(v, k) = v[:, None] * k[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 646 | # Step 5: Compute output: o = h @ q = sum(h * q[None, :], axis=1) | COMMENT |
| 98 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …mha_v2/fused_multihead_flash_attention_kernel_noloop.h | 286 | // Do we need to check if there are negative inf for softmax row_max ? | COMMENT |
| LOW | …/fused_multihead_flash_attention_kernel_noloop_tiled.h | 92 | // Do we need to check if there are negative inf for softmax row_max ? | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/epilogue.h | 73 | // Whether we need to check if local_max could be -inf or not. | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/epilogue.h | 543 | // Whether we need to check if local_max could be -inf or not. | COMMENT |
| LOW | csrc/fmha_v2/fmha/warpspec/epilogue.h | 734 | // Whether we need to check if local_max could be -inf or not. | COMMENT |
| LOW | tests/attention/test_rope.py | 888 | # Step 1: Pre-populate cache with existing tokens | COMMENT |
| LOW | tests/attention/test_rope.py | 1099 | # Step 2: Append new tokens to the pre-populated cache | COMMENT |
| LOW | …_quantize_fp8_append_paged_kv_cache_h8_kv2_rope64.json | 194 | "reference": "from __future__ import annotations\nimport math\nimport torch\nimport torch.nn.functional as F\n\n@torch | CODE |
| LOW | …tize_fp8_append_paged_kv_cache_h8_kv2_rope64_ps16.json | 195 | "reference": "from __future__ import annotations\nimport math\nimport torch\nimport torch.nn.functional as F\n\n@torch | CODE |
| LOW⚡ | tests/utils/test_fp4_quantize.py | 310 | # Step 1: Quantize with fp4_quantize | COMMENT |
| LOW⚡ | tests/utils/test_fp4_quantize.py | 320 | # Step 2: Dequantize with e2m1_and_ufp8sf_scale_to_float | COMMENT |
| LOW | tests/utils/test_fp4_quantize.py | 335 | # Step 3: Compare results | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1081 | # Step 1: Compute g = -exp(A_log) * softplus(a + dt_bias) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1136 | # Step 1: Apply gating to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1139 | # Step 2: Delta rule: v -= k^T @ h ([B,H,K] x [B,H,K,V] -> [B,H,V]) | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1142 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1145 | # Step 4: Update hidden state with outer product: h += k ⊗ v_new | COMMENT |
| LOW⚡ | tests/gdn/reference_delta_rule.py | 1148 | # Step 5: Compute output: o = q^T @ h | COMMENT |
| LOW | tests/gdn/reference_delta_rule.py | 1098 | # Step 2: Compute beta = sigmoid(b) | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 149 | # Step 1: Add | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 151 | # Step 2: RMSNorm | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_add_rmsnorm_fp4quant.py | 153 | # Step 3: FP4 quantize (with global_scale for NVFP4) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 179 | # Step 1: Apply decay to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 182 | # Step 2: Delta rule: v -= sum(h * k, dim=0) = k @ h | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 187 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 190 | # Step 4: Update hidden state: h += outer(k, v) = k[:, None] * v[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 193 | # Step 5: Compute output: o = q @ h = sum(q[:, None] * h, dim=0) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 361 | # Step 1: Apply decay: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 364 | # Step 2: Delta rule: v -= h @ k (h is [BV, BK], k is [BK]) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 369 | # Step 3: Apply beta gating | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 372 | # Step 4: Update state: h += outer(v, k) = v[:, None] * k[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 376 | # Step 5: Compute output: o = h @ q = sum(h * q[None, :], axis=1) -> [BV] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 633 | # Step 1: Apply decay to hidden state: h *= exp(g) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 636 | # Step 2: Delta rule: v -= h @ k = sum(h * k[None, :], axis=1) | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 640 | # Step 3: Apply beta gating: v *= beta | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 643 | # Step 4: Update hidden state: h += outer(v, k) = v[:, None] * k[None, :] | COMMENT |
| LOW⚡ | benchmarks/gdn_triton_reference.py | 646 | # Step 5: Compute output: o = h @ q = sum(h * q[None, :], axis=1) | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_rmsnorm_fp4quant.py | 157 | # Step 1: RMSNorm | COMMENT |
| LOW⚡ | benchmarks/bench_cute_dsl_rmsnorm_fp4quant.py | 159 | # Step 2: FP4 quantize (with global_scale for NVFP4) | COMMENT |
| LOW | benchmarks/routines/norm.py | 1312 | # Step 2: RMSNorm on residual | COMMENT |
| LOW⚡ | scripts/pr_checks/check_api_docs.py | 65 | # Step 1: collect all @flashinfer_api-decorated function names via AST | COMMENT |
| LOW⚡ | scripts/pr_checks/check_api_docs.py | 93 | # Step 2: collect documented symbols from docs/api/*.rst | COMMENT |
| LOW⚡ | scripts/pr_checks/check_api_docs.py | 164 | # Step 3: compare and report | COMMENT |
| LOW | flashinfer/trace/templates/rope.py | 1018 | # Step 3: append into paged cache (GQA/MHA) — materialize the quantized | COMMENT |
| LOW⚡ | …e_cutedsl_megakernel/src/moe_hopper_fp8/mega_runner.py | 196 | # Step 1: deterministic FP8 input + weight generation | COMMENT |
| LOW⚡ | …e_cutedsl_megakernel/src/moe_hopper_fp8/mega_runner.py | 599 | # Step 2: FP8 reference | COMMENT |
| LOW⚡ | …e_cutedsl_megakernel/src/moe_hopper_fp8/mega_runner.py | 660 | # Step 5: FP8 validation | COMMENT |
| LOW⚡ | …e_cutedsl_megakernel/src/moe_hopper_fp8/mega_runner.py | 752 | # Step 4: FP8 kernel launch | COMMENT |
| LOW | …le_cutedsl_megakernel/src/moe_nvfp4_swapab/epilogue.py | 871 | # Step 1: absmax over the weighted regs. | COMMENT |
| LOW | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 1407 | # Step 0: load tmem | COMMENT |
| LOW | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 1454 | # Step 1: perform swiglu on the first part, interleave with the second's 32x32 tmem transpose. | COMMENT |
| LOW | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 1482 | # Step 2: Quant | COMMENT |
| LOW | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 1493 | # Step 3: TMASTG | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 774 | # Step 1: deterministic input + weight generation | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 984 | # Step 2: reference | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 1015 | # Step 3: workspace allocation | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 1053 | # Step 4: kernel launch | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 1457 | # Step 5: validation | COMMENT |
| LOW⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/kernel_fc12.py | 1913 | # Step 1: coarse-grain spin on ``fc1_done_counter[slot]`` | COMMENT |
| LOW | …cutedsl_megakernel/src/moe_nvfp4_swapab/kernel_fc12.py | 2014 | # Step 3: K-loop with 2x cute.copy per tile (B + | COMMENT |
| 75 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | tests/trace/test_paged_mqa_logits_checker.py | 76 | With rnorm == 0 the relative error is undefined; substituting 0.0 made | STRING |
| HIGH | tests/comm/test_trtllm_allreduce_reduction.py | 43 | TORCH_CHECK(num_threads > 0 && num_threads <= 1024, "invalid block size"); | CODE |
| HIGH | tests/comm/test_trtllm_mnnvl_allreduce.py | 306 | ordinary data; a `val == 0.F && signbit(val)` check would FTZ-flush | STRING |
| HIGH | tests/utils/test_jit_example.py | 189 | if (qo_idx < qo_len && kv_idx < kv_len) { | CODE |
| HIGH | tests/gdn/test_decode_ucache.py | 57 | source env.sh && pytest tests/gdn/test_decode_ucache.py -v | STRING |
| HIGH | tests/jit/test_flash_kda_packed_t1_jit.py | 184 | assert "minor == 0 || minor == 3" in binding | CODE |
| HIGH | tests/jit/test_flash_kda_decode_jit.py | 262 | assert "else if (has_token && k_lane == 0)" in generated_body | CODE |
| HIGH | tests/jit/test_flash_kda_decode_jit.py | 306 | assert "major == 10 && (minor == 0 || minor == 3)" in common | CODE |
| HIGH | tests/jit/test_flash_kda_decode_jit.py | 307 | assert "major == 10 && minor == expected_minor" in common | CODE |
| HIGH | benchmarks/bench_monomoe.py | 86 | Uses mono_moe's `[gate || up]` fc1 half-ordering and the given (already | STRING |
| HIGH | benchmarks/bench_gdn_ucache_flush.py | 30 | source env.sh && python benchmarks/bench_gdn_ucache_flush.py [--iters 200] | STRING |
| HIGH | benchmarks/routines/attention.py | 3771 | # Leave empty (null) when not explicitly overridden so legacy | COMMENT |
| HIGH | flashinfer/collect_env.py | 156 | _run("grep -sq -e docker -e containerd -e kubepods /proc/1/cgroup && echo 1") | CODE |
| HIGH | flashinfer/utils.py | 699 | include/flashinfer/mamba/conversion.cuh (SM100_ALL || SM103_ALL). | STRING |
| HIGH | flashinfer/trace/templates/attn_scores.py | 230 | # An all-zero reference makes the relative error undefined; the old | COMMENT |
| HIGH | flashinfer/trace/templates/moe.py | 3130 | description="Up/gate projection weights (FP8, [gate || up] rows).", | CODE |
| HIGH | flashinfer/trace/templates/moe.py | 2981 | up-projection weights use the [gate || up] half ordering (monomoe's | STRING |
| HIGH | …90/pull_style_cutedsl_megakernel/src/src/flag_batch.py | 21 | flag_addr: Int64 # per-lane counter-slot address (0 == null) | CODE |
| HIGH | …oe_ep/kernel_src/cutedsl_megamoe/src/src/flag_batch.py | 21 | flag_addr: Int64 # per-lane counter-slot address (0 == null) | CODE |
| HIGH⚡ | …ashinfer/gdn_kernels/gdn_decode_bf16_wy_output_only.py | 1050 | # _v7e_a/b regs are undefined), so they must keep log_alpha=beta=0. The causal | COMMENT |
| HIGH⚡ | …shinfer/gdn_kernels/gdn_decode_bf16_wy_ucache_flush.py | 1666 | # _v7e_a/b regs are undefined), so they must keep log_alpha=beta=0. The causal | COMMENT |
| HIGH⚡ | flashinfer/gdn_kernels/gdn_decode_bf16_wy_ucache.py | 1134 | # _v7e_a/b regs are undefined), so they must keep log_alpha=beta=0. The causal | COMMENT |
| HIGH | flashinfer/fused_moe/cute_dsl/moe_utils.py | 387 | ``!enable_alltoall || ep_size <= top_k`` branch). Functionally | STRING |
| HIGH | flashinfer/mla/_core.py | 3769 | Accepts the concatenated ``(q_nope || q_rope)`` query and ``(ckv || kpe)`` paged KV | CODE |
| HIGH | flashinfer/jit/cake_router_gemm.py | 66 | TVM_FFI_CHECK(out_is_bf16 == 0 || out_is_bf16 == 1, ValueError) | CODE |
| HIGH | flashinfer/jit/attention/variants.py | 39 | float log_sink = (kv_tile_idx == 0 && qo_head_idx < params.num_qo_heads) ? params.sink[qo_head_idx] * math::log2e : | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/utils.py | 543 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b > {unroll_threshold})))".format( | STRING |
| HIGH | flashinfer/jit/attention/fmha_v2/utils.py | 547 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b * h > {unroll_threshold})))".format( | STRING |
| HIGH | flashinfer/jit/attention/fmha_v2/generator_utils.py | 1543 | USE_TMA_STORE && false, | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/generator_utils.py | 1564 | USE_TMA_STORE && false, | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/generator_utils.py | 2424 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b > {unroll_threshold})))".format( | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/generator_utils.py | 2428 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b * h > {unroll_threshold})))".format( | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/fmha_library.py | 761 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b > {unroll_threshold})))".format( | CODE |
| HIGH | flashinfer/jit/attention/fmha_v2/fmha_library.py | 765 | code = "if (!{has_noloop} || (!force_unroll && (ignore_b1opt || b * h > {unroll_threshold})))".format( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/conftest.py | 243 | # Create a dict with module info for reporting | COMMENT |
| MEDIUM | tests/attention/test_attention_sink.py | 287 | # Create a fragmented page allocation pattern | COMMENT |
| MEDIUM | tests/attention/test_trtllm_gen_attention_decode.py | 1967 | # Create a larger tensor with 2*D in the last dimension | COMMENT |
| MEDIUM⚡ | tests/trace/test_fi_trace.py | 1026 | # Create a dummy instance — we don't call run(), only fi_trace() | COMMENT |
| MEDIUM | tests/autotuner/test_autotuner_configs.py | 718 | # Create a cache file with a known config | COMMENT |
| MEDIUM | tests/autotuner/test_autotuner_configs.py | 909 | # Create a cache file | COMMENT |
| MEDIUM | tests/mamba/utils.py | 266 | # Create a simple linear chain structure by default | COMMENT |
| MEDIUM | tests/comm/test_trtllm_alltoall.py | 114 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_trtllm_alltoall.py | 177 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_trtllm_moe_alltoall.py | 265 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_trtllm_moe_alltoall.py | 514 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_trtllm_moe_alltoall.py | 1186 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_mnnvl_memory.py | 135 | # Create a random input tensor | COMMENT |
| MEDIUM | tests/comm/test_quantized_allreduce.py | 213 | # This file is single-node spawn-managed; use a file store to avoid | COMMENT |
| MEDIUM | tests/utils/test_fp4_quantize.py | 248 | # Create a test scale factors tensor with uint8 dtype | COMMENT |
| MEDIUM | tests/utils/test_fp4_quantize.py | 298 | # Create a reasonable test tensor | COMMENT |
| MEDIUM | tests/utils/test_logging.py | 400 | # Create a tensor with specific properties | COMMENT |
| MEDIUM | tests/utils/test_logging_replay.py | 1016 | # Create a mock dump with safetensors files | COMMENT |
| MEDIUM | tests/utils/test_norm.py | 916 | # Create a JIT spec for norm module without ENABLE_FP8 flag | COMMENT |
| MEDIUM | tests/utils/test_load_cubin_compile_race_condition.py | 40 | # Define the target file - same for all processes | COMMENT |
| MEDIUM | tests/utils/test_load_cubin_compile_race_condition.py | 75 | # Create a temporary directory for FLASHINFER_CUBIN_DIR | COMMENT |
| MEDIUM | tests/cli/test_cli_cmds.py | 200 | # Create a temporary JIT directory with some dummy cache files | COMMENT |
| MEDIUM | tests/cli/test_cli_cmds.py | 243 | # Create a temporary cubin directory with some dummy cubin files | COMMENT |
| MEDIUM | tests/test_helpers/rope_reference.py | 113 | # The following code is from the vLLM's implementation of RoPE. | COMMENT |
| MEDIUM | tests/moe/test_dpsk_fused_moe_fp8.py | 596 | # Create a mock MoE implementation for skip_checks | COMMENT |
| MEDIUM | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 1 | # This file is the canonical Sphinx-Gallery source for the tutorial. | COMMENT |
| MEDIUM | docs/tutorials/jax_tvm_ffi/gemma3_flashinfer_jax.py | 1 | # This file is the canonical Sphinx-Gallery source for the tutorial. | COMMENT |
| MEDIUM | examples/pytorch/wan/transformer_wan_flashinfer.py | 4 | # This file is adapted from the diffusers WanTransformer3DModel implementation: | COMMENT |
| MEDIUM | scripts/task_test_multi_gpu_comm_kernels.sh | 22 | # Define the specific test files for multi-GPU comm tests (single-node) | COMMENT |
| MEDIUM | scripts/task_test_multi_node_comm_kernels.sh | 25 | # Define the specific test files for multi-node comm tests | COMMENT |
| MEDIUM | scripts/test_utils.sh | 3 | # This file is meant to be sourced by test runner scripts | COMMENT |
| MEDIUM | scripts/test_utils.sh | 1020 | # Create a bash array with the node IDs | COMMENT |
| MEDIUM | scripts/test_utils.sh | 1190 | # Create a temporary directory for parallel job state | COMMENT |
| MEDIUM | scripts/test_utils.sh | 1205 | # Create a results file for each test | COMMENT |
| MEDIUM | …e_cutedsl_megakernel/src/moe_nvfp4_swapab/moe_utils.py | 221 | # Create a new cute.Pointer with generic address space, preserving alignment | COMMENT |
| MEDIUM | …e_cutedsl_megakernel/src/moe_nvfp4_swapab/moe_utils.py | 249 | # Create a new cute.Pointer with gmem address space, preserving alignment | COMMENT |
| MEDIUM | …_src/cutedsl_megamoe/src/moe_nvfp4_swapab/moe_utils.py | 229 | # Create a new cute.Pointer with generic address space, preserving alignment | COMMENT |
| MEDIUM | …_src/cutedsl_megamoe/src/moe_nvfp4_swapab/moe_utils.py | 257 | # Create a new cute.Pointer with gmem address space, preserving alignment | COMMENT |
| MEDIUM | flashinfer/comm/dlpack_utils.py | 224 | # Create a new capsule each time | STRING |
| MEDIUM | flashinfer/fused_moe/core.py | 504 | # Create the output | COMMENT |
| MEDIUM | flashinfer/fused_moe/cute_dsl/rubin/custom_pipeline.py | 44 | # This file is copied and modified from https://github.com/NVIDIA/cutlass/tree/main/python/CuTeDSL/cutlass/pipeline | COMMENT |
| MEDIUM | flashinfer/fused_moe/cute_dsl/rubin/utils.py | 146 | # Create a numpy array | STRING |
| MEDIUM | …hinfer/fused_moe/cute_dsl/blackwell/custom_pipeline.py | 44 | # This file is copied and modified from https://github.com/NVIDIA/cutlass/tree/main/python/CuTeDSL/cutlass/pipeline | COMMENT |
| MEDIUM | flashinfer/fused_moe/cute_dsl/blackwell/utils.py | 44 | # This file is copied and modified from cutlass https://github.com/NVIDIA/cutlass/blob/main/python/CuTeDSL/cutlass/cute/ | COMMENT |
| MEDIUM | …blockscaled_contiguous_grouped_gemm_finalize_fusion.py | 317 | """This class implements batched matrix multiplication (C = A x SFA x B x SFB) with support for various data types | STRING |
| MEDIUM | …ockscaled_contiguous_gather_grouped_gemm_act_fusion.py | 332 | """This class implements contiguous grouped matrix multiplication with gather operation and SwiGLU fusion | STRING |
| MEDIUM | flashinfer/fused_moe/cute_dsl/common/kernel_utils.py | 44 | # This file is copied and modified from cutlass https://github.com/NVIDIA/cutlass/blob/main/python/CuTeDSL/cutlass/cute/ | COMMENT |
| MEDIUM | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm103.py | 29 | # This file is ported from CUTLASS's sm103_dense_blockscaled_gemm_persistent.py | COMMENT |
| MEDIUM | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm103.py | 54 | """This class implements batched matrix multiplication (C = A x SFA x B x SFB) with support for FP4 data types | STRING |
| MEDIUM | flashinfer/gemm/kernels/epilogue_utils.py | 4 | # This file contains modified versions of epilogue utility functions from | COMMENT |
| MEDIUM | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm107.py | 29 | # This file is ported from CUTLASS's Rubin dense_blockscaled_gemm_persistent.py | COMMENT |
| MEDIUM | flashinfer/gemm/kernels/bmm_fp8_blackwell.py | 140 | """This class implements batched matrix multiplication (C = A x B) with support for various data types | STRING |
| MEDIUM | …ashinfer/gemm/kernels/grouped_gemm_masked_blackwell.py | 589 | """This class implements batched matrix multiplication (C = A x SFA x B x SFB) with support for various data types | STRING |
| MEDIUM | …nfer/gemm/kernels/dense_blockscaled_gemm_sm120_b12x.py | 29 | # This file is ported from the CUTLASS dense block-scaled GEMM example | COMMENT |
| MEDIUM | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm100.py | 29 | # This file is ported from TensorRT-LLM's dense_blockscaled_gemm_persistent.py | COMMENT |
| MEDIUM | flashinfer/cute_dsl/gemm_allreduce_two_shot.py | 217 | """This class implements batched matrix multiplication (C = A x B) with support for various data types | STRING |
| MEDIUM | flashinfer/cute_dsl/utils.py | 541 | # Create a numpy array | STRING |
| MEDIUM | flashinfer/jit/cubin_loader.py | 311 | # Define the correct callback type | COMMENT |
| MEDIUM | flashinfer/jit/cubin_loader.py | 321 | # Create the callback and keep a reference to prevent GC | COMMENT |
| MEDIUM | flashinfer/jit/gemm/cutlass/cutlass_library.py | 40 | # The following block implements enum.auto() for Python 3.5 variants that don't include it such | COMMENT |
| 1 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/autotuner/test_autotuner_distributed.py | 220 | # independent of how the harness imported the tests (a ``spawn`` worker that | COMMENT |
| MEDIUM | tests/mamba/test_philox_rounding.py | 785 | """Software e4m3 SR matches hardware PTX path bitwise across a comprehensive | STRING |
| LOW | tests/mamba/triton_reference/causal_conv1d_triton.py | 171 | # first chunk and does not have prior-token, so just set to 0 | COMMENT |
| MEDIUM⚡ | tests/gemm/test_unified_gemm_fuzz.py | 595 | # + tight tolerance. Same model as the MoE harness: with exact-grid inputs the oracle measures the | COMMENT |
| MEDIUM | tests/gemm/test_unified_gemm_fuzz.py | 549 | # layout_128x4 / mxfp4 default this harness prepares). Toggling it on the cutlass/cudnn/auto | COMMENT |
| MEDIUM⚡ | tests/gdn/test_decode_delta_rule.py | 1310 | # Test MTP kernel with FP32 state, cache ON, state update ON (comprehensive) | COMMENT |
| LOW | tests/test_helpers/alibi_reference.py | 78 | # Since it's causal mask we can just use $[0, 1, \dots, N]$ too. | STRING |
| MEDIUM⚡ | tests/moe/test_unified_moe_fuzz.py | 2509 | # different shape would produce a wrong answer here. (Shares the harness's snap/reference/prep.) | COMMENT |
| MEDIUM | tests/moe/test_unified_moe_fuzz.py | 1014 | # Covers the in-kernel-routing bug cluster the pre-routed harness structurally can't reach: | COMMENT |
| MEDIUM | tests/moe/test_unified_moe_fuzz.py | 1170 | # separate validation, and EP collectives are out of scope for this single-GPU harness. | COMMENT |
| MEDIUM | tests/moe/test_unified_moe_fuzz.py | 1320 | # In-kernel routing (FromLogits) headline cases the pre-routed harness can't reach: | COMMENT |
| MEDIUM | tests/moe/test_unified_moe_fuzz.py | 1017 | RoutingMethodType.RenormalizeNaive, # == the harness's original host routing | CODE |
| MEDIUM⚡ | benchmarks/bench_mamba_ssd_combined.py | 257 | # Layer 2: bench_mode — batched or varlen harness | COMMENT |
| MEDIUM | benchmarks/bench_silu_and_mul_nvfp4_quantize.py | 132 | # more comprehensive correctness coverage. | COMMENT |
| MEDIUM | benchmarks/bench_recurrent_kda_prefill.py | 575 | # harness while keeping route logging out of every timed call. | COMMENT |
| MEDIUM | benchmarks/routines/kda.py | 329 | # difference between the two APIs, not an artifact of this harness, and it | COMMENT |
| MEDIUM | benchmarks/routines/kda.py | 560 | # published combination. They need a protocol this harness cannot | COMMENT |
| MEDIUM | benchmarks/routines/kda.py | 567 | # what this harness is actually able to set up. | COMMENT |
| MEDIUM | scripts/task_test_moe_ep_smoke.sh | 4 | # Run the moe_ep smoke + multi-rank harness via torchrun. | COMMENT |
| LOW | flashinfer/api_logging.py | 1547 | # The safest way is to just call the class constructor. | COMMENT |
| MEDIUM | flashinfer/aot.py | 294 | # The holistic (persistent) batch-attention kernel | COMMENT |
| MEDIUM | flashinfer/attention/_core.py | 160 | # head_dim > 256 is for holistic (persistent) kernel. | STRING |
| MEDIUM | …_megakernel/src/moe_hopper_fp8/run_functional_tests.sh | 2 | # Functional test harness for the FP8 GLU fused fc1+fc2 runner. | COMMENT |
| MEDIUM | …utedsl_megakernel/src/moe_hopper_fp8/run_mega_tests.sh | 2 | # Functional test harness for the FP8 distributed MegaMoE fused dispatch + fc1/fc2 | COMMENT |
| MEDIUM | …cutedsl_megakernel/src/moe_hopper_fp8/run_perf_test.sh | 2 | # DSV4 performance harness for moe_hopper_fp8. | COMMENT |
| MEDIUM⚡ | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 944 | _EpilogueTokenTileSize = 64 # Fundamentally the epi_tile_n | CODE |
| MEDIUM⚡ | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 945 | _EpilogueFc1IntermediateGateUpTileSize = 128 # Fundamentally epi_tile_m | CODE |
| MEDIUM⚡ | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 946 | _EpilogueFc1IntermediateDownTileSize = 64 # Fundamentally epi_tile_m // 2 | CODE |
| MEDIUM⚡ | …l_megakernel/src/moe_nvfp4_swapab/epilogue_refactor.py | 947 | _EpilogueFc2HiddenTileSize = 128 # Fundamentally epi_tile_m | CODE |
| MEDIUM | …egakernel/src/moe_nvfp4_swapab/run_functional_tests.sh | 2 | # Functional test harness for the local fused fc1+fc2 MoE NVFP4 swap-AB runner. | COMMENT |
| MEDIUM | …edsl_megakernel/src/moe_nvfp4_swapab/run_mega_tests.sh | 2 | # Functional test harness for the distributed MegaMoE fused dispatch + fc1/fc2 | COMMENT |
| MEDIUM | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 1972 | # to avoid recomputing it the harness keeps the global | COMMENT |
| MEDIUM⚡ | …ull_style_cutedsl_megakernel/src/src/inputs_process.py | 579 | # Correctness harness (GPU only; needs cutlass + torch fp4/e8m0 dtypes). | COMMENT |
| MEDIUM | …ull_style_cutedsl_megakernel/src/src/inputs_process.py | 728 | except Exception as exc: # noqa: BLE001 -- smoke harness, report and continue | CODE |
| MEDIUM⚡ | …edsl_megamoe/src/moe_nvfp4_swapab/epilogue_refactor.py | 989 | _EpilogueTokenTileSize = 64 # Fundamentally the epi_tile_n | CODE |
| MEDIUM⚡ | …edsl_megamoe/src/moe_nvfp4_swapab/epilogue_refactor.py | 990 | _EpilogueFc1IntermediateGateUpTileSize = 128 # Fundamentally epi_tile_m | CODE |
| MEDIUM⚡ | …edsl_megamoe/src/moe_nvfp4_swapab/epilogue_refactor.py | 991 | _EpilogueFc1IntermediateDownTileSize = 64 # Fundamentally epi_tile_m // 2 | CODE |
| MEDIUM⚡ | …edsl_megamoe/src/moe_nvfp4_swapab/epilogue_refactor.py | 992 | _EpilogueFc2HiddenTileSize = 128 # Fundamentally epi_tile_m | CODE |
| MEDIUM | …l_megamoe/src/moe_nvfp4_swapab/run_functional_tests.sh | 2 | # Functional test harness for the local fused fc1+fc2 MoE NVFP4 swap-AB runner. | COMMENT |
| MEDIUM | …cutedsl_megamoe/src/moe_nvfp4_swapab/run_mega_tests.sh | 2 | # Functional test harness for the distributed MegaMoE fused dispatch + fc1/fc2 | COMMENT |
| MEDIUM | …rc/cutedsl_megamoe/src/moe_nvfp4_swapab/mega_runner.py | 2121 | # to avoid recomputing it the harness keeps the global | COMMENT |
| MEDIUM | …edsl_megamoe/src/moe_mxfp8_glu/run_functional_tests.sh | 2 | # Functional test harness for the MXFP8 GLU fused fc1+fc2 runner. | COMMENT |
| MEDIUM | …rc/cutedsl_megamoe/src/moe_mxfp8_glu/run_mega_tests.sh | 2 | # Functional test harness for the MXFP8 distributed MegaMoE fused dispatch + | COMMENT |
| MEDIUM | …tedsl_megamoe/src/moe_bf16_glu/run_functional_tests.sh | 2 | # Functional test harness for the BF16 GLU fused fc1+fc2 runner. | COMMENT |
| MEDIUM | …src/cutedsl_megamoe/src/moe_bf16_glu/run_mega_tests.sh | 2 | # Functional test harness for the BF16 distributed MegaMoE fused dispatch + | COMMENT |
| MEDIUM⚡ | …p/kernel_src/cutedsl_megamoe/src/src/inputs_process.py | 516 | # Correctness harness (GPU only; needs cutlass + torch fp4/e8m0 dtypes). | COMMENT |
| MEDIUM | …p/kernel_src/cutedsl_megamoe/src/src/inputs_process.py | 656 | except Exception as exc: # noqa: BLE001 -- smoke harness, report and continue | CODE |
| MEDIUM | flashinfer/fused_moe/da_tuner.py | 628 | # Singleton compares robust worst cases; switch charges its control overhead once to each | COMMENT |
| MEDIUM | flashinfer/gemm/gemm_base.py | 6958 | # stays row-major (m, n). Pass swap_ab=False to the harness so it keeps | STRING |
| MEDIUM | flashinfer/jit/monomoe.py | 123 | # robust choice for a kernel that is SM90a-only by construction (it | COMMENT |
| MEDIUM | flashinfer/jit/attention/fmha_v2/generator_utils.py | 1783 | // distribute m steps to multiple blocks (fully utilize SMs) | COMMENT |
| MEDIUM⚡ | flashinfer/kda_kernels/kda_chunked_bt16.py | 758 | # Gate ABI dtype selectable from the CLI harness. BF16 is the default (see the | COMMENT |
| MEDIUM | flashinfer/kda_kernels/kda_chunked_bt16.py | 10304 | # The gate is materialized in FP32 (RNG parity with the historical harness, | COMMENT |
| MEDIUM | flashinfer/kda_kernels/kda_chunked_bt16.py | 10325 | # byte-for-byte vs the original harness. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build_backend.py | 1035 | # Check if we're in a git repository | COMMENT |
| LOW | flashinfer-cubin/build_backend.py | 75 | # Check if we're in a git repository | COMMENT |
| LOW | tests/attention/test_attention_sink.py | 918 | # Check if any request has qo_len > kv_len for causal case | COMMENT |
| LOW | …s/comm/test_trtllm_allreduce_fusion_group_fp8_quant.py | 218 | # Check if current workspace is large enough; recreate if not | COMMENT |
| LOW | tests/utils/test_fp8_quantize.py | 659 | # Check if the bits of paddings are zero. | COMMENT |
| LOW | tests/utils/test_load_cubin_compile_race_condition.py | 44 | # Read the file from FLASHINFER_CUBIN_DIR | COMMENT |
| LOW | tests/model_optimizations/test_dsv3_fused_routing.py | 276 | # Check if kernel's selection matches expected experts (exact or tied) | COMMENT |
| LOW | tests/test_helpers/sink_attention_reference.py | 95 | # Check if variable length mode is indicated by presence of indptr | COMMENT |
| LOW | flashinfer-jit-cache/build_backend.py | 57 | # Check if we're in a git repository | COMMENT |
| LOW | benchmarks/bench_tgv_gemm.py | 184 | # Check if results are close enough | COMMENT |
| LOW | benchmarks/bench_logging_overhead.py | 224 | # Check if CUDA is available | COMMENT |
| LOW | benchmarks/bench_dcp_alltoall.py | 297 | # Print results (rank 0 only) | COMMENT |
| LOW | scripts/xfails_tracker.py | 52 | # Check if this is a test function (starts with "test_" or has @pytest marks) | COMMENT |
| LOW | scripts/xfails_tracker.py | 70 | # Check if this is a pytest.param call | COMMENT |
| LOW | scripts/xfails_tracker.py | 77 | # Check if this is a runtime pytest.xfail() call | COMMENT |
| LOW | scripts/test_utils.sh | 1670 | # Check if parallel execution is enabled | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 89 | # Check if gh CLI is available | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 114 | # Check if it's already in our cache | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 220 | # Check if username is in allowed list (case-insensitive) | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 290 | # Check if it's a relevant code file | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 420 | # Check if contributor is in allowed users list | COMMENT |
| LOW | scripts/codeowner_analyzer.py | 629 | # Write file-level overrides LAST (CODEOWNERS uses last-match-wins) | COMMENT |
| LOW | .github/workflows/update-xfails-report.yml | 43 | # Check if xfails report file is new (unstaged) or has changes | COMMENT |
| LOW | .github/workflows/update-codeowners.yml | 50 | # Check if CODEOWNERS file is new (unstaged) or has changes | COMMENT |
| LOW | .github/workflows/issue-claim.yml | 86 | # Check if issue already has assignees | COMMENT |
| LOW | .github/workflows/issue-claim.yml | 301 | # Check if user is now a collaborator (accepted invitation) | COMMENT |
| LOW | flashinfer/api_logging.py | 2083 | # Check if this parameter was provided | COMMENT |
| LOW | flashinfer/utils.py | 332 | # Check if it's a CUDA device | COMMENT |
| LOW | flashinfer/prefill.py | 517 | # Check if FP8 by presence of scale tensors | COMMENT |
| LOW | flashinfer/__main__.py | 828 | # Check if this is a single dump or a session / sequence root | COMMENT |
| LOW | flashinfer/cuda_utils.py | 20 | # Check if cuda.cudart module is available and import accordingly | COMMENT |
| LOW | …ention/prims_ts/kernels/fmha_context/fmha_resources.py | 4314 | # Check if we should skip correction (when old_max == new_max) | COMMENT |
| LOW | …utedsl_megamoe/src/moe_bf16_glu/mega_reference_bf16.py | 561 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | flashinfer/autotuner/autotuner.py | 1861 | # Set time_measured to inf to notify the failure of the tactic. This can happen when | COMMENT |
| LOW | flashinfer/triton/sm_constraint_gemm.py | 66 | # Set num_sms to be 100% of the available SMs | COMMENT |
| LOW | flashinfer/comm/mnnvl.py | 748 | # Check if cuda.cudart is available and import accordingly | COMMENT |
| LOW | flashinfer/comm/mnnvl.py | 785 | # Check if device supports multicasting | COMMENT |
| LOW | …hinfer/fused_moe/cute_dsl/blackwell/custom_pipeline.py | 357 | # Set mask to None if not using clusters (i.e. 1CTA kernels) | COMMENT |
| LOW | …hinfer/fused_moe/cute_dsl/blackwell/custom_pipeline.py | 363 | # Set mask to None if not using 2CTA instructions | COMMENT |
| LOW | flashinfer/gemm/gemm_base.py | 7471 | # Check if dimensions are aligned for cute-dsl (16-byte alignment) | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm103.py | 363 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm103.py | 998 | # Check if we're not at the last buffer of the last k_tile | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm103.py | 1083 | # Check if we're not at the last stage of the last k_tile | COMMENT |
| LOW | flashinfer/gemm/kernels/epilogue_utils.py | 241 | # Check if tile_sched is StaticPersistentTileScheduler or any subclass inheriting from it | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm107.py | 713 | # Check if prefetch is enabled (prefetch_dist > 0) | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm107.py | 2028 | # Check if the current combination is valid | COMMENT |
| LOW | flashinfer/gemm/kernels/dense_blockscaled_gemm_sm107.py | 2752 | # Check if prefetch is enabled (prefetch_dist > 0) | COMMENT |
| LOW | flashinfer/gemm/kernels/grouped_gemm_masked_rubin.py | 691 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | flashinfer/gemm/kernels/grouped_gemm_masked_rubin.py | 1947 | # Check if the current combination is valid | COMMENT |
| LOW | flashinfer/gemm/kernels/bmm_fp8_rubin.py | 547 | # Check if we should use Bkeep-Breuse pattern | COMMENT |
| LOW | flashinfer/gemm/kernels/bmm_fp8_blackwell.py | 310 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | …ashinfer/gemm/kernels/grouped_gemm_masked_blackwell.py | 907 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | …er/gemm/kernels/dense_blockscaled_gemm_sm100_common.py | 102 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | flashinfer/quantization/kernels/mxfp8_quantize.py | 607 | # Check if this thread's row is valid | COMMENT |
| LOW | flashinfer/cute_dsl/gemm_allreduce_two_shot.py | 519 | # Check if input data types are compatible with MMA instruction | COMMENT |
| LOW | flashinfer/testing/utils.py | 867 | # Check if args are provided (determines how we call fn) | COMMENT |
| LOW | flashinfer/testing/utils.py | 1164 | # Check if args are provided (determines how we call fn) | COMMENT |
| LOW | flashinfer/testing/utils.py | 1432 | # Check if args are provided (determines how we call fn) | COMMENT |
| LOW | flashinfer/jit/cpp_ext.py | 215 | # Check if module provides architecture flags | COMMENT |
| LOW | flashinfer/jit/fused_moe.py | 264 | # Check if checksums.txt exists in the cubin directory | COMMENT |
| 3 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | flashinfer/green_ctx.py | 129 | Split the device into multiple `green contexts <https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__GREEN__CO | STRING |
| HIGH | flashinfer/green_ctx.py | 199 | Split the device into multiple green contexts, each with a fixed number of SMs, return the corresponding stream | STRING |
| HIGH | flashinfer/utils.py | 316 | Get GPU memory bandwidth in GB/s for the specified CUDA device. Args: device: torch.device object, e.g | STRING |
| HIGH | flashinfer/autotuner/autotuner.py | 101 | Map *x* to the nearest bucket using floor or ceil semantics. Args: x: The value to map. buckets: Bu | STRING |
| HIGH | flashinfer/autotuner/autotuner.py | 145 | Create a mapper function for :class:`DynamicTensorSpec.map_to_tuning_buckets`. The returned callable maps any integ | STRING |
| HIGH | flashinfer/autotuner/autotuner.py | 790 | Context manager for autotuning with optional file-based caching. Controls how FlashInfer profiles and selects the b | STRING |
| HIGH | flashinfer/autotuner/autotuner.py | 2658 | Load autotuner configs from a JSON file. Populates the internal config lookup table so that ``search_cache()`` | STRING |
| HIGH | …blockscaled_contiguous_grouped_gemm_finalize_fusion.py | 384 | Blockscaled contiguous grouped GEMM for MoE GEMM2 workloads. Fused mode applies routing weights and atomically redu | STRING |
| HIGH | …ockscaled_contiguous_gather_grouped_gemm_act_fusion.py | 461 | Blockscaled contiguous gather grouped GEMM with fused FC1 activation. Performs grouped matrix multiplication with f | STRING |
| HIGH | flashinfer/gemm/gemm_bf16_fp4.py | 138 | Prepare FP4 weights for the bf16 x fp4 GEMM, for a specific backend. The caller is expected to start with weights i | STRING |
| HIGH | flashinfer/quantization/fp4_quantization.py | 419 | Quantize a batched tensor to FP4 (E2M1x2) with per-block scale factors. This function converts a float/bfloat16 | STRING |
| HIGH | flashinfer/quantization/fp4_quantization.py | 567 | Quantize a silu and matmul with masked batched tensor to FP4 (E2M1x2) with per-block scale factors. This functi | STRING |
| HIGH | flashinfer/parallel_attention/utils.py | 356 | Create a device mesh and return the Ring and Ulysses process groups. Builds a ``DeviceMesh`` with up to three dimen | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/autotuner/test_autotuner_core.py | 1206 | # TODO: Let AutoTuner orchestrate multiple same-shaped value samples within one tuning transaction. | COMMENT |
| MEDIUM⚡ | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 2405 | # Top-level orchestration | COMMENT |
| MEDIUM | …cutedsl_megakernel/src/moe_nvfp4_swapab/mega_runner.py | 2649 | # orchestration above is the part being smoke-tested for now. | COMMENT |
| MEDIUM⚡ | …rc/cutedsl_megamoe/src/moe_nvfp4_swapab/mega_runner.py | 2539 | # Top-level orchestration | COMMENT |
| MEDIUM | …rc/cutedsl_megamoe/src/moe_nvfp4_swapab/mega_runner.py | 2804 | # orchestration above is the part being smoke-tested for now. | COMMENT |
| MEDIUM | flashinfer/fused_moe/da_runtime.py | 770 | # Strip orchestration-owned keywords before delegating dtype-specific allocation and | COMMENT |
| MEDIUM⚡ | flashinfer/cute_dsl/attention/roles/epilogue.py | 74 | # Prefill orchestration — proven-correct inline implementation | COMMENT |
| MEDIUM⚡ | flashinfer/cute_dsl/attention/roles/loader_tma.py | 282 | # Prefill orchestration — proven-correct inline implementation | COMMENT |
| MEDIUM⚡ | flashinfer/cute_dsl/attention/roles/mma.py | 198 | # Prefill orchestration — uses primitives for GEMMs and TMEM lifecycle | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 304 | # In this example, you should learn how minimal the JAX-TVM bridge can be when the function signature and ``arg_spec`` a | COMMENT |
| HIGH | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 427 | # In this example, you should learn how to handle two new complications that were absent in Example 1: a TVM function th | COMMENT |
| HIGH | docs/tutorials/jax_tvm_ffi/flashinfer_jax_tvm_ffi.py | 644 | # In this example, you should learn about three patterns that appear together for the first time: a kernel **compiled se | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | csrc/fmha_v2/fmha/utils.h | 66 | // Example usage: | COMMENT |
| LOW | scripts/list_apis.sh | 6 | # Usage: | COMMENT |
| LOW | …_megakernel/src/moe_hopper_fp8/run_functional_tests.sh | 12 | # Usage: | COMMENT |
| LOW | …utedsl_megakernel/src/moe_hopper_fp8/run_mega_tests.sh | 20 | # Usage: | COMMENT |
| LOW | …cutedsl_megakernel/src/moe_hopper_fp8/run_perf_test.sh | 18 | # Usage: | COMMENT |
| LOW | …egakernel/src/moe_nvfp4_swapab/run_functional_tests.sh | 10 | # Usage: | COMMENT |
| LOW | …edsl_megakernel/src/moe_nvfp4_swapab/run_mega_tests.sh | 17 | # Usage: | COMMENT |
| LOW | …l_megamoe/src/moe_nvfp4_swapab/run_functional_tests.sh | 10 | # Usage: | COMMENT |
| LOW | …cutedsl_megamoe/src/moe_nvfp4_swapab/run_mega_tests.sh | 17 | # Usage: | COMMENT |
| LOW | …edsl_megamoe/src/moe_mxfp8_glu/run_functional_tests.sh | 18 | # Usage: | COMMENT |
| LOW | …rc/cutedsl_megamoe/src/moe_mxfp8_glu/run_mega_tests.sh | 22 | # Usage: | COMMENT |
| LOW | …tedsl_megamoe/src/moe_bf16_glu/run_functional_tests.sh | 18 | # Usage: | COMMENT |
| LOW | …src/cutedsl_megamoe/src/moe_bf16_glu/run_mega_tests.sh | 33 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/utils/test_decorators.py | 15 | def my_function(x, y): | CODE |
| LOW | tests/utils/test_logging.py | 109 | def test_function(x, y): | CODE |
| LOW | tests/utils/test_logging.py | 135 | def test_function(tensor, value): | CODE |
| LOW | tests/utils/test_logging.py | 173 | def test_function(tensor): | CODE |
| LOW | tests/utils/test_logging.py | 201 | def test_function(mode: TestEnum, strategy: StringEnum): | CODE |
| LOW | tests/utils/test_logging.py | 231 | def test_function(x, y=10, z=20, mode=TestEnum.OPTION_A): | CODE |
| LOW | tests/utils/test_logging.py | 262 | def test_function(x, y=10, z=20): | CODE |
| LOW | tests/utils/test_logging.py | 359 | def test_function( | CODE |
| LOW | tests/utils/test_logging.py | 397 | def test_function(tensor): | CODE |
| LOW | tests/utils/test_logging.py | 430 | def test_function(nested): | CODE |
| LOW | tests/utils/test_logging.py | 495 | def test_function(x): | CODE |
| LOW | tests/utils/test_logging.py | 520 | def test_function(a, b, c): | CODE |
| LOW | flashinfer/api_logging.py | 2425 | ... def my_function(x, y): | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | .github/workflows/update-codeowners.yml | 76 | Auto-generated CODEOWNERS update based on commit activity over the last ${{ env.DAYS_BACK }} days. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | flashinfer/gdn_kernels/gdn_decode_mtp.py | 2691 | dummy_key = (q.device, h0_source.dtype) | CODE |
| LOW⚡ | flashinfer/gdn_kernels/gdn_decode_mtp.py | 2692 | if dummy_key not in dummy_intermediate_states: | CODE |
| LOW⚡ | flashinfer/gdn_kernels/gdn_decode_mtp.py | 2693 | dummy_intermediate_states[dummy_key] = torch.empty( | CODE |
| LOW⚡ | flashinfer/gdn_kernels/gdn_decode_mtp.py | 2696 | intermediate_states = dummy_intermediate_states[dummy_key] | CODE |