aa5dfb98f9
* 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>
51 lines
1.9 KiB
Docker
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"]
|