[CRIU] [RFC PATCH 19/20] criu/plugin: Dockerfile for AMD criu repo

Felix Kuehling Felix.Kuehling at amd.com
Sat May 1 04:58:44 MSK 2021


From: Rajneesh Bhardwaj <rajneesh.bhardwaj at amd.com>

This sets up the pytorch environment for BERT Transformers and also sets
up CRIU along with all its dependencies including kfd plugin for
supporting CR with AMDGPUs.

Signed-off-by: Rajneesh Bhardwaj <rajneesh.bhardwaj at amd.com>
---
 test/others/ext-kfd/Dockerfile.AMD | 114 +++++++++++++++++++++++++++++
 1 file changed, 114 insertions(+)
 create mode 100644 test/others/ext-kfd/Dockerfile.AMD

diff --git a/test/others/ext-kfd/Dockerfile.AMD b/test/others/ext-kfd/Dockerfile.AMD
new file mode 100644
index 000000000..e75f7fff4
--- /dev/null
+++ b/test/others/ext-kfd/Dockerfile.AMD
@@ -0,0 +1,114 @@
+FROM rocm/pytorch:rocm4.0.1_ubuntu18.04_py3.6_pytorch
+
+ARG CC=gcc
+ARG TOKEN
+ARG BRANCH=criu-dev
+
+# Environment
+ENV BRANCH=$BRANCH
+ENV DEBIAN_FRONTEND=noninteractive
+ENV LC_ALL=en_US.UTF-8
+ENV LANG=en_US.UTF-8
+ENV LANGUAGE=en_US.UTF-8
+
+#
+# Package installation
+#
+RUN apt-get clean -qqy && apt-get update -qqy && apt-get install -qqy --no-install-recommends \
+	--no-upgrade -yq -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" \
+	apt-utils \
+	apt-transport-https\
+	gnupg \
+	gnupg2 \
+	gettext \
+	locales \
+	iproute2 \
+	iputils-ping \
+	moreutils \
+	net-tools \
+	psmisc\
+	supervisor \
+	cifs-utils \
+	nfs-common \
+	systemd \
+	fuse \
+	xmlto \
+	autossh \
+	netbase \
+	libnet-dev \
+	libnl-route-3-dev \
+	$CC \
+	bsdmainutils \
+	ca-certificates \
+	build-essential \
+	git-core \
+	iptables \
+	libaio-dev \
+	libbsd-dev \
+	libcap-dev \
+	libgnutls28-dev \
+	libgnutls30 \
+	libnl-3-dev \
+	libprotobuf-c-dev \
+	libprotobuf-dev \
+	libselinux-dev \
+	pkg-config \
+	protobuf-c-compiler \
+	protobuf-compiler \
+	python-protobuf \
+	python3-minimal \
+	python3-future \
+	python-ipaddress \
+	curl \
+	wget \
+	vim \
+	openssl \
+	openssh-server \
+	python \
+	sudo \
+	libnuma1 \
+	libdrm-dev \
+	libdrm-amdgpu1 \
+	asciidoc \
+	&& \
+	rm -rf /var/lib/apt/lists/* && \
+	apt-get purge --auto-remove && \
+	apt-get clean
+
+# Clone latest criu code
+#RUN mkdir -p /home/criu_build_dir
+WORKDIR /root/criu_build_dir
+#RUN cd /home/criu_build_dir
+#RUN git clone https://github.com/checkpoint-restore/criu.git
+RUN if [ "x${TOKEN}" != "x" ]; then \
+	git clone https://${TOKEN}@github.com/RadeonOpenCompute/criu.git -b $BRANCH; \
+	else git clone https://github.com/checkpoint-restore/criu.git; \
+    fi
+
+#RUN cd /criu
+WORKDIR /root/criu_build_dir/criu
+
+RUN make mrproper && date && \
+# Check single object build
+	make -j $(nproc) CC="$CC" criu/parasite-syscall.o && \
+# Compile criu
+	make -j $(nproc) CC="$CC" && \
+	date && echo BUILD_OK && \
+# Install criu
+	make -j $(nproc) install && \
+	date && echo INSTALL_OK
+
+WORKDIR /root/criu_build_dir/criu/test/others/ext-kfd
+RUN 	make && \
+	rm -rf /var/lib/criu && mkdir -p /var/lib/criu && \
+	cp kfd_plugin.so /var/lib/criu && \
+	echo "AMD kfd plugin is installed..."
+WORKDIR /root/criu_build_dir
+RUN	git clone --recursive -b  cl/rocm-transformers https://github.com/lcskrishna/transformers.git && \
+	cd transformers && wget https://rajpurkar.github.io/SQuAD-explorer/dataset/train-v1.1.json && \
+	wget https://rajpurkar.github.io/SQuAD-explorer/dataset/dev-v1.1.json && \
+	wget https://github.com/allenai/bi-att-flow/blob/master/squad/evaluate-v1.1.py
+ENV SQUAD_DIR=/root/criu_build_dir/transformers
+WORKDIR /root/criu_build_dir/transformers
+RUN pip3 install tensorboard tensorboardX && pip3 install .
+
-- 
2.17.1



More information about the CRIU mailing list