diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..b72f9be2042aa06db9cb3a6f533f953b5ce29901 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*~ +*.swp diff --git a/build.sh b/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..d0e391c7716b297ba8d39bed80513f6175ab0332 --- /dev/null +++ b/build.sh @@ -0,0 +1,6 @@ +cd starpu +./autogen.sh > ../autogen_result 2>&1 +mkdir ../build +cd ../build +../starpu/configure --prefix=/home/install --disable-cuda --enable-mpi --disable-opencl --disable-starpupy --enable-mpi-ft --enable-mpi-check --enable-mpi-ft-stats > ../configure_result 2>&1 +make -j > ../make_result 2>&1 diff --git a/check.sh b/check.sh new file mode 100644 index 0000000000000000000000000000000000000000..0031c4cb320364dcdb0d3dd2b4ad79363113852e --- /dev/null +++ b/check.sh @@ -0,0 +1,7 @@ +cd starpu +./autogen.sh > ../autogen_result 2>&1 +mkdir ../build +cd ../build +../starpu/configure --prefix=/home/install --disable-cuda --enable-mpi --disable-opencl --disable-starpupy --enable-mpi-ft --enable-mpi-check --enable-mpi-ft-stats > ../configure_result 2>&1 +make -j > ../make_result 2>&1 +make check ../check_result 2>&1 diff --git a/launch-test.sh b/launch-test.sh new file mode 100644 index 0000000000000000000000000000000000000000..c86e6edff56d899a6312c40dc8812838cb6df3ee --- /dev/null +++ b/launch-test.sh @@ -0,0 +1,42 @@ +#get fist param, help, check, build +p=${1-unset} +#print help +HELP (){ + echo "usage: ./launch-test help/check/build"; + echo "\t help: print this"; + echo "\t check: build starpu and run tests"; + echo "\t build: only build starpu"; +} +GETPU(){ +#if starpu folder does not exist clone +if [ ! -d "starpu" ] +then + git clone https://gitlab.inria.fr/starpu/starpu.git -b ft_ulfm +fi +} +RUN(){ + if [ ! -d "docker_results" ] + then + mkdir docker_results + fi + docker build mpi5/ > docker_results/docker_build_mpi5 + docker run mpi5 > docker_results/docker_run_mpi5 + docker build mpi4/ > docker_results/docker_build_mpi4 + docker run mpi4 > docker_results/docker_run_mpi4 + docker build mpich/ > docker_results/docker_build_mpich + docker run mpich > docker_results/docker_run_mpich +} +if [ $g = 'help' ] +then + HELP +elif [ $g = 'check' ] +then + GETPU + cp check.sh run.sh + RUN +elif +then + GETPU + cp build.sh run.sh + RUN +fi diff --git a/mpi4/.Dockerfile.un~ b/mpi4/.Dockerfile.un~ new file mode 100644 index 0000000000000000000000000000000000000000..5ed7ac18aaa3dfe4e60d4640306db98730185bb6 Binary files /dev/null and b/mpi4/.Dockerfile.un~ differ diff --git a/mpi4/Dockerfile b/mpi4/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..d9a39668b1f7a025e86179e34cb7b972ba4408bd --- /dev/null +++ b/mpi4/Dockerfile @@ -0,0 +1,29 @@ +FROM debian:12 +WORKDIR /home +# Install starpu dependencies +RUN apt update && apt upgrade +RUN apt install g++ make libtool git libopenblas-dev libhwloc-dev pkg-config texlive texlive-font-utils doxygen libtool-bin texlive-fonts-extra -y +# Install mpi version +RUN apt install libopenmpi-dev openmpi-bin + +#So we don't run mpi as root +RUN useradd app +USER app + +#clone starpu and build +#RUN git clone https://gitlab.inria.fr/starpu/starpu.git -b ft_ulfm +COPY starpu starpu +#run whatever the script gave us +COPY run.sh . +#RUN mkdir build && cd build +#RUN ../starpu/configure --prefix=../install --disable-cuda --enable-mpi --disable-opencl --disable-starpupy --enable-mpi-ft --enable-mpi-check --enable-mpi-ft-stats > ../configure_result 2>&1 & +#RUN make -j > ~/make_result 2>&1 & +CMD ["./run.sh"] + + +# Copy the script to compile and test starpu +#COPY +# Compile starpu and check +#CMD [] +# Or compile starpu and run test +# diff --git a/mpi5/Dockerfile b/mpi5/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..4557245c74c4e63089c777df765c1311b3ec451e --- /dev/null +++ b/mpi5/Dockerfile @@ -0,0 +1,31 @@ +FROM debian:12 +WORKDIR /home +# Install starpu dependencies +RUN apt update && apt upgrade +RUN apt install g++ make libtool git libopenblas-dev libhwloc-dev pkg-config texlive texlive-font-utils doxygen libtool-bin texlive-fonts-extra -y +# Install mpi version +RUN wget https://download.open-mpi.org/release/open-mpi/v5.0/openmpi-5.0.5.tar.gz +RUN tar xf openmpi-5.0.5.tar.gz && rm openmpi-5.0.5.tar.gz +RUN cd openmpi-5.0.5/ && ./configure && make -j && make install + +#So we don't run mpi as root +RUN useradd app +USER app + +#clone starpu and build +#RUN git clone https://gitlab.inria.fr/starpu/starpu.git -b ft_ulfm +COPY starpu starpu +#run whatever the script gave us +COPY run.sh . +#RUN mkdir build && cd build +#RUN ../starpu/configure --prefix=../install --disable-cuda --enable-mpi --disable-opencl --disable-starpupy --enable-mpi-ft --enable-mpi-check --enable-mpi-ft-stats > ../configure_result 2>&1 & +#RUN make -j > ~/make_result 2>&1 & +CMD ["./run.sh"] + + +# Copy the script to compile and test starpu +#COPY +# Compile starpu and check +#CMD [] +# Or compile starpu and run test +# diff --git a/mpich/Dockerfile b/mpich/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..9b66d0aa29584129de88b3851e0df13a4a8b7ee8 --- /dev/null +++ b/mpich/Dockerfile @@ -0,0 +1,30 @@ +FROM debian:12 +WORKDIR /home +# Install starpu dependencies +RUN apt update && apt upgrade +RUN apt-get install -y \ + sudo \ + git \ + autoconf \ + automake \ + build-essential \ + libtool-bin \ + libhwloc-dev \ + pkg-config \ + gdb \ + vim \ + libopenblas-pthread-dev + +# Install mpi version +RUN apt install mpich + +#So we don't run mpi as root +RUN useradd starpu +USER starpu + +RUN mkdir /home/starpu +WORKDIR /home/starpu +COPY starpu starpu +#run whatever the script gave us +COPY run.sh . +CMD ["./run.sh"]