---
id: pr-tensorrt-llm-13340
repo: NVIDIA/TensorRT-LLM
pr: 13340
title: '[None][feat] Integrate FP4 indexer for DSA on Blackwell'
author: lfr-0531
date: '2026-05-07'
url: https://github.com/NVIDIA/TensorRT-LLM/pull/13340
source_category: upstream-code
architectures:
- sm100
tags:
- DSA
- MLA
- arch_pipeline
- attention kernel
- attention_kv
- benchmark kernel
- blackwell
- cuda kernel
- fp4
- fp8
- gemm_quant
- memory_primitives
- paged MQA
- scheduler_autotune
- sm100
techniques:
- autotuning
- cache-policy
- fine-grained-quantization
- kernel-fusion
- pipeline-stages
- tile-scheduling
hardware_features:
- blackwell
- fp4
- fp8
kernel_types:
- attention
- gemm
- memory
- mla
- runtime
- scheduler
languages:
- cuda-cpp
captured_at: '2026-05-16'
status: merged
merge_sha: 897c4bffd7bab93d8bd9252108af08b87e7b6478
inclusion_reason: Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.
changed_paths:
- 3rdparty/fetch_content.json
- cpp/include/tensorrt_llm/batch_manager/kvCacheManager.h
- cpp/include/tensorrt_llm/executor/dataTransceiverState.h
- cpp/tensorrt_llm/batch_manager/cacheTransceiver.cpp
- cpp/tensorrt_llm/batch_manager/kvCacheManager.cpp
- cpp/tensorrt_llm/deep_gemm/CMakeLists.txt
- cpp/tensorrt_llm/executor/cache_transmission/cacheSplitConcat.cu
- cpp/tensorrt_llm/executor/serialization.cpp
- cpp/tensorrt_llm/kernels/fusedCatFp4.cu
- cpp/tensorrt_llm/kernels/fusedCatFp4.h
- cpp/tensorrt_llm/kernels/indexerKCacheGather.cu
- cpp/tensorrt_llm/kernels/indexerKCacheScatter.cu
- cpp/tensorrt_llm/nanobind/batch_manager/kvCacheManager.cpp
- cpp/tensorrt_llm/thop/CMakeLists.txt
- cpp/tensorrt_llm/thop/IndexerKCacheGatherOp.cpp
- cpp/tensorrt_llm/thop/IndexerKCacheScatterOp.cpp
- cpp/tensorrt_llm/thop/fusedCatFp4Op.cpp
- tensorrt_llm/_torch/attention_backend/sparse/dsa.py
- tensorrt_llm/_torch/modules/attention.py
- cpp/tests/unit_tests/batch_manager/kvCacheManagerTest.cpp
- cpp/tests/unit_tests/multi_gpu/cacheTransceiverTest.cpp
- tests/integration/defs/accuracy/test_llm_api_pytorch.py
- tests/integration/test_lists/qa/llm_function_core.txt
- tests/integration/test_lists/test-db/l0_dgx_b200.yml
- tests/unittest/_torch/attention/sparse/test_cpp_custom_ops.py
- scripts/build_wheel.py
- tensorrt_llm/_torch/custom_ops/cpp_custom_ops.py
- tensorrt_llm/_torch/model_config.py
- tensorrt_llm/_torch/pyexecutor/resource_manager.py
- tensorrt_llm/llmapi/llm_args.py
- scripts/attribution/data/dependency_metadata.yml
- scripts/attribution/data/files_to_dependency.yml
artifact_dir: evidence/pull-bundles/tensorrt-llm/gh-13340
head_ref_oid: 102e6be3abf8da94fc314a07f8f6fee40f0cf616
---
# [None][feat] Integrate FP4 indexer for DSA on Blackwell

- Repository: `NVIDIA/TensorRT-LLM`
- PR: [13340](https://github.com/NVIDIA/TensorRT-LLM/pull/13340)
- Decision: `Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.`
- Reason: Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.

## Changed Paths

- `3rdparty/fetch_content.json`
- `cpp/include/tensorrt_llm/batch_manager/kvCacheManager.h`
- `cpp/include/tensorrt_llm/executor/dataTransceiverState.h`
- `cpp/tensorrt_llm/batch_manager/cacheTransceiver.cpp`
- `cpp/tensorrt_llm/batch_manager/kvCacheManager.cpp`
- `cpp/tensorrt_llm/deep_gemm/CMakeLists.txt`
- `cpp/tensorrt_llm/executor/cache_transmission/cacheSplitConcat.cu`
- `cpp/tensorrt_llm/executor/serialization.cpp`
- `cpp/tensorrt_llm/kernels/fusedCatFp4.cu`
- `cpp/tensorrt_llm/kernels/fusedCatFp4.h`
- `cpp/tensorrt_llm/kernels/indexerKCacheGather.cu`
- `cpp/tensorrt_llm/kernels/indexerKCacheScatter.cu`
- `cpp/tensorrt_llm/nanobind/batch_manager/kvCacheManager.cpp`
- `cpp/tensorrt_llm/thop/CMakeLists.txt`
- `cpp/tensorrt_llm/thop/IndexerKCacheGatherOp.cpp`
- `cpp/tensorrt_llm/thop/IndexerKCacheScatterOp.cpp`
- `cpp/tensorrt_llm/thop/fusedCatFp4Op.cpp`
- `tensorrt_llm/_torch/attention_backend/sparse/dsa.py`
- `tensorrt_llm/_torch/modules/attention.py`
- `cpp/tests/unit_tests/batch_manager/kvCacheManagerTest.cpp`
- `cpp/tests/unit_tests/multi_gpu/cacheTransceiverTest.cpp`
- `tests/integration/defs/accuracy/test_llm_api_pytorch.py`
- `tests/integration/test_lists/qa/llm_function_core.txt`
- `tests/integration/test_lists/test-db/l0_dgx_b200.yml`
- `tests/unittest/_torch/attention/sparse/test_cpp_custom_ops.py`
- `scripts/build_wheel.py`
- `tensorrt_llm/_torch/custom_ops/cpp_custom_ops.py`
- `tensorrt_llm/_torch/model_config.py`
- `tensorrt_llm/_torch/pyexecutor/resource_manager.py`
- `tensorrt_llm/llmapi/llm_args.py`
- `scripts/attribution/data/dependency_metadata.yml`
- `scripts/attribution/data/files_to_dependency.yml`

## Evidence Bundle

`evidence/pull-bundles/tensorrt-llm/gh-13340`
