---
id: pr-cccl-cub-8381
repo: NVIDIA/cccl
pr: 8381
title: Replace `detail::merge::dispatch` by CUB's public API
author: bernhardmgruber
date: '2026-04-16'
url: https://github.com/NVIDIA/cccl/pull/8381
source_category: upstream-code
architectures:
- sm100
tags:
- benchmark
- benchmark_test
- memory_primitives
- policy tuning
techniques: []
hardware_features: []
kernel_types:
- memory
languages:
- cuda-cpp
captured_at: '2026-05-16'
status: merged
merge_sha: 06ba38f0f7d929879fd9c851c23dda0a9544d98d
inclusion_reason: 'Transfer primitive policy carefully: coalescing, shared-memory staging, partial tiles, and determinism are part of the contract.'
changed_paths:
- cub/benchmarks/bench/merge/keys.cu
- cub/benchmarks/bench/merge/merge_common.cuh
- cub/benchmarks/bench/merge/pairs.cu
- cub/cub/detail/env_dispatch.cuh
- cub/cub/device/device_merge.cuh
- cub/test/catch2_test_device_merge_env.cu
- cub/test/catch2_test_device_merge_no_unroll.cu
- cub/test/catch2_test_device_reduce_env.cu
- nvbench_helper/nvbench_helper/nvbench_helper.cuh
- thrust/thrust/system/cuda/detail/merge.h
artifact_dir: evidence/pull-bundles/cccl-cub/gh-8381
head_ref_oid: 3191fcdd7b5b9ee959a62c7351da29ef4f8cf9a8
---
# Replace `detail::merge::dispatch` by CUB's public API

- Repository: `NVIDIA/cccl`
- PR: [8381](https://github.com/NVIDIA/cccl/pull/8381)
- Decision: `Transfer primitive policy carefully: coalescing, shared-memory staging, partial tiles, and determinism are part of the contract.`
- Reason: Transfer primitive policy carefully: coalescing, shared-memory staging, partial tiles, and determinism are part of the contract.

## Changed Paths

- `cub/benchmarks/bench/merge/keys.cu`
- `cub/benchmarks/bench/merge/merge_common.cuh`
- `cub/benchmarks/bench/merge/pairs.cu`
- `cub/cub/detail/env_dispatch.cuh`
- `cub/cub/device/device_merge.cuh`
- `cub/test/catch2_test_device_merge_env.cu`
- `cub/test/catch2_test_device_merge_no_unroll.cu`
- `cub/test/catch2_test_device_reduce_env.cu`
- `nvbench_helper/nvbench_helper/nvbench_helper.cuh`
- `thrust/thrust/system/cuda/detail/merge.h`

## Evidence Bundle

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