diff --git a/build.sh b/build.sh index 2e15fcdd3c37dfb89c26e25b7793dce055d896d3..d00620bc23d71782a78ec2678a1f7570170a8ecd 100644 --- a/build.sh +++ b/build.sh @@ -1,7 +1,8 @@ +export LD_LIBRARY_PATH=/usr/local/lib cd starpu ./autogen.sh > ../autogen_result 2>&1 mkdir ../build cd ../build ../starpu/configure --prefix=/home/starpu/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 +LD_LIBRARY_PATH=/usr/local/lib make -j > ../make_result 2>&1 make install diff --git a/check.sh b/check.sh index 0031c4cb320364dcdb0d3dd2b4ad79363113852e..ac22753e218ee08e504cae44da1c4fbb22830481 100644 --- a/check.sh +++ b/check.sh @@ -1,3 +1,4 @@ +export LD_LIBRARY_PATH=/usr/local/lib cd starpu ./autogen.sh > ../autogen_result 2>&1 mkdir ../build diff --git a/launch-test.sh b/launch-test.sh index 256b5d1c453bd5e8a1949e45ff83b6d85d06d413..e98b73587434f990ba7a6157cf002c6f90419274 100755 --- a/launch-test.sh +++ b/launch-test.sh @@ -3,9 +3,6 @@ p=${1-unset} g=${2-unset} #print help HELP (){ - echo "It is recommended that you provide a symbolic link named starpu to the starpu repository"; - echo " ln -s <path_to_starpu> starpu\n"; - echo "usage: ./launch-test <config> <action> [type] [path]"; echo "config: "; echo "\t all : launch on all available configs"; @@ -35,21 +32,34 @@ RUN(){ fi if [ $p = 'all' ] then - #differenciate all / a config - 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 + #TODO : update based on folders containing a dockerfile + cp mpi5/Dockerfile . + docker build -t starpu_test/mpi5 . > docker_results/docker_build_mpi5 + docker rm $(docker stop $(docker ps -a -q --filter ancestor=starpu_test/mpi5:latest --format="{{.ID}}")) + rm ./Dockerfile + docker run starpu_test/mpi5 > docker_results/docker_run_mpi5 + + cp mpi4/Dockerfile . + docker build -t starpu_test/mpi4 . > docker_results/docker_build_mpi4 + docker run starpu_test/mpi4 > docker_results/docker_run_mpi4 + docker rm $(docker stop $(docker ps -a -q --filter ancestor=starpu_test/mpi4:latest --format="{{.ID}}")) + rm ./Dockerfile + + cp mpich/Dockerfile . + docker build -t starpu_test/mpich . > docker_results/docker_build_mpich + docker run starpu_test/mpich > docker_results/docker_run_mpich + docker rm $(docker stop $(docker ps -a -q --filter ancestor=starpu_test/mpich:latest --format="{{.ID}}")) + rm ./Dockerfile elif [ $p = 'unset' ] then HELP else #check that it exists - docker build $p > docker_results/docker_build_$p - docker run $p > docker_results/docker_run_$p - docker rm $(docker stop $(docker ps -a -q --filter ancestor=$p:latest --format="{{.ID}}")) + cp $p/Dockerfile . + docker build -t starpu_test/$p . > docker_results/docker_build_$p + rm ./Dockerfile + docker run starpu_test/$p > docker_results/docker_run_$p + docker rm $(docker stop $(docker ps -a -q --filter ancestor=starpu_test/$p:latest --format="{{.ID}}")) #remove image? fi } @@ -61,11 +71,13 @@ then GETPU cp check.sh run.sh RUN + rm run.sh elif [ $g = 'build' ] then GETPU cp build.sh run.sh RUN + rm run.sh elif [ $g = 'run' ] then GETPU @@ -79,6 +91,7 @@ then else cp $path run.sh RUN + rm run.sh fi fi #Do for a particular test diff --git a/mpi4/Dockerfile b/mpi4/Dockerfile index 0fe543873fb43d5fab4c8e228e27613683f72d12..c0283502b55a9852e5254e880723d1e210e28bcc 100644 --- a/mpi4/Dockerfile +++ b/mpi4/Dockerfile @@ -14,34 +14,25 @@ RUN apt-get install -y \ gdb \ vim \ libopenblas-pthread-dev \ - wget + wget \ + python3.11-full # Install mpi version #RUN apt install libopenmpi-dev openmpi-bin RUN wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.3.tar.gz RUN tar xf openmpi-4.1.3.tar.gz && rm openmpi-4.1.3.tar.gz RUN cd openmpi-4.1.3/ && ./configure && make -j && make install -#So we don't run mpi as root -RUN useradd starpu -USER starpu RUN mkdir /home/starpu WORKDIR /home/starpu -COPY starpu starpu -#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"] +ADD ./starpu /home/starpu/starpu +#So we don't run mpi as root +RUN useradd starpu +RUN chown -R starpu /home/starpu +RUN chmod +x ./run.sh +USER starpu -# Copy the script to compile and test starpu -#COPY -# Compile starpu and check -#CMD [] -# Or compile starpu and run test -# +#run whatever the script gave us +CMD ["/bin/bash", "./run.sh"] diff --git a/mpi5/Dockerfile b/mpi5/Dockerfile index aa855ba8afd07848103d02be8973398da7856614..2b7e70e7425c20040f93b9371f5f9e74a2698887 100644 --- a/mpi5/Dockerfile +++ b/mpi5/Dockerfile @@ -14,25 +14,29 @@ RUN apt-get install -y \ gdb \ vim \ libopenblas-pthread-dev \ - wget \ - python3.11-full + xterm \ + wget \ + python3.11-full # 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 +#if not done openmpi does not find libpmix + RUN mkdir /home/starpu +WORKDIR /home/starpu +COPY run.sh . + +ADD ./starpu /home/starpu/starpu #So we don't run mpi as root RUN useradd starpu +RUN chown -R starpu /home/starpu +RUN chmod +x ./run.sh USER starpu -WORKDIR /home/starpu -ADD ./starpu /home/starpu/starpu #run whatever the script gave us -COPY run.sh . -CMD ["./run.sh"] - - +CMD ["/bin/bash", "./run.sh"] # Copy the script to compile and test starpu #COPY # Compile starpu and check diff --git a/mpich/Dockerfile b/mpich/Dockerfile index de48a9336c6b52871d1ca6234296900aef444ead..5e3a2d920c0ed5fdc40fbbd28dba50825abaab9b 100644 --- a/mpich/Dockerfile +++ b/mpich/Dockerfile @@ -18,13 +18,17 @@ RUN apt-get install -y \ # Install mpi version RUN apt install -y mpich +RUN mkdir /home/starpu +WORKDIR /home/starpu + +COPY run.sh . + +ADD ./starpu /home/starpu/starpu #So we don't run mpi as root RUN useradd starpu +RUN chown -R starpu /home/starpu +RUN chmod +x ./run.sh USER starpu -RUN mkdir /home/starpu -WORKDIR /home/starpu -COPY starpu starpu #run whatever the script gave us -COPY run.sh . -CMD ["./run.sh"] +CMD ["/bin/bash", "./run.sh"]