---
id: pr-cccl-cub-8742
repo: NVIDIA/cccl
pr: 8742
title: Use the new tuning API internally for `detail::topk::dispatch`
author: bernhardmgruber
date: '2026-05-12'
url: https://github.com/NVIDIA/cccl/pull/8742
source_category: upstream-code
architectures:
- sm100
tags:
- CUB
- benchmark_test
- memory_primitives
- moe_routing
- scheduler_autotune
- topk
techniques:
- autotuning
- tile-scheduling
hardware_features: []
kernel_types:
- memory
- moe
- scheduler
languages:
- cuda-cpp
captured_at: '2026-05-16'
status: merged
merge_sha: a5d74f3f2dba77aa40cff4aa6c12c9eb0dd1771b
inclusion_reason: Mine shape sets, tolerance rules, warmup logic, and profile commands before mutating code.
changed_paths:
- cub/benchmarks/bench/topk/keys.cu
- cub/benchmarks/bench/topk/pairs.cu
- cub/cub/device/device_topk.cuh
- cub/test/catch2_test_device_topk_env.cu
artifact_dir: evidence/pull-bundles/cccl-cub/gh-8742
head_ref_oid: fcc64b62ec2e6793f7243706d758f50fe119c517
---
# Use the new tuning API internally for `detail::topk::dispatch`

- Repository: `NVIDIA/cccl`
- PR: [8742](https://github.com/NVIDIA/cccl/pull/8742)
- Decision: `Mine shape sets, tolerance rules, warmup logic, and profile commands before mutating code.`
- Reason: Mine shape sets, tolerance rules, warmup logic, and profile commands before mutating code.

## Changed Paths

- `cub/benchmarks/bench/topk/keys.cu`
- `cub/benchmarks/bench/topk/pairs.cu`
- `cub/cub/device/device_topk.cuh`
- `cub/test/catch2_test_device_topk_env.cu`

## Evidence Bundle

`evidence/pull-bundles/cccl-cub/gh-8742`
