Files
rocm-systems/projects/rocprofiler-compute/docker/Dockerfile.customrocmtest
T
vedithal-amd aa5dfb98f9 MI350 Fix L2 cache to HBM read counters/metrics (#2501)
* Fix rocprofiler-sdk metrics definition

* Use TCC_EA0_RDREQ_128B instead of TCC_BUBBLE counter for L2 cache to
  HBM counters and metrics

* Update MI350 counter definitions
    * FETCH_SIZE
    * BANDWIDTH_EA

* Update MI350 metrics definitions
    * System Speed of Light, L2-Fabric Read BW
    * Roofline Plot Points, AI (Arithmetic Intensity) HBM
    * Roofline Performance Rates, HBM Bandwidth

* Remove redundant definition for gfx950 and fix BANDWIDTH_EA definition

Test HBM bandwidth metric for memcopy workload

* Add memcopy.cpp workload

* Add metric validation test suite to validate HBM Bandwidth metric for
  memcopy workload

* Move gpu_soc() to test_utils.py for better re-usability

* Update TUI analysis config

* Fix hbm bandwidth formula for mi350 in calc_ai_profile

Co-authored-by: Alysa Liu <Alysa.Liu@amd.com>
2026-01-23 15:56:24 -05:00

51 lines
1.9 KiB
Docker

# Use a base image
FROM <rocm_build_image>
# Install curl first (needed for ROCm download)
RUN apt-get update && apt-get install -y curl
# Define the tarball name as a variable
# Check https://therock-nightly-tarball.s3.amazonaws.com/index.html for latest builds
# Use therock-dist-linux-gfx<arch>-dcgpu-<rocm-version>.tar.gz naming convention
ARG TARBALL_NAME=therock-dist-linux-gfx94X-dcgpu-7.11.0a20260116.tar.gz
# Install ROCm from TheRock Nightly build
RUN mkdir -p /rocm && \
curl -fLO https://therock-nightly-tarball.s3.amazonaws.com/${TARBALL_NAME} && \
tar -xf ${TARBALL_NAME} -C /rocm && \
rm ${TARBALL_NAME}
# Set environment variables for ROCm
ENV PATH="/rocm/bin:${PATH}" \
ROCM_PATH="/rocm" \
LD_LIBRARY_PATH="/rocm/lib:/rocm/lib/rocm_sysdeps/lib:${LD_LIBRARY_PATH}" \
HIP_DEVICE_LIB_PATH="/rocm/llvm/amdgcn/bitcode" \
HIP_PLATFORM=amd
# Update package list and install prerequisites
RUN apt-get update && apt-get install -y \
software-properties-common cmake locales git curl \
&& add-apt-repository ppa:deadsnakes/ppa \
&& apt-get update
# Allows running git commands in /app
RUN git config --global --add safe.directory /app
# Generate the desired locale
RUN locale-gen en_US.UTF-8
# Install Python 3.10 and pip
RUN apt-get install -y python3.10 python3.10-venv python3.10-dev python3-pip libsqlite3-dev
RUN python3.10 -m venv venv
ENV PATH="venv/bin:$PATH"
RUN python -m pip install --upgrade pip
# Install any dependencies specified in requirements.txt
WORKDIR /app/projects/rocprofiler-compute
COPY projects/rocprofiler-compute/requirements.txt /app/projects/rocprofiler-compute/requirements.txt
COPY projects/rocprofiler-compute/requirements-test.txt /app/projects/rocprofiler-compute/requirements-test.txt
RUN python -m pip install -r requirements.txt -r requirements-test.txt
# Run interactive bash shell
CMD ["/bin/bash"]