cubDeviceFind - CUB DeviceFind Search Algorithms
Description
This sample demonstrates the three device-wide search algorithms: cub::DeviceFind::FindIf for predicate search, and cub::DeviceFind::LowerBound / UpperBound for parallel binary search. Results are verified against std::find_if, std::lower_bound, and std::upper_bound on the host.
Key Concepts
CCCL 3.3, CUB Device Algorithms, Parallel Search, Binary Search
Supported SM Architectures
SM 7.0 SM 7.5 SM 8.0 SM 8.6 SM 8.9 SM 9.0 SM 10.0 SM 11.0 SM 12.0
Supported OSes
Linux, Windows
Supported CPU Architecture
x86_64, aarch64
CUDA APIs involved
CCCL CUB
cub::DeviceFind::FindIf, cub::DeviceFind::LowerBound, cub::DeviceFind::UpperBound
CCCL libcu++
cuda::std::less
CUDA Runtime API
cudaDeviceSynchronize, cudaGetDeviceProperties
Dependencies needed to build/run
CCCL 3.3+. Fetched automatically via CPM at configure time (pinned to v3.3.3). Override with -DCCCL_SOURCE_DIR=/path/to/cccl to use a local checkout.
Prerequisites
Download and install the CUDA Toolkit for your corresponding platform. Make sure the dependencies mentioned in Dependencies section above are installed.