Files
rocm-systems/projects/rocprofiler-compute/docker/Dockerfile.standalone
T
vedithal-amd d8a8a3ef30 [rocprofiler-compute] Add exception handling for native tool path search (#2159)
* Add exception handling for native tool path search

* Fix formatting in roofline benchmark code

* Fix detection of .so files

* include hip code and native tool code in standalone binary

* add fallback path for ROCM_PATH
2025-12-04 10:29:49 -05:00

47 righe
2.1 KiB
Docker

FROM redhat/ubi8:8.10
WORKDIR /app/projects/rocprofiler-compute
RUN yum install -y curl git cmake gcc-c++
# Allows running git commands in /app
RUN git config --global --add safe.directory /app
RUN yum install -y python39 python39-devel && \
yum clean all && \
rm -rf /var/cache/yum && \
curl -sS https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
python3 get-pip.py
# Should be absolute path to where the standalone binary will extract its contents
ENV ROCPROF_COMPUTE_BINARY_EXTRACT_DIR=/tmp
CMD ["/bin/bash", "-c", "\
python3 -m pip install -r requirements.txt \
&& python3 -m pip install nuitka patchelf \
&& git rev-parse HEAD > VERSION.sha \
&& python3 -m nuitka --mode=onefile --no-deployment-flag=self-execution \
--product-name=${ROCPROF_COMPUTE_BINARY_EXTRACT_DIR} \
--onefile-tempdir-spec=/{PRODUCT}/rocprof_compute_standalonebinary_{PID} \
--enable-plugin=no-qt \
--include-data-files=VERSION*=./ \
--include-data-files=src/lib/rocprofiler_compute_tool.cpp=lib/rocprofiler_compute_tool.cpp \
--include-data-files=src/lib/helper.cpp=lib/helper.cpp \
--include-data-files=src/lib/helper.hpp=lib/helper.hpp \
--include-package=dash_svg --include-package-data=dash_svg \
--include-package=dash_bootstrap_components \
--include-package-data=dash_bootstrap_components \
--include-package=plotly --include-package-data=plotly \
--include-package=kaleido --include-package-data=kaleido \
--include-package=rocprof_compute_analyze \
--include-package-data=rocprof_compute_analyze \
--include-package=rocprof_compute_profile \
--include-package-data=rocprof_compute_profile \
--include-package=rocprof_compute_tui --include-package-data=rocprof_compute_tui \
--include-package=rocprof_compute_soc --include-package-data=rocprof_compute_soc \
--include-package=utils --include-package-data=utils \
--include-package=hip --include-package-data=hip \
src/rocprof-compute \
&& patchelf --remove-rpath rocprof-compute.bin \
"]