# # CCCL PR benchmark request config. # # ## Overview: # # This file is used to request benchmark comparisons in PR CI. # # This file must match ci/bench.template.yaml to merge. # CI branch protections will fail if they differ. Reset before merging. # # To update the defaults (e.g. new GPU pools), modify both this file and # ci/bench.template.yaml together in the same PR. # # !! Strongly consider appending the following to your **commit messages** while benchmarking. !! # This prevents wasteful non-benchmark CI jobs if they are not needed. # # [bench-only] # # To skip compile-time benchmark telemetry on unrelated changes, use: # # [skip-compile-time-bench] # # ## Quick start: # # 1. Add one or more benchmark regexes under benchmarks.filters.cub and/or # benchmarks.filters.python. # 2. Enable at least one GPU by uncommenting or adding entries in benchmarks.gpus. # 3. Push and inspect the dispatched benchmark jobs/artifacts. # 4. Remove/reset benchmark-request edits before final merge. benchmarks: # Benchmark filters grouped by project. filters: # CUB C++ benchmark filters (regex matched against ninja target names). cub: # Examples: # - '^cub\.bench\.for_each\.base' # - '^cub\.bench\.reduce\.(sum|min)\.' # Python benchmark filters (regex matched against paths under benchmarks/). python: # Examples: # - 'compute/reduce/sum\.py' # - 'compute/transform/.*\.py' # Select GPUs. These are limited and shared, be intentional and conservative. gpus: # - "t4" # sm_75, 16 GB # - "rtx2080" # sm_75, 8 GB # - "rtxa6000" # sm_86, 48 GB # - "l4" # sm_89, 24 GB # - "rtx4090" # sm_89, 24 GB # - "h100" # sm_90, 80 GB # - "rtxpro6000" # sm_120 # Extra .devcontainer/launch.sh -d args # launch_args: "--cuda 13.3 --host gcc14" launch_args: "" # Latest nvcc + gcc # Advanced: base_ref: "origin/main" test_ref: "HEAD" arch: "native" nvbench_args: >- --timeout 30 --skip-time 15e-6 --stopping-criterion entropy --throttle-threshold 90 --throttle-recovery-delay 0.15 nvbench_compare_args: ""