---
id: pr-cccl-cub-6077
repo: NVIDIA/cccl
pr: 6077
title: '[CUB] Use `BlockLoadToShared` in `DeviceMerge`'
author: pauleonix
date: '2025-11-06'
url: https://github.com/NVIDIA/cccl/pull/6077
source_category: upstream-code
architectures:
- sm90
tags:
- benchmark_test
- memory_primitives
- scheduler_autotune
- sm90
techniques:
- autotuning
- tile-scheduling
hardware_features:
- hopper
kernel_types:
- memory
- scheduler
languages:
- cuda-cpp
captured_at: '2026-05-16'
status: merged
merge_sha: e2f868ffcecc6c2cee5c1ebbae031a7aee8e3452
inclusion_reason: Mine shape sets, tolerance rules, warmup logic, and profile commands before mutating code.
changed_paths:
- cub/benchmarks/bench/merge/keys.cu
- cub/benchmarks/bench/merge/merge_common.cuh
- cub/benchmarks/bench/merge/pairs.cu
- cub/cub/agent/agent_merge.cuh
- cub/cub/device/dispatch/dispatch_merge.cuh
- cub/cub/device/dispatch/tuning/tuning_merge.cuh
- cub/test/catch2_test_device_merge.cu
artifact_dir: evidence/pull-bundles/cccl-cub/gh-6077
head_ref_oid: e82ea6fd7a6a7173352b03c4db33f0d5d8e9d39d
---
# [CUB] Use `BlockLoadToShared` in `DeviceMerge`

- Repository: `NVIDIA/cccl`
- PR: [6077](https://github.com/NVIDIA/cccl/pull/6077)
- 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/merge/keys.cu`
- `cub/benchmarks/bench/merge/merge_common.cuh`
- `cub/benchmarks/bench/merge/pairs.cu`
- `cub/cub/agent/agent_merge.cuh`
- `cub/cub/device/dispatch/dispatch_merge.cuh`
- `cub/cub/device/dispatch/tuning/tuning_merge.cuh`
- `cub/test/catch2_test_device_merge.cu`

## Evidence Bundle

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