Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e2f2449
test(rccl): add host microtests for the bootstrap
aduforest Oct 15, 2026
3e01295
test(rccl): address review on the bootstrap microtests
aduforest Oct 15, 2026
45917fa
test(rccl): check the root and the TLS helper thread directly
aduforest Oct 15, 2026
8cbd379
test(rccl): check gathered addresses per rank and count helper connects
aduforest Oct 15, 2026
517565d
test(rccl): check bcastGrowHandle leaves the inner ranks alone
aduforest Oct 16, 2026
dd2a465
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 16, 2026
eb45a70
test(rccl): tighten bootstrap microtests and name pinned bugs KnownBug_
aduforest Oct 16, 2026
6efcdac
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 19, 2026
c14e006
test(rccl): move the bootstrap binary's fakes out of bootstrap-test.cc
aduforest Oct 19, 2026
ad00342
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 19, 2026
2531c9e
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 20, 2026
0ef031a
test(rccl): host-only suites declare num_gpus 0
aduforest Oct 21, 2026
1e4d592
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 21, 2026
0bedadf
test(rccl): check bootstrap behaviour instead of WARN text per review
aduforest Oct 22, 2026
7359a42
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 22, 2026
5209585
test(rccl): keep bootstrap pins and fakes UB- and leak-free (pre-merg…
aduforest Oct 22, 2026
7d753a6
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 22, 2026
c991f7b
test(rccl): move bootstrap's in-memory sockets into socket_fakes per …
aduforest Oct 22, 2026
34a99f5
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 22, 2026
5cc8eb0
test(rccl): revert the socket_fakes port
aduforest Oct 22, 2026
229eafb
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 24, 2026
6ca2bc4
test(rccl): add a BootstrapNetBidirMicrotest fixture per review
aduforest Oct 24, 2026
8e77e8b
test(rccl): stop changing ci-precheckin.json
aduforest Oct 24, 2026
7c058e3
Merge remote-tracking branch 'origin/develop' into users/aduforest/ai…
aduforest Oct 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions projects/rccl/test/host/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,19 @@ function(rccl_define_micro_source_lists)
../common/ProcessIsolatedTestRunner.cpp
PARENT_SCOPE)

# rccl-UnitTestsMicroBootstrap -- src/bootstrap.cc. Own binary: bootstrap_micro_fakes.cc replaces misc/socket.cc
# wholesale, and other binaries link bootstrap_stubs.cc for this unit's symbols.
set(TEST_MICRO_BOOTSTRAP_SOURCE_FILES
bootstrap-test.cc
fakes/bootstrap_micro_fakes.cc
fakes/env_fakes.cc
fakes/hip_fakes.cc
fakes/nccl_fakes.cc
fakes/os_fakes.cc
${RCCL_HOST_HIPIFY_DIR}/src/misc/utils.cc
../common/main_altrsmi.cpp
PARENT_SCOPE)

# rccl-UnitTestsMicroWarpSpeed -- scheduler UUTs under ENABLE_WARP_SPEED.
set(TEST_MICRO_SCHEDULER_SOURCE_FILES
scheduler-test.cc
Expand Down Expand Up @@ -1337,6 +1350,16 @@ endif()
# all targets -- no need to repeat it per binary.
rccl_mark_oracle_tus_generated(${RCCL_HOST_HIPIFY_DIR} argcheck archinfo utils kernel_config)

# ---------------------------------------------------------------------------
# rccl-UnitTestsMicroBootstrap
# ---------------------------------------------------------------------------
rccl_add_micro_binary(rccl-UnitTestsMicroBootstrap
SOURCES ${TEST_MICRO_BOOTSTRAP_SOURCE_FILES}
EXTRA_DEFS
${_MICRO_MODE_DEFS}
BOOTSTRAP_CC_PATH="${RCCL_HOST_HIPIFY_DIR}/src/bootstrap.cc"
CATEGORIES_YAML "${CMAKE_CURRENT_SOURCE_DIR}/../test_categories_micro_bootstrap.yaml")

# ---------------------------------------------------------------------------
# rccl-UnitTestsMicro
# ---------------------------------------------------------------------------
Expand Down
7 changes: 7 additions & 0 deletions projects/rccl/test/host/MICROTEST_README.md
Original file line number Diff line number Diff line change
Expand Up @@ -227,6 +227,11 @@ export colliding non-`static` symbols; otherwise a unit needs its own binary:
tables, prime strides, Walecki, Walecki+greedy) and the load-balanced cut
selection in `findRingCutIndices`. `greedyRingGen`'s out-of-memory arm is
driven through the heap half of `fakes/libc_seam.h`.
- **`rccl-UnitTestsMicroBootstrap`**: `bootstrap.cc` (via `BOOTSTRAP_CC_PATH`, from
`bootstrap-test.cc`); suites `Bootstrap*Microtest.*`. Ranks run as threads over the
in-memory socket layer and net plugin in `fakes/bootstrap_micro_fakes.cc`. Its own binary
because those seams replace `misc/socket.cc` wholesale, and other binaries link
`bootstrap_stubs.cc` for this unit's symbols. See `test_categories_micro_bootstrap.yaml`.
- **`rccl-UnitTestsMicroEnqueue`** — `enqueue.cc` (via `ENQUEUE_CC_PATH`); suite
`EnqueueMicrotest.*`. All tests live in `enqueue-test.cc`, grouped by unit under
test; several fixtures are reused by later groups, so the order within the file
Expand Down Expand Up @@ -610,6 +615,7 @@ symbol.
| `src/algorithms/dda/*.cc` (targets that do not compile the real file) | `fakes/dda_fakes.cc` |
| `src/allocator.cc` | `fakes/allocator_fakes.cc` |
| `src/bootstrap.cc` | `fakes/bootstrap_stubs.cc` |
| externals `src/bootstrap.cc` reaches (`rccl-UnitTestsMicroBootstrap`, which compiles it) | `fakes/bootstrap_micro_fakes.cc` |
| `src/ce_coll.cc` (targets that do not compile the real file) | `fakes/ce_fakes.cc` |
| `src/collectives.cc` | `fakes/collectives_fakes.cc` |
| `src/dev_runtime.cc` (targets that do not compile the real file) | `fakes/dev_runtime_fakes.cc` |
Expand Down Expand Up @@ -1034,6 +1040,7 @@ cd projects/rccl/test/host
cmake -B build -DCMAKE_BUILD_TYPE=Release \
-DRCCL_BUILD_DIR=/path/to/projects/rccl/build/release
cmake --build build -j"$(nproc)"
./build/rccl-UnitTestsMicroBootstrap # src/bootstrap.cc tests
./build/rccl-UnitTestsMicro # p2p tests, ldd shows no HIP/ROCm/HSA/RCCL
./build/rccl-UnitTestsMicroCollectives # src/collectives.cc tests
./build/rccl-UnitTestsMicroOnerank # src/device/onerank.cu tests
Expand Down
Loading
Loading