[AMD] pin rccl-tests to a known-good commit#1693
Conversation
ROCm/rocm-systems develop chases NCCL symbols (e.g. NCCL_CTA_POLICY_ZERO) that the base image's RCCL headers don't define, breaking the rccl-tests build. Pin to 746c7b3c and shallow fetch-by-sha instead of tracking develop. Co-authored-by: Xinyu Jiang <xinyuj2@andrew.cmu.edu> Co-authored-by: Zhiyao Jiang <jessicajiang324@gmail.com>
There was a problem hiding this comment.
Code Review
This pull request updates docker/Dockerfile.rocm to pin the rccl-tests repository to a specific commit instead of a branch. Feedback on this change highlights a potential issue where the temporary directory /tmp/rocm-systems is deleted while the shell process is still inside it, which can cause unexpected behavior. It is recommended to change the directory (e.g., to /) before executing the rm -rf command.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| RUN mkdir -p /tmp/rocm-systems && cd /tmp/rocm-systems && git init -q && \ | ||
| git remote add origin ${RCCL_TESTS_REPO} && \ | ||
| git fetch --depth 1 origin ${RCCL_TESTS_COMMIT} && git checkout -q FETCH_HEAD && \ | ||
| make -C ${RCCL_TESTS_PATH} -j$(nproc) \ | ||
| HIP_HOME=/opt/rocm NCCL_HOME=/opt/rocm GPU_TARGETS=${GPU_ARCH} && \ | ||
| cp ${RCCL_TESTS_PATH}/build/*_perf /usr/local/bin/ && \ | ||
| rm -rf /tmp/rocm-systems |
There was a problem hiding this comment.
Deleting the current working directory (/tmp/rocm-systems) while the shell process is still inside it can cause unexpected behavior or failures in some environments or storage drivers. It is safer to change the directory (e.g., back to / or the parent directory) before executing rm -rf.
RUN mkdir -p /tmp/rocm-systems && cd /tmp/rocm-systems && git init -q && \
git remote add origin ${RCCL_TESTS_REPO} && \
git fetch --depth 1 origin ${RCCL_TESTS_COMMIT} && git checkout -q FETCH_HEAD && \
make -C ${RCCL_TESTS_PATH} -j$(nproc) \
HIP_HOME=/opt/rocm NCCL_HOME=/opt/rocm GPU_TARGETS=${GPU_ARCH} && \
cp ${RCCL_TESTS_PATH}/build/*_perf /usr/local/bin/ && \
cd / && rm -rf /tmp/rocm-systems
Co-authored-with: @JessicaJiang-123
ROCm/rocm-systems develop chases NCCL symbols (e.g. NCCL_CTA_POLICY_ZERO) that the base image's RCCL headers don't define, breaking the rccl-tests build. Pin to 746c7b3c and shallow fetch-by-sha instead of tracking develop.