Skip to content

Commit 2c3b8eb

Browse files
committed
[CS9] Updates to CentOS stream 9 build (#1326)
- Add missing common_utils.sh - Update the install vision part - Move to amdgpu rhel 9.3 builds - Update to pick python from conda path - Add a missing package - Add ROCM_PATH and magma - Updated repo radeon path
1 parent e0a05f0 commit 2c3b8eb

File tree

3 files changed

+53
-28
lines changed

3 files changed

+53
-28
lines changed

.ci/docker/centos-rocm/Dockerfile.centos.stream

Lines changed: 34 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ENV PYTORCH_ROCM_ARCH ${PYTORCH_ROCM_ARCH}
1111

1212
# Install common dependencies (so that this step can be cached separately)
1313
ARG EC2
14-
ADD ./common/install_base.sh install_base.sh
14+
COPY ./common/install_base.sh install_base.sh
1515
RUN bash ./install_base.sh && rm install_base.sh
1616

1717
#Install langpack
@@ -31,49 +31,55 @@ RUN dnf --enablerepo=crb install -y ninja-build
3131

3232
# (optional) Install non-default glibc version
3333
ARG GLIBC_VERSION
34-
ADD ./common/install_glibc.sh install_glibc.sh
34+
COPY ./common/install_glibc.sh install_glibc.sh
3535
RUN if [ -n "${GLIBC_VERSION}" ]; then bash ./install_glibc.sh; fi
3636
RUN rm install_glibc.sh
3737

3838
# Install user
39-
ADD ./common/install_user.sh install_user.sh
39+
COPY ./common/install_user.sh install_user.sh
4040
RUN bash ./install_user.sh && rm install_user.sh
4141

4242
# Install conda and other packages (e.g., numpy, pytest)
43-
ENV PATH /opt/conda/bin:$PATH
4443
ARG ANACONDA_PYTHON_VERSION
4544
ARG CONDA_CMAKE
46-
ADD requirements-ci.txt /opt/conda/requirements-ci.txt
47-
ADD ./common/install_conda.sh install_conda.sh
48-
RUN bash ./install_conda.sh && rm install_conda.sh
49-
RUN rm /opt/conda/requirements-ci.txt
45+
ENV ANACONDA_PYTHON_VERSION=$ANACONDA_PYTHON_VERSION
46+
ENV PATH /opt/conda/envs/py_$ANACONDA_PYTHON_VERSION/bin:/opt/conda/bin:$PATH
47+
COPY requirements-ci.txt /opt/conda/requirements-ci.txt
48+
COPY ./common/install_conda.sh install_conda.sh
49+
COPY ./common/common_utils.sh common_utils.sh
50+
RUN bash ./install_conda.sh && rm install_conda.sh common_utils.sh /opt/conda/requirements-ci.txt
5051

5152
# (optional) Install protobuf for ONNX
5253
ARG PROTOBUF
53-
ADD ./common/install_protobuf.sh install_protobuf.sh
54+
COPY ./common/install_protobuf.sh install_protobuf.sh
5455
RUN if [ -n "${PROTOBUF}" ]; then bash ./install_protobuf.sh; fi
5556
RUN rm install_protobuf.sh
5657
ENV INSTALLED_PROTOBUF ${PROTOBUF}
5758

5859
# (optional) Install database packages like LMDB and LevelDB
5960
ARG DB
60-
ADD ./common/install_db.sh install_db.sh
61+
COPY ./common/install_db.sh install_db.sh
6162
RUN if [ -n "${DB}" ]; then bash ./install_db.sh; fi
6263
RUN rm install_db.sh
6364
ENV INSTALLED_DB ${DB}
6465

6566
# (optional) Install vision packages like OpenCV and ffmpeg
6667
ARG VISION
67-
ADD ./common/install_vision.sh install_vision.sh
68+
COPY ./common/install_vision.sh ./common/cache_vision_models.sh ./common/common_utils.sh ./
6869
RUN if [ -n "${VISION}" ]; then bash ./install_vision.sh; fi
69-
RUN rm install_vision.sh
70+
RUN rm install_vision.sh cache_vision_models.sh common_utils.sh
7071
ENV INSTALLED_VISION ${VISION}
7172

7273
# Install rocm
7374
ARG ROCM_VERSION
74-
ADD ./common/install_rocm.sh install_rocm.sh
75+
COPY ./common/install_rocm.sh install_rocm.sh
7576
RUN bash ./install_rocm.sh
7677
RUN rm install_rocm.sh
78+
COPY ./common/install_rocm_magma.sh install_rocm_magma.sh
79+
RUN bash ./install_rocm_magma.sh
80+
RUN rm install_rocm_magma.sh
81+
82+
ENV ROCM_PATH /opt/rocm
7783
ENV PATH /opt/rocm/bin:$PATH
7884
ENV PATH /opt/rocm/hcc/bin:$PATH
7985
ENV PATH /opt/rocm/hip/bin:$PATH
@@ -85,18 +91,30 @@ ENV LC_ALL en_US.utf8
8591

8692
# (optional) Install non-default CMake version
8793
ARG CMAKE_VERSION
88-
ADD ./common/install_cmake.sh install_cmake.sh
94+
COPY ./common/install_cmake.sh install_cmake.sh
8995
RUN if [ -n "${CMAKE_VERSION}" ]; then bash ./install_cmake.sh; fi
9096
RUN rm install_cmake.sh
9197

9298
# (optional) Install non-default Ninja version
9399
ARG NINJA_VERSION
94-
ADD ./common/install_ninja.sh install_ninja.sh
100+
COPY ./common/install_ninja.sh install_ninja.sh
95101
RUN if [ -n "${NINJA_VERSION}" ]; then bash ./install_ninja.sh; fi
96102
RUN rm install_ninja.sh
97103

104+
ARG TRITON
105+
# Install triton, this needs to be done before sccache because the latter will
106+
# try to reach out to S3, which docker build runners don't have access
107+
ENV CMAKE_C_COMPILER cc
108+
ENV CMAKE_CXX_COMPILER c++
109+
COPY ./common/install_triton.sh install_triton.sh
110+
COPY ./common/common_utils.sh common_utils.sh
111+
COPY ci_commit_pins/triton-rocm.txt triton-rocm.txt
112+
COPY triton_version.txt triton_version.txt
113+
RUN if [ -n "${TRITON}" ]; then bash ./install_triton.sh; fi
114+
RUN rm install_triton.sh common_utils.sh triton-rocm.txt triton_version.txt
115+
98116
# Install ccache/sccache (do this last, so we get priority in PATH)
99-
ADD ./common/install_cache.sh install_cache.sh
117+
COPY ./common/install_cache.sh install_cache.sh
100118
ENV PATH /opt/cache/bin:$PATH
101119
RUN bash ./install_cache.sh && rm install_cache.sh
102120

.ci/docker/common/install_base.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ install_centos() {
159159
if [[ $OS_VERSION == 9 ]]
160160
then
161161
dnf --enablerepo=crb -y install libsndfile-devel
162+
yum install -y procps
162163
else
163164
yum install -y \
164165
opencv-devel \

.ci/docker/common/install_rocm.sh

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,19 +83,25 @@ install_centos() {
8383

8484
yum install -y epel-release
8585

86-
# Add amdgpu repository
87-
local amdgpu_baseurl
88-
if [[ $OS_VERSION == 9 ]]; then
89-
amdgpu_baseurl="https://repo.radeon.com/amdgpu/${ROCM_VERSION}/rhel/9.0/main/x86_64"
90-
else
91-
amdgpu_baseurl="https://repo.radeon.com/amdgpu/${ROCM_VERSION}/rhel/7.9/main/x86_64"
86+
if [[ $(ver $ROCM_VERSION) -ge $(ver 4.5) ]]; then
87+
# Add amdgpu repository
88+
local amdgpu_baseurl
89+
if [[ $OS_VERSION == 9 ]]; then
90+
amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/rhel/9.1/main/x86_64"
91+
else
92+
if [[ $(ver $ROCM_VERSION) -ge $(ver 5.3) ]]; then
93+
amdgpu_baseurl="https://repo.radeon.com/amdgpu/${ROCM_VERSION}/rhel/7.9/main/x86_64"
94+
else
95+
amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/rhel/7.9/main/x86_64"
96+
fi
97+
fi
98+
echo "[AMDGPU]" > /etc/yum.repos.d/amdgpu.repo
99+
echo "name=AMDGPU" >> /etc/yum.repos.d/amdgpu.repo
100+
echo "baseurl=${amdgpu_baseurl}" >> /etc/yum.repos.d/amdgpu.repo
101+
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo
102+
echo "gpgcheck=1" >> /etc/yum.repos.d/amdgpu.repo
103+
echo "gpgkey=http://repo.radeon.com/rocm/rocm.gpg.key" >> /etc/yum.repos.d/amdgpu.repo
92104
fi
93-
echo "[AMDGPU]" > /etc/yum.repos.d/amdgpu.repo
94-
echo "name=AMDGPU" >> /etc/yum.repos.d/amdgpu.repo
95-
echo "baseurl=${amdgpu_baseurl}" >> /etc/yum.repos.d/amdgpu.repo
96-
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo
97-
echo "gpgcheck=1" >> /etc/yum.repos.d/amdgpu.repo
98-
echo "gpgkey=http://repo.radeon.com/rocm/rocm.gpg.key" >> /etc/yum.repos.d/amdgpu.repo
99105

100106
if [[ $OS_VERSION == 9 ]]; then
101107
local rocm_baseurl="invalid-url"

0 commit comments

Comments
 (0)