[rocprofiler-compute] Use TheRock nightly builds in testing container (#2661)
* Use TheRock nightly builds in testing container * Add HIP_DEVICE_LIB_PATH env var for hipcc to work * Add HIP_PLATFORM env var for cmake hip package * Add tarball placeholder * Add -f to curl command to fail on HTTP error
This commit is contained in:
gecommit door
GitHub
bovenliggende
51f49d8835
commit
a926660670
@@ -38,8 +38,8 @@ python3 -m pip install -r requirements.txt
|
||||
|
||||
## Testing
|
||||
|
||||
Populate the <usename> variable in `docker/docker-compose.customrocmtest.yml`.
|
||||
Populate the <rocm_build_image> variable in `docker/Dockerfile.customrocmtest` based on latest ROCm CI build information.
|
||||
Populate the <username> variable in `docker/docker-compose.customrocmtest.yml`.
|
||||
Populate the <tarball_name> variable in `docker/Dockerfile.customrocmtest` based on latest TheRock nightly build information.
|
||||
|
||||
To quickly get the environment (bash shell) for building and testing, run the following commands:
|
||||
* `cd docker`
|
||||
|
||||
@@ -1,32 +1,52 @@
|
||||
# Use a base image
|
||||
FROM <rocm_build_image>
|
||||
FROM ubuntu:22.04
|
||||
|
||||
# Set the working directory
|
||||
WORKDIR /app
|
||||
# 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=<tarball_name>
|
||||
|
||||
# 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 \
|
||||
software-properties-common cmake locales git \
|
||||
&& 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 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
|
||||
# Install any rocprofiler-compute dependencies specified in requirements.txt
|
||||
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 python -m pip install -r /app/projects/rocprofiler-compute/requirements.txt -r /app/projects/rocprofiler-compute/requirements-test.txt
|
||||
|
||||
# Set the working directory
|
||||
WORKDIR /app
|
||||
|
||||
# Allows running git commands in /app
|
||||
RUN git config --global --add safe.directory /app
|
||||
|
||||
# Run interactive bash shell
|
||||
CMD ["/bin/bash"]
|
||||
|
||||
Verwijs in nieuw issue
Block a user