Documentation + Miscellaneous Fixes (#36)
* Added documentation markdown source
* Replaced AARInternal with AMDResearch in URLs
* Renamed cpack artifact names
* Fix to testing and lulesh submodule checkout
* Docker updates
* CMake and CPack
- force CMAKE_INSTALL_LIBDIR to lib
- CPACK_DEBIAN_PACKAGE_RELEASE uses OMNITRACE_CPACK_SYSTEM_NAME
- CPACK_RPM_PACKAGE_RELEASE uses OMNITRACE_CPACK_SYSTEM_NAME
- Tweak LIBOMP_LIBRARY find in examples/openmp
- Tweak setup-env.sh.in
* Partial update of README
- status badges
- docs link
- removed install info (covered by docs)
* OMNITRACE_SAMPLING_CPUS setting
- enables control over which CPUs are sampled for frequency
* omnitrace exe updates
- exclude transaction clone, virtual thunk, non-virtual thunk
- module_function::start_address
- module_function::instructions
- verbosity > 0 encodes instructions into JSON
* Miscellaneous fixes
- relocate setup-env.sh.in
- add modulefile.in
- Updated README.md and source/docs/about.md
- cmake fix for libomp
- fix license in miscellaneous places
- dl.hpp and dl.cpp
* Update timemory and dyninst submodules
- timemory signals updates
- dyninst Movement-adhoc updates
* cmake format
[ROCm/rocprofiler-systems commit: 945f541965]
Cette révision appartient à :
1 Parent
4ddb8405ac
révision
127e30a4d7
61 fichiers modifiés
+6277
-301
Aucun fichier ne correspond à votre recherche
@@ -0,0 +1,57 @@
|
||||
ARG DISTRO=centos
|
||||
ARG VERSION=7
|
||||
FROM ${DISTRO}:${VERSION}
|
||||
|
||||
ENV HOME /root
|
||||
ENV SHELL /bin/bash
|
||||
ENV BASH_ENV /etc/bash.bashrc
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
WORKDIR /tmp
|
||||
SHELL [ "/bin/bash", "-c" ]
|
||||
|
||||
ENV PATH /usr/local/bin:${PATH}
|
||||
|
||||
RUN yum update -y && \
|
||||
yum groupinstall -y "Development Tools" && \
|
||||
yum install -y centos-release-scl && \
|
||||
yum install -y epel-release && \
|
||||
yum install -y devtoolset-9 python3-pip openmpi3-devel zlib-devel numactl-devel papi-devel dpkg-devel dpkg-dev && \
|
||||
python3 -m pip install 'cmake==3.18.4'
|
||||
|
||||
ARG AMDGPU_RPM=21.40.2/rhel/7.9/amdgpu-install-21.40.2.40502-1.el7.noarch.rpm
|
||||
# ARG AMDGPU_RPM=latest/rhel/7.9/amdgpu-install-21.50.50000-1.el7.noarch.rpm
|
||||
|
||||
RUN yum install -y https://repo.radeon.com/amdgpu-install/${AMDGPU_RPM} && \
|
||||
amdgpu-install --usecase=rocm,hip,hiplibsdk --no-dkms --skip-broken -y && \
|
||||
yum install -y rocm-hip-sdk roctracer-dev rocm-smi-lib rocprofiler-dev && \
|
||||
yum update -y && \
|
||||
yum clean all
|
||||
|
||||
RUN ln -s /opt/rocm-* /opt/rocm
|
||||
|
||||
WORKDIR /home
|
||||
SHELL [ "/bin/bash", "--login", "-c" ]
|
||||
COPY ./entrypoint-centos.sh /docker-entrypoint.sh
|
||||
ENTRYPOINT [ "/docker-entrypoint.sh" ]
|
||||
|
||||
#1 yum update
|
||||
#2 yum groupinstall "Development Tools"
|
||||
#3 yum install devtoolset-9-toolchain
|
||||
#4 yum install devtoolset-9
|
||||
#5 yum install devtoolset-7-toolchain
|
||||
#6 yum search devtoolset
|
||||
#7 yum search -a devtoolset
|
||||
#8 yum search --help
|
||||
#9 yum repolist
|
||||
#10 yum list available
|
||||
#11 yum list available devtoolset*
|
||||
#12 yum list available devtoolset\*
|
||||
#13 subscription-manager list --available
|
||||
#14 yum install subscription-manager
|
||||
#15 subscription-manager list --available
|
||||
#16 yum install centos-release-scl
|
||||
#17 yum-config-manager --enable rhel-server-rhscl-7-rpms
|
||||
#18 yum install devtoolset-7
|
||||
#19 yum install devtoolset-9
|
||||
#20 scl enable devtoolset-9 bash
|
||||
@@ -0,0 +1,32 @@
|
||||
ARG DISTRO=opensuse/leap
|
||||
ARG VERSION=15.3
|
||||
FROM ${DISTRO}:${VERSION}
|
||||
|
||||
ENV HOME /root
|
||||
ENV SHELL /bin/bash
|
||||
ENV BASH_ENV /etc/bash.bashrc
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
WORKDIR /tmp
|
||||
SHELL [ "/bin/bash", "-c" ]
|
||||
|
||||
ENV PATH /usr/local/bin:${PATH}
|
||||
|
||||
RUN zypper update -y && \
|
||||
zypper dist-upgrade -y && \
|
||||
zypper install -y -t pattern devel_basis && \
|
||||
zypper install -y python3-pip openmpi3-devel gcc-c++ git libnuma-devel dpkg-devel rpm-build && \
|
||||
python3 -m pip install 'cmake==3.18.4'
|
||||
|
||||
# ARG AMDGPU_RPM=21.40.2/sle/15/amdgpu-install-21.40.2.40502-1.noarch.rpm
|
||||
ARG AMDGPU_RPM=latest/sle/15/amdgpu-install-21.50.50000-1.noarch.rpm
|
||||
|
||||
RUN zypper --no-gpg-checks install -y https://repo.radeon.com/amdgpu-install/${AMDGPU_RPM} && \
|
||||
zypper addrepo https://download.opensuse.org/repositories/devel:languages:perl/SLE_15/devel:languages:perl.repo && \
|
||||
zypper --non-interactive --gpg-auto-import-keys refresh && \
|
||||
amdgpu-install --usecase=rocm,hip,hiplibsdk --no-dkms -y && \
|
||||
zypper install -y rocm-hip-sdk roctracer-dev rocm-smi-lib rocprofiler-dev && \
|
||||
zypper clean --all
|
||||
|
||||
WORKDIR /home
|
||||
SHELL [ "/bin/bash", "--login", "-c" ]
|
||||
@@ -0,0 +1,36 @@
|
||||
ARG DISTRO=opensuse/leap
|
||||
ARG VERSION=15.3
|
||||
FROM ${DISTRO}:${VERSION}
|
||||
|
||||
ENV HOME /root
|
||||
ENV SHELL /bin/bash
|
||||
ENV BASH_ENV /etc/bash.bashrc
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
WORKDIR /tmp
|
||||
SHELL [ "/bin/bash", "-c" ]
|
||||
|
||||
ENV PATH /usr/local/bin:${PATH}
|
||||
|
||||
ARG EXTRA_PACKAGES=""
|
||||
ARG ELFUTILS_DOWNLOAD_VERSION="0.183"
|
||||
ARG NJOBS="12"
|
||||
|
||||
RUN zypper update -y && \
|
||||
zypper dist-upgrade -y && \
|
||||
zypper install -y -t pattern devel_basis && \
|
||||
zypper install -y python3-pip openmpi3-devel gcc-c++ git libnuma-devel dpkg-devel rpm-build papi-devel && \
|
||||
python3 -m pip install 'cmake==3.18.4'
|
||||
|
||||
COPY ./dyninst-source /tmp/dyninst
|
||||
|
||||
RUN cd /tmp/dyninst && \
|
||||
cmake -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_BOOST=ON -DBUILD_TBB=ON -DBUILD_ELFUTILS=ON -DBUILD_LIBIBERTY=ON && \
|
||||
cmake --build build --target all --parallel ${NJOBS} && \
|
||||
cmake --build build --target install --parallel ${NJOBS} && \
|
||||
cd /tmp && \
|
||||
shopt -s dotglob extglob && \
|
||||
rm -rf *
|
||||
|
||||
WORKDIR /home
|
||||
SHELL [ "/bin/bash", "--login", "-c" ]
|
||||
Fichier renommé sans modification.
Fichier renommé sans modification.
@@ -2,33 +2,79 @@
|
||||
|
||||
set -e
|
||||
|
||||
if [ ! -f Dockerfile.ci ]; then cd docker; fi
|
||||
|
||||
if [ ! -f Dockerfile.ci ]; then
|
||||
echo "Error! Execute script from source directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rf ./dyninst-source
|
||||
cp -r ../external/dyninst ./dyninst-source
|
||||
rm -rf ./dyninst-source/{build,install}*
|
||||
|
||||
: ${DISTRO:=ubuntu}
|
||||
: ${VERSIONS:=20.04 18.04}
|
||||
: ${NJOBS=$(nproc)}
|
||||
: ${ELFUTILS_VERSION:=0.183}
|
||||
|
||||
send-error()
|
||||
{
|
||||
echo -e "\nError: ${@}"
|
||||
exit 1
|
||||
}
|
||||
|
||||
verbose-run()
|
||||
{
|
||||
echo -e "\n\n### Executing \"${@}\"... ###\n"
|
||||
eval $@
|
||||
}
|
||||
|
||||
n=0
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
case "${1}" in
|
||||
"--distro")
|
||||
shift
|
||||
DISTRO=${1}
|
||||
;;
|
||||
"--versions")
|
||||
shift
|
||||
VERSIONS=${1}
|
||||
;;
|
||||
"-j")
|
||||
shift
|
||||
NJOBS=${1}
|
||||
;;
|
||||
"--elfutils-version")
|
||||
shift
|
||||
ELFUTILS_VERSION=${1}
|
||||
;;
|
||||
*)
|
||||
send-error "Unsupported argument at position $((${n} + 1)) :: ${1}"
|
||||
;;
|
||||
esac
|
||||
n=$((${n} + 1))
|
||||
shift
|
||||
done
|
||||
|
||||
DOCKER_FILE=Dockerfile.${DISTRO}.ci
|
||||
|
||||
if [ ! -f ${DOCKER_FILE} ]; then cd docker; fi
|
||||
|
||||
if [ ! -f ${DOCKER_FILE} ]; then
|
||||
echo "Error! Execute script from source directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
verbose-run rm -rf ./dyninst-source
|
||||
verbose-run cp -r ../external/dyninst ./dyninst-source
|
||||
verbose-run rm -rf ./dyninst-source/{build,install}*
|
||||
|
||||
set -e
|
||||
|
||||
DISTRO_IMAGE=${DISTRO}
|
||||
|
||||
if [ "${DISTRO}" = "opensuse" ]; then DISTRO_IMAGE="opensuse/leap"; fi
|
||||
|
||||
for VERSION in ${VERSIONS}
|
||||
do
|
||||
docker build . \
|
||||
-f Dockerfile.ci \
|
||||
verbose-run docker build . \
|
||||
-f ${DOCKER_FILE} \
|
||||
--tag jrmadsen/omnitrace-ci:${DISTRO}-${VERSION} \
|
||||
--build-arg DISTRO=${DISTRO} \
|
||||
--build-arg DISTRO=${DISTRO_IMAGE} \
|
||||
--build-arg VERSION=${VERSION} \
|
||||
--build-arg NJOBS=${NJOBS} \
|
||||
--build-arg ELFUTILS_DOWNLOAD_VERSION=${ELFUTILS_VERSION}
|
||||
done
|
||||
|
||||
rm -rf ./dyninst-source
|
||||
verbose-run rm -rf ./dyninst-source
|
||||
@@ -10,10 +10,11 @@ set -e
|
||||
build-release()
|
||||
{
|
||||
CONTAINER=$1
|
||||
ROCM_VERSION=$2
|
||||
CODE_VERSION=$3
|
||||
OS=$2
|
||||
ROCM_VERSION=$3
|
||||
CODE_VERSION=$4
|
||||
MPI=$4
|
||||
docker run -it --rm -v ${PWD}:/home/omnitrace --env ROCM_VERSION=${ROCM_VERSION} --env VERSION=${CODE_VERSION} --env MPI=${MPI} ${CONTAINER} /home/omnitrace/scripts/build-release.sh
|
||||
docker run -it --rm -v ${PWD}:/home/omnitrace --env DISTRO=${OS} --env ROCM_VERSION=${ROCM_VERSION} --env VERSION=${CODE_VERSION} --env MPI=${MPI} ${CONTAINER} /home/omnitrace/scripts/build-release.sh
|
||||
}
|
||||
|
||||
: ${DISTRO:=ubuntu}
|
||||
@@ -21,6 +22,50 @@ build-release()
|
||||
: ${ROCM_VERSIONS:=5.0 4.5 4.3}
|
||||
: ${MPI:=0}
|
||||
|
||||
send-error()
|
||||
{
|
||||
echo -e "\nError: ${@}"
|
||||
exit 1
|
||||
}
|
||||
|
||||
verbose-run()
|
||||
{
|
||||
echo -e "\n\n### Executing \"${@}\"... ###\n"
|
||||
eval $@
|
||||
}
|
||||
|
||||
n=0
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
case "${1}" in
|
||||
"--distro")
|
||||
shift
|
||||
DISTRO=${1}
|
||||
;;
|
||||
"--versions")
|
||||
shift
|
||||
VERSIONS=${1}
|
||||
;;
|
||||
"--rocm-versions")
|
||||
shift
|
||||
ROCM_VERSIONS=${1}
|
||||
;;
|
||||
*)
|
||||
if [ "${n}" -eq 0 ]; then
|
||||
DISTRO=${1}
|
||||
elif [ "${n}" -eq 1 ]; then
|
||||
VERSIONS=${1}
|
||||
elif [ "${n}" -eq 2 ]; then
|
||||
ROCM_VERSIONS=${1}
|
||||
else
|
||||
send-error "Unsupported argument at position $((${n} + 1)) :: ${1}"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
n=$((${n} + 1))
|
||||
shift
|
||||
done
|
||||
|
||||
CODE_VERSION=$(cat VERSION)
|
||||
|
||||
for VERSION in ${VERSIONS}
|
||||
@@ -28,6 +73,6 @@ do
|
||||
TAG=${DISTRO}-${VERSION}
|
||||
for ROCM_VERSION in ${ROCM_VERSIONS}
|
||||
do
|
||||
build-release jrmadsen/omnitrace-${TAG}-rocm-${ROCM_VERSION} ${ROCM_VERSION} ${CODE_VERSION} ${MPI}
|
||||
build-release jrmadsen/omnitrace-${TAG}-rocm-${ROCM_VERSION} ${DISTRO}-${VERSION} ${ROCM_VERSION} ${CODE_VERSION} ${MPI}
|
||||
done
|
||||
done
|
||||
@@ -3,19 +3,138 @@
|
||||
: ${ROCM_VERSIONS:="5.0 4.5 4.3"}
|
||||
: ${DISTRO:=ubuntu}
|
||||
: ${VERSIONS:=20.04 18.04}
|
||||
: ${CI:=""}
|
||||
|
||||
set -e
|
||||
|
||||
if [ ! -f Dockerfile ]; then cd docker; fi
|
||||
send-error()
|
||||
{
|
||||
echo -e "\nError: ${@}"
|
||||
exit 1
|
||||
}
|
||||
|
||||
verbose-run()
|
||||
{
|
||||
echo -e "\n\n### Executing \"${@}\"... ###\n"
|
||||
eval $@
|
||||
}
|
||||
|
||||
n=0
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
case "${1}" in
|
||||
"--distro")
|
||||
shift
|
||||
DISTRO=${1}
|
||||
;;
|
||||
"--versions")
|
||||
shift
|
||||
VERSIONS=${1}
|
||||
;;
|
||||
"--rocm-versions")
|
||||
shift
|
||||
ROCM_VERSIONS=${1}
|
||||
;;
|
||||
*)
|
||||
if [ "${n}" -eq 0 ]; then
|
||||
DISTRO=${1}
|
||||
elif [ "${n}" -eq 1 ]; then
|
||||
VERSIONS=${1}
|
||||
elif [ "${n}" -eq 2 ]; then
|
||||
ROCM_VERSIONS=${1}
|
||||
else
|
||||
send-error "Unsupported argument at position $((${n} + 1)) :: ${1}"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
n=$((${n} + 1))
|
||||
shift
|
||||
done
|
||||
|
||||
DOCKER_FILE="Dockerfile.${DISTRO}"
|
||||
|
||||
if [ -n "${CI}" ]; then DOCKER_FILE="${DOCKER_FILE}.ci"; fi
|
||||
if [ ! -f ${DOCKER_FILE} ]; then cd docker; fi
|
||||
if [ ! -f ${DOCKER_FILE} ]; then send-error "File \"${DOCKER_FILE}\" not found"; fi
|
||||
|
||||
for VERSION in ${VERSIONS}
|
||||
do
|
||||
for i in ${ROCM_VERSIONS}
|
||||
do
|
||||
ROCM_REPO_VERSION=${i}
|
||||
if [ "${i}" = "5.0" ]; then ROCM_REPO_VERSION=debian; fi
|
||||
if [ "${i}" = "4.1" ]; then ROCM_REPO_DIST="xenial"; fi
|
||||
if [ "${i}" = "4.0" ]; then ROCM_REPO_DIST="xenial"; fi
|
||||
docker build . --tag jrmadsen/omnitrace-${DISTRO}-${VERSION}-rocm-${i} --build-arg DISTRO=${DISTRO} --build-arg VERSION=${VERSION} --build-arg ROCM_REPO_VERSION=${ROCM_REPO_VERSION} --build-arg ROCM_REPO_DIST=${ROCM_REPO_DIST}
|
||||
if [ "${DISTRO}" = "ubuntu" ]; then
|
||||
ROCM_REPO_DIST="ubuntu"
|
||||
ROCM_REPO_VERSION=${i}
|
||||
case "${i}" in
|
||||
5.0*)
|
||||
ROCM_REPO_VERSION="debian"
|
||||
;;
|
||||
4.1* | 4.0*)
|
||||
ROCM_REPO_DIST="xenial"
|
||||
;;
|
||||
*)
|
||||
send-error "Unsupported combination :: ${DISTRO}-${VERSION} + ROCm ${i}"
|
||||
;;
|
||||
esac
|
||||
verbose-run docker build . -f ${DOCKER_FILE} --tag jrmadsen/omnitrace-${DISTRO}-${VERSION}-rocm-${i} --build-arg DISTRO=${DISTRO} --build-arg VERSION=${VERSION} --build-arg ROCM_REPO_VERSION=${ROCM_REPO_VERSION} --build-arg ROCM_REPO_DIST=${ROCM_REPO_DIST}
|
||||
elif [ "${DISTRO}" = "centos" ]; then
|
||||
case "${VERSION}" in
|
||||
7)
|
||||
RPM_PATH=7.9
|
||||
RPM_TAG=".el7"
|
||||
;;
|
||||
8)
|
||||
RPM_PATH=8.5
|
||||
RPM_TAG=".el7"
|
||||
;;
|
||||
*)
|
||||
send-error "Invalid centos version ${VERSION}. Supported: 7, 8"
|
||||
esac
|
||||
case "${i}" in
|
||||
5.0*)
|
||||
ROCM_RPM=latest/rhel/${RPM_PATH}/amdgpu-install-21.50.50000-1${RPM_TAG}.noarch.rpm
|
||||
;;
|
||||
4.5 | 4.5.2)
|
||||
ROCM_RPM=21.40.2/rhel/${RPM_PATH}/amdgpu-install-21.40.2.40502-1${RPM_TAG}.noarch.rpm
|
||||
;;
|
||||
4.5.1)
|
||||
ROCM_RPM=21.40.1/rhel/${RPM_PATH}/amdgpu-install-21.40.1.40501-1${RPM_TAG}.noarch.rpm
|
||||
;;
|
||||
4.5.0)
|
||||
ROCM_RPM=21.40/rhel/${RPM_PATH}/amdgpu-install-21.40.1.40501-1${RPM_TAG}.noarch.rpm
|
||||
;;
|
||||
*)
|
||||
send-error "Unsupported combination :: ${DISTRO}-${VERSION} + ROCm ${i}"
|
||||
;;
|
||||
esac
|
||||
verbose-run docker build . -f ${DOCKER_FILE} --tag jrmadsen/omnitrace-${DISTRO}-${VERSION}-rocm-${i} --build-arg DISTRO=${DISTRO} --build-arg VERSION=${VERSION} --build-arg AMDGPU_RPM=${ROCM_RPM}
|
||||
elif [ "${DISTRO}" = "opensuse" ]; then
|
||||
case "${VERSION}" in
|
||||
15.*)
|
||||
DISTRO_IMAGE="opensuse/leap"
|
||||
echo "DISTRO_IMAGE: ${DISTRO_IMAGE}"
|
||||
;;
|
||||
*)
|
||||
send-error "Invalid opensuse version ${VERSION}. Supported: 15.x"
|
||||
;;
|
||||
esac
|
||||
case "${i}" in
|
||||
5.0*)
|
||||
ROCM_RPM=latest/sle/15/amdgpu-install-21.50.50000-1.noarch.rpm
|
||||
;;
|
||||
4.5 | 4.5.2)
|
||||
ROCM_RPM=21.40.2/sle/15/amdgpu-install-21.40.2.40502-1.noarch.rpm
|
||||
;;
|
||||
4.5.1)
|
||||
ROCM_RPM=21.40.1/sle/15/amdgpu-install-21.40.1.40501-1.noarch.rpm
|
||||
;;
|
||||
4.5.0)
|
||||
ROCM_RPM=21.40/sle/15/amdgpu-install-21.40.1.40501-1.noarch.rpm
|
||||
;;
|
||||
*)
|
||||
send-error "Unsupported combination :: ${DISTRO}-${VERSION} + ROCm ${i}"
|
||||
;;
|
||||
esac
|
||||
verbose-run docker build . -f ${DOCKER_FILE} --tag jrmadsen/omnitrace-${DISTRO}-${VERSION}-rocm-${i} --build-arg DISTRO=${DISTRO_IMAGE} --build-arg VERSION=${VERSION} --build-arg AMDGPU_RPM=${ROCM_RPM}
|
||||
fi
|
||||
done
|
||||
done
|
||||
Fichier exécutable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
source scl_source enable devtoolset-9
|
||||
source /etc/profile.d/modules.sh
|
||||
module load mpi
|
||||
|
||||
export LC_ALL=en_US.UTF-8
|
||||
|
||||
if [ -z "${1}" ]; then
|
||||
exec bash
|
||||
else
|
||||
set -e
|
||||
eval $@
|
||||
fi
|
||||
Référencer dans un nouveau ticket
Bloquer un utilisateur