CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
121 lines
3.9 KiB
Plaintext
121 lines
3.9 KiB
Plaintext
# Copyright Advanced Micro Devices, Inc., or its affiliates.
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
# See here for image contents: https://github.com/devcontainers/images/tree/main/src/base-ubuntu
|
|
|
|
##
|
|
## Common with other Dockerfiles.
|
|
##
|
|
|
|
# ubuntu-20.04 = focal
|
|
# ubuntu-22.04 = jammy
|
|
# ubuntu-24.04 = noble
|
|
FROM mcr.microsoft.com/devcontainers/base:noble
|
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Propagate the environment variable HTTP_PROXY into the apt config if it's set.
|
|
RUN [ -z ${HTTP_PROXY} ] || (echo "Acquire::http::Proxy \"${HTTP_PROXY}\";" > /etc/apt/apt.conf.d/proxy)
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
bc \
|
|
gdb \
|
|
libopenblas-dev \
|
|
libncurses-dev \
|
|
m4 \
|
|
make \
|
|
nano \
|
|
netcat-traditional \
|
|
ninja-build \
|
|
python3-dev \
|
|
python3-venv \
|
|
vim \
|
|
wget \
|
|
xz-utils \
|
|
libdw-dev
|
|
|
|
# Needed for clang-format from ROCm 4.3.1
|
|
RUN wget -nv --show-progress --progress=dot:mega -O /tmp/libtinfo5.deb http://security.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb \
|
|
&& apt-get install -y /tmp/libtinfo5.deb
|
|
|
|
# cmake 3.25.2
|
|
RUN wget -nv --show-progress --progress=dot:mega -O /tmp/cmake-install.sh https://github.com/Kitware/CMake/releases/download/v3.25.2/cmake-3.25.2-linux-x86_64.sh \
|
|
&& sh /tmp/cmake-install.sh --prefix=/usr/local --skip-license \
|
|
&& rm /tmp/cmake-install.sh
|
|
|
|
# clang-format from ROCm 4.3.1
|
|
ADD docker/install-clang-format /tmp
|
|
RUN /tmp/install-clang-format && rm /tmp/install-clang-format
|
|
ENV PATH="/opt/clang-format/bin:${PATH}"
|
|
|
|
# ccache
|
|
RUN apt-get update && apt-get install -y \
|
|
libzstd-dev
|
|
RUN wget -nv --show-progress --progress=dot:mega https://github.com/ccache/ccache/releases/download/v4.11/ccache-4.11.tar.gz -O /tmp/ccache-4.11.tar.gz && \
|
|
tar xf /tmp/ccache-4.11.tar.gz -C /tmp && \
|
|
cmake -S/tmp/ccache-4.11 -B/tmp/ccache-4.11/build -GNinja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DENABLE_TESTING=OFF \
|
|
-DREDIS_STORAGE_BACKEND=OFF && \
|
|
ninja -C /tmp/ccache-4.11/build install && \
|
|
rm -r /tmp/ccache-4.11 /tmp/ccache-4.11.tar.gz
|
|
|
|
# cppcheck
|
|
ADD docker/install-cppcheck /tmp
|
|
RUN /tmp/install-cppcheck && rm /tmp/install-cppcheck
|
|
|
|
# graph & documentation & perf
|
|
RUN apt-get update && apt-get install -y \
|
|
graphviz \
|
|
doxygen \
|
|
linux-tools-common linux-tools-generic
|
|
|
|
# Python
|
|
RUN python3 -m venv /opt/rr-python-venv
|
|
ENV PATH="/opt/rr-python-venv/bin:$PATH"
|
|
COPY requirements.txt /tmp/requirements.txt
|
|
RUN pip install --no-cache-dir -r /tmp/requirements.txt && rm /tmp/requirements.txt
|
|
|
|
# HipBLASLt
|
|
RUN apt-get update && apt-get install -y \
|
|
libmsgpack-dev \
|
|
libboost-program-options-dev \
|
|
libboost-filesystem-dev \
|
|
kmod
|
|
|
|
##
|
|
## Specific to this Dockerfile. Put faster-changing-things last.
|
|
##
|
|
|
|
# ROCm
|
|
ARG ROCROLLER_AMDGPU_URL=https://repo.radeon.com/amdgpu-install/7.2.1/ubuntu/jammy/amdgpu-install_7.2.1.70201-1_all.deb
|
|
ARG ROCROLLER_AMDGPU_BUILD_NUMBER=
|
|
ARG ROCROLLER_AMDGPU_BUILD_URI=
|
|
|
|
RUN wget -nv --show-progress --progress=dot:mega -O /tmp/amdgpu_install.deb ${ROCROLLER_AMDGPU_URL} \
|
|
&& apt-get update \
|
|
&& apt-get install -y /tmp/amdgpu_install.deb \
|
|
&& rm /tmp/amdgpu_install.deb \
|
|
&& if test -n "${ROCROLLER_AMDGPU_BUILD_NUMBER}"; then amdgpu-repo --amdgpu-build=${ROCROLLER_AMDGPU_BUILD_NUMBER} --rocm-build=${ROCROLLER_AMDGPU_BUILD_URI}; fi \
|
|
&& amdgpu-install -y --usecase=rocmdev --no-dkms
|
|
RUN apt-get update && apt-get install -y rocm-llvm-dev
|
|
|
|
# codeql
|
|
ADD codeql/install_codeql /tmp
|
|
RUN /tmp/install_codeql && rm /tmp/install_codeql
|
|
ENV PATH="/opt/codeql/codeql:${PATH}"
|
|
|
|
RUN ( \
|
|
echo "base_image: ${base_image}" && \
|
|
echo "rocroller: clang" \
|
|
) > /.container_info.txt
|
|
|
|
ENV CXX=/opt/rocm/bin/amdclang++
|
|
ENV CC=/opt/rocm/bin/amdclang
|
|
|
|
ADD docker/install-rocprof-trace-decoder /tmp
|
|
RUN /tmp/install-rocprof-trace-decoder && rm /tmp/install-rocprof-trace-decoder
|
|
|
|
# Clean image
|
|
RUN apt-get autoremove -y && apt-get clean -y && rm -rf /var/lib/apt/lists/*
|