Skip to content

chore(deps): update dependency flashinfer-python to v0.6.18 - #123

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/flashinfer-python-0.x
Open

chore(deps): update dependency flashinfer-python to v0.6.18#123
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/flashinfer-python-0.x

Conversation

@renovate

@renovate renovate Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
flashinfer-python ==0.6.16.post3==0.6.18 age confidence
flashinfer-python ==0.6.14==0.6.18 age confidence

Release Notes

flashinfer-ai/flashinfer (flashinfer-python)

v0.6.18

Compare Source

These highlights are also published at flashinfer.ai/releases.

v0.6.18 Highlights

This release completes NVIDIA Rubin (SM107) support, brings whole-layer expert-parallel MoE to Hopper, adds decode paths for DeepSeek-V4 sparse attention and Kimi K3 linear attention, and broadens low-precision MoE coverage with MXFP4 on Blackwell RTX PRO and DGX Spark and weight-only W4A16 on B200 and B300.

SM107 (Rubin) support

FlashInfer 0.6.18 completes support for NVIDIA Rubin (SM107), begun in 0.6.16. Rubin devices now dispatch through the same unified APIs as Blackwell — attention, GEMM, MoE, and quantization.

Attention gains trtllm-gen FMHA for SM107, including sparse compression and FP16 softmax. The PrimTS attention path accepts Rubin as well. On the GEMM side, batched and low-latency GEMM both run on Rubin, and CUTLASS NVFP4 SVDQuant is enabled. A CuTe-DSL kernel family specialized for Rubin ships alongside them. trtllm-gen MoE now selects valid tactics on Rubin, and router GEMM and topk_varlen accept SM107.

Expert-parallel MoE runs whole-layer on Hopper

The moe_ep mega-kernel stack was Blackwell-only. Two Hopper FP8 backends, Sm90PullFp8MegaMoeConfig and Sm90PushFp8MegaMoeConfig, now let Hopper deployments run dispatch, FC1, SwiGLU, FC2, and combine as one fused layer behind the existing MoEEpLayer, instead of composing an NCCL all-to-all with a local fused-MoE operator. The pull backend reaches 562 TFLOPS/rank at a 384-expert DeepSeek-class geometry. The push backend supports CUDA Graph capture, and its opt-in fused FC1 epilogue drops an approximately 1 GiB per-rank activation buffer at the DeepSeek-V3 EP8 shape. Its grouped GEMM requires CUDA Toolkit 12.8 or newer.

HCA decode backend and top-K selection for DeepSeek-V4

Sparse attention picks the top-K KV positions per request on every decode step, then attends over the compressed cache; both halves now have dedicated paths. FP8 Heavily Compressed Attention (HCA) arrives for SM100/SM103 via trtllm_batch_decode_sparse_mla_dsv4(..., backend="cute-dsl"), taking arbitrary sliding-window row order including ring rotation and wraparound while keeping the compressed cache paged. The new flashinfer.top_k_varlen handles ragged batches through a Blackwell radix kernel, a guess-verify-refine kernel that warm-starts from the previous step's indices, and a CUTLASS fallback for any GPU. SM120/121 also picks up top-k 192 and 256.

Kimi K3 decode fuses into one Blackwell kernel

flashinfer.fused_kda_decode folds Kimi K3's width-four depthwise causal convolution, SiLU, recurrent Kimi Delta Attention update, and gated RMSNorm into a single SM100 launch, covering the production head_dim 128 shapes at 12, 24, 48, and 96 heads and updating the convolution cache and FP32 state in place. On B200 under CUDA Graphs it is 1.33x the vLLM fused kernel at one row (table geomean 1.13x). A T=1 fast path inside recurrent_kda and shared SM100-family recurrent kernels round out the KDA stack.

MXFP4 MoE and video sparse attention on Blackwell RTX PRO

MXFP4 checkpoints run natively on SM120/121: b12x_fused_moe and B12xMoEWrapper accept quant_mode="mxfp4" across the existing fused schedules including CUDA Graph reuse, the b12x dense GEMM gains the matching path, and on an RTX PRO 6000 Blackwell Server Edition MXFP4 tracks NVFP4 against a strict quantized reference. Video Sparse Attention, until now datacenter-Blackwell only, reaches these parts through a vsa_sm120_blk64 backend on BlockSparseAttentionWrapper. Gemma 4 gains asymmetric VO-split NVFP4 paged prefill on SM120/121.

W4A16 MoE and dense GEMM extend to B200 and B300

Weight-only NVFP4 against BF16 activations, which 0.6.14 shipped for SM12x, now runs on the SM100 family: CuteDslMoEWrapper and cute_dsl_fused_moe_nvfp4 accept quant_mode="w4a16", decoding weights to BF16 inside the kernel so no separate activation-quantization or repack launch is needed, and mm_bf16_fp4 gains a dedicated SM100/SM103 kernel. Consuming BF16 directly pays off where MoE decode is memory-bound: at a DeepSeek EP8 shape on B200, W4A16 is 1.50x the W4A4 baseline at one token; W4A4 still wins large-batch prefill. GeGLU-tanh and SiTU are supported.

Unified MoE API adds shared experts, MXINT4, and CUTLASS runners

Shared experts now work through the unified API rather than low-level kernel entry points, via ExpertConfig.num_fused_shared_experts on the block-FP8 and FP4 runners, completing in the unified API what 0.6.15 and 0.6.17 added for FP8 and FP4. The API also gains MXINT4, CUTLASS BF16 and W4A16 runners on SM90, packed per-tensor FP8 routing, BF16 FromLogits routing, and TopKSigmoid.

Fused MNNVL all-reduce tail for tensor-parallel MoE

allreduce_fusion gains a BF16 Blackwell CuTe-DSL backend for the latency-critical tail of tensor-parallel MoE layers, fusing all-reduce, residual add, and RMSNorm, optionally preceded by MoE finalize and shared-expert add, over MNNVL/NVLink multicast. One backend spans decode to prefill by switching protocol with token count, with initial profiles targeting GB300 on TP8 and TP16.

Smaller JIT-cache wheels; SM75 and single-request FA2 are JIT-only

The flashinfer-jit-cache wheels no longer ship precompiled kernels for SM75 (Turing). Those GPUs still run; the kernels compile on first use. CUDA 13 AArch64 wheels also drop native SM121a cubins (DGX Spark keeps running via SM120 family cubins), and the single-request single_decode_with_kv_cache / single_prefill_with_kv_cache FA2 modules are no longer AOT-prebuilt — those APIs still JIT. Fatbins use size-oriented compression.

0.6.17 0.6.18
cu129 x86_64 1.94 GB 1.02 GB
cu130 x86_64 1.51 GB 1.02 GB
cu130 aarch64 1.69 GB 1.13 GB
What's Changed
New Contributors

Full Changelog: flashinfer-ai/flashinfer@v0.6.17rc5...v0.6.18

v0.6.17

Compare Source

These highlights are also published at flashinfer.ai/releases.

v0.6.17 Highlights

This release brings MoE expert parallelism into serving engines, refreshes the Blackwell SM12x fused-MoE kernels with an FP4 accuracy fix, extends the unified MoE API to MXFP4 W4A8/W4A16 and shared experts, and adds decode coverage for Kimi K3 MLA and MiniMax-M3 sparse attention on vLLM.

MoE expert parallelism production-ready in vLLM

The MegaMoE path in flashinfer.moe_ep is ready for serving engines: full CUDA-graph capture and replay, a fused single-launch quantize-and-stage hot path, prequantized weight packs, symmetric-buffer workspaces pooled across layers, and a persistent knob cache that resolves tuned knobs by lookup, so production sessions run with no in-engine autotuning. An opt-in fault-tolerance rank mask, available over both NCCL-EP and NIXL-EP, masks and skips a peer that times out during dispatch or combine, keeping the job alive when a rank dies. Deployment gets simpler too: the CuTe-DSL runtime floor returns to 4.5.2, the version vLLM 0.25.1 pins, and a new BootstrapConfig.device lets the host framework pin each worker's CUDA device.

Blackwell SM12x fused MoE refreshed, with an FP4 accuracy fix

W4A4 serving on DGX Spark and RTX PRO parts (GB10, SM120/SM121) now delivers the output quality its benchmark scores imply, with two NVFP4 quantization bugs fixed and a new input_global_scale that lets integrators pass a checkpoint's weight scale directly. The SM12x fused-MoE families are synced to current b12x: the NVFP4 W4A4 backend reaches kernel parity across decode and prefill, and the W4A16 family adds cooperative persistent launches, a tensor-core decode path for small batches, and shape-stable route packing that keeps decode batch-size changes recompile-free.

Unified MoE API adds MXFP4 W4A8 and W4A16, shared experts, and SiTU

TRTLLM-gen MXFP4 weights now run through the unified MoELayer API against both MXFP8 activations (W4A8) and BF16 activations (W4A16), completing the FP8 series begun in 0.6.16, alongside per-tensor routed FP8. Routing adds an unpacked pre-routed FP4 mode that accepts topk_ids and topk_weights as separate contiguous tensors. TRTLLM-gen FP4 MoE also gains shared-expert fusion, extending to FP4 what 0.6.15 added for FP8, plus SiTU activation for MXFP4 x MXFP8 and NVFP4 x NVFP4.

Kimi K3 MLA decode, and MiniMax-M3 sparse attention under vLLM

Blackwell decode now covers Kimi K3's MLA geometry — 96 global query heads against one KV head, TP-local head counts down to 6, speculative query lengths up to 8, and context parallelism for long contexts — by packing query-token and query-head rows into shared CuTe-DSL tiles, adding compact variable-length Q, and extending TRTLLM-gen dense and sparse MLA to non-power-of-two head counts. Sparse MLA decode also serves the no-rotary-tail shape (kv_lora_rank=512, qk_rope_head_dim=0) natively. MiniMax Sparse Attention accepts vLLM's packed paged KV layout for MiniMax-M3, unblocking the vLLM integration on SM120/SM121, with lower per-call overhead on paged decode.

Ulysses sequence parallelism for long-context and video diffusion

Ulysses sequence parallelism gets its head-scatter / sequence-gather all-to-all as a public API, for video diffusion transformers and other long-sequence attention workloads. A fused NVLink-P2P kernel folds the layout permutation directly into the cross-GPU writes over CUDA IPC for a single coalesced push, with automatic NCCL fallback when P2P is unavailable.

What's Changed

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 6 times, most recently from 79bf3af to e47106d Compare June 9, 2026 06:35
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 5 times, most recently from b7642ac to e5caed6 Compare June 18, 2026 08:28
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 2 times, most recently from 8712535 to 4846306 Compare June 22, 2026 08:24
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.12 chore(deps): update dependency flashinfer-python to v0.6.13 Jun 25, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 2 times, most recently from bd9a2fa to 423e158 Compare July 2, 2026 12:20
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.13 chore(deps): update dependency flashinfer-python to v0.6.14 Jul 2, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 8 times, most recently from 4234234 to 420b89e Compare July 8, 2026 15:27
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 5 times, most recently from ea10f4f to 6731996 Compare July 14, 2026 08:35
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 5 times, most recently from 8d6cbba to 6fc0b0a Compare July 17, 2026 08:52
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.14 chore(deps): update dependency flashinfer-python to v0.6.15 Jul 17, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from 6fc0b0a to 8e28f89 Compare July 25, 2026 19:16
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.15 chore(deps): update dependency flashinfer-python to v0.6.15.post1 Jul 25, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 3 times, most recently from e7ad8f1 to 47f9fd0 Compare August 1, 2026 04:37
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.15.post1 chore(deps): update dependency flashinfer-python to v0.6.16 Aug 1, 2026
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.16 chore(deps): update dependency flashinfer-python to v0.6.16.post1 Aug 3, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 3 times, most recently from 015d3a2 to 9d22f6b Compare August 7, 2026 23:40
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.16.post1 chore(deps): update dependency flashinfer-python to v0.6.16.post2 Aug 7, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from 9d22f6b to 007fdc9 Compare August 8, 2026 10:50
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.16.post2 chore(deps): update dependency flashinfer-python to v0.6.16.post3 Aug 8, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from 007fdc9 to 4197286 Compare August 16, 2026 00:12
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.16.post3 chore(deps): update dependency flashinfer-python to v0.6.17 Aug 16, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch 3 times, most recently from dcd1cb0 to 0cc8a5f Compare August 25, 2026 13:43
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from 0cc8a5f to ac43add Compare August 30, 2026 08:12
@renovate renovate Bot changed the title chore(deps): update dependency flashinfer-python to v0.6.17 chore(deps): update dependency flashinfer-python to v0.6.18 Aug 30, 2026
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from ac43add to 9928482 Compare August 31, 2026 15:42
@renovate
renovate Bot force-pushed the renovate/flashinfer-python-0.x branch from 9928482 to ca992bb Compare August 31, 2026 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants