---
id: pr-cccl-cub-9018
repo: NVIDIA/cccl
pr: 9018
title: '[Tile] Mark some algorithms as `_CCCL_HOST_DEVICE_API`'
author: miscco
date: '2026-05-15'
url: https://github.com/NVIDIA/cccl/pull/9018
source_category: upstream-code
architectures:
- sm100
tags:
- cuda kernel
techniques: []
hardware_features: []
kernel_types: []
languages:
- cuda-cpp
captured_at: '2026-05-16'
status: merged
merge_sha: f81d38588ef95af9cdfc889d6a079a9be6502ef2
inclusion_reason: Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.
changed_paths:
- docs/libcudacxx/tile.rst
- libcudacxx/include/cuda/std/__algorithm/equal_range.h
- libcudacxx/include/cuda/std/__algorithm/find_end.h
- libcudacxx/include/cuda/std/__algorithm/find_first_of.h
- libcudacxx/include/cuda/std/__algorithm/partition.h
- libcudacxx/include/cuda/std/__algorithm/search.h
- libcudacxx/include/cuda/std/__algorithm/search_n.h
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/equal_range.pass.cpp
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/find_end.pass.cpp
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/find_first_of.pass.cpp
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/partition.pass.cpp
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/search.pass.cpp
- libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/search_n.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_n.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp
- libcudacxx/test/libcudacxx/std/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp
artifact_dir: evidence/pull-bundles/cccl-cub/gh-9018
head_ref_oid: 4d7fd7286ded71de4b10fb980408c46a1c053e90
---
# [Tile] Mark some algorithms as `_CCCL_HOST_DEVICE_API`

- Repository: `NVIDIA/cccl`
- PR: [9018](https://github.com/NVIDIA/cccl/pull/9018)
- Decision: `Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.`
- Reason: Search-matched CUDA kernel optimization PR; materialize diff/source before synthesis.

## Changed Paths

- `docs/libcudacxx/tile.rst`
- `libcudacxx/include/cuda/std/__algorithm/equal_range.h`
- `libcudacxx/include/cuda/std/__algorithm/find_end.h`
- `libcudacxx/include/cuda/std/__algorithm/find_first_of.h`
- `libcudacxx/include/cuda/std/__algorithm/partition.h`
- `libcudacxx/include/cuda/std/__algorithm/search.h`
- `libcudacxx/include/cuda/std/__algorithm/search_n.h`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/equal_range.pass.cpp`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/find_end.pass.cpp`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/find_first_of.pass.cpp`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/partition.pass.cpp`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/search.pass.cpp`
- `libcudacxx/test/libcudacxx/libcxx/module_headers/cuda/std/algorithm/search_n.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_n.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range.pass.cpp`
- `libcudacxx/test/libcudacxx/std/algorithms/alg.sorting/alg.binary.search/equal.range/equal_range_comp.pass.cpp`

## Evidence Bundle

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