Commit 482fc3dc authored by Giovanni La Mura's avatar Giovanni La Mura
Browse files

Merge branch 'master' into script_devel to include layered cluster, configure...

Merge branch 'master' into script_devel to include layered cluster, configure options and cluster bug fixes
parents b5c3cc63 7d6f2435
Loading
Loading
Loading
Loading
+61 −32
Original line number Diff line number Diff line
@@ -43,20 +43,20 @@ compatibility_stage:
      - echo $CI_COMMIT_BRANCH
      - echo "Getting system info ..."
      - cat /etc/os-release
      - echo "Running make with gnu compilers version 11..."
      - mkdir build_gnu11
      - cd build_gnu11
      - cp -r ../build/* .
      - CXX=g++-11 F77=gfortran-11 ./configure
      - make wipe
      - make -j
      #- echo "Running make with gnu compilers version 11..."
      #- mkdir build_gnu11
      #- cd build_gnu11
      #- cp -r ../build/* .
      #- CXX=g++-11 FC=gfortran-11 ./configure
      #- make wipe
      #- make -j
      - echo "Running make with gnu compilers version 12..."
      - cd ..
      - rm -rf build_gnu11
      #- cd ..
      #- rm -rf build_gnu11
      - mkdir build_gnu12
      - cd build_gnu12
      - cp -r ../build/* .
      - CXX=g++-12 F77=gfortran-12 ./configure
      - CXX=g++-12 FC=gfortran-12 ./configure
      - make wipe
      - make -j
      - echo "Running make with gnu compilers version 13..."
@@ -65,7 +65,7 @@ compatibility_stage:
      - mkdir build_gnu13
      - cd build_gnu13
      - cp -r ../build/* .
      - CXX=g++-13 F77=gfortran-13 ./configure
      - CXX=g++-13 FC=gfortran-13 ./configure
      - make wipe
      - make -j
      - echo "Running make with gnu compilers version 14..."
@@ -74,7 +74,7 @@ compatibility_stage:
      - mkdir build_gnu14
      - cd build_gnu14
      - cp -r ../build/* .
      - CXX=g++-14 F77=gfortran-14 ./configure
      - CXX=g++-14 FC=gfortran-14 ./configure
      - make wipe
      - make -j
      - echo "Running make with refinement with gnu compilers version 14..."
@@ -83,36 +83,54 @@ compatibility_stage:
      - mkdir build_gnu14_refine
      - cd build_gnu14_refine
      - cp -r ../build/* .
      - CXX=g++-14 F77=gfortran-14 ./configure --enable-refinement
      - CXX=g++-14 FC=gfortran-14 ./configure --enable-refinement
      - make wipe
      - make -j
      - echo "Running make with flang version 16 and clang version 16..."
      #- echo "Running make with flang version 16 and clang version 16..."
      - cd ..
      - rm -rf build_gnu14_refine
      - mkdir build_clang16
      - cd build_clang16
      - cp -r ../build/* .
      - CXX=clang++-16 F77=flang-new-16 ./configure --with-fflags="-O3 -std=legacy" --with-include="-I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13" --with-ldflags="-L/usr/lib/llvm-16/lib -L/usr/lib/gcc/x86_64-linux-gnu/13" --disable-openmp
      - make wipe
      - make -j
      #- mkdir build_clang16
      #- cd build_clang16
      #- cp -r ../build/* .
      #- CXX=clang++-16 FC=flang-new-16 ./configure --with-fflags="-O3 -std=legacy" --with-include="-I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13" --with-ldflags="-L/usr/lib/llvm-16/lib -L/usr/lib/gcc/x86_64-linux-gnu/13" --disable-openmp
      #- make wipe
      #- make -j
      - echo "Running make with flang version 17 and clang version 17..."
      - cd ..
      - rm -rf build_clang16
      #- cd ..
      #- rm -rf build_clang16
      - mkdir build_clang17
      - cd build_clang17
      - cp -r ../build/* .
      - CXX=clang++-17 F77=flang-new-17 ./configure --with-fflags="-O3 -std=legacy" --with-include="-I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13" --with-ldflags="-L/usr/lib/llvm-17/lib -L/usr/lib/gcc/x86_64-linux-gnu/13"  --disable-openmp
      - CXX=clang++-17 FC=flang-new-17 ./configure --with-fflags="-O3" --with-include="-I/usr/include/c++/14 -I/usr/include/x86_64-linux-gnu/c++/14" --with-ldflags="-L/usr/lib/llvm-17/lib -L/usr/lib/gcc/x86_64-linux-gnu/14"  --disable-openmp
      - make wipe
      - make -j
      #- echo "Running make with Intel ifort and Intel icpx..."
      - cd ..
      - rm -rf build_clang17
      - echo "Running make with flang version 18 and clang version 18..."
      - mkdir build_clang18
      - cd build_clang18
      - cp -r ../build/* .
      - CXX=clang++-18 FC=flang-new-18 ./configure --with-fflags="-O3" --with-include="-I/usr/include/c++/14 -I/usr/include/x86_64-linux-gnu/c++/14" --with-ldflags="-L/usr/lib/llvm-18/lib -L/usr/lib/gcc/x86_64-linux-gnu/14"  --disable-openmp
      - make wipe
      - make -j
      - cd ..
      - rm -rf build_clang18
      - echo "Running make with flang version 19 and clang version 19..."
      - mkdir build_clang19
      - cd build_clang19
      - cp -r ../build/* .
      - CXX=clang++-19 FC=flang-new-19 ./configure --with-fflags="-O3" --with-include="-I/usr/include/c++/14 -I/usr/include/x86_64-linux-gnu/c++/14" --with-ldflags="-L/usr/lib/llvm-19/lib -L/usr/lib/gcc/x86_64-linux-gnu/14"  --disable-openmp
      - make wipe
      - make -j
      - cd ..
      - rm -rf build_clang19
      #- mkdir build_ifort_icpx
      #- cd build_ifort_icpx
      #- cp -r ../build/* .
      #- export LD_LIBRARY_PATH=/opt/intel/oneapi/compiler/latest/lib
      #- export PATH=/opt/intel/oneapi/compiler/latest/bin:$PATH
      #- CXX=icpx F77=ifort ./configure --with-fflags="-O3 -diag-disable=10448" --disable-openmp
      #- CXX=icpx FC=ifort ./configure --with-fflags="-O3 -diag-disable=10448" --disable-openmp
      #- make wipe
      #- make -j
      - echo "Running make with Intel ifx and Intel icpx..."
@@ -123,7 +141,7 @@ compatibility_stage:
      - cp -r ../build/* .
      - export LD_LIBRARY_PATH=/opt/intel/oneapi/compiler/latest/lib
      - export PATH=/opt/intel/oneapi/compiler/latest/bin:$PATH
      - CXX=icpx F77=ifx ./configure --with-fflags="-O3 -std=legacy" --disable-openmp
      - CXX=icpx FC=ifx ./configure --with-fflags="-O3 -std=legacy" --disable-openmp
      - make wipe
      - make -j
   
@@ -236,19 +254,27 @@ running_stage:
      - cd build/libnptm
      - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH;$PWD"
      - cd ../sphere
      - echo "Testing configurator for sphere"
      - echo "Testing configurator for SPHERE"
      - ../../src/scripts/model_maker.py ../../test_data/sphere/config_dev.yml
      - echo "Running np_sphere"
      - chmod +x np_sphere
      - OMP_NUM_THREADS=1 ./np_sphere DEDFB DSPH .
      - mv c_OSPH c_OSPH_dev
      - mv c_TEDF c_TEDF_dev
      - mv c_TEDF.hd5 c_TEDF_dev.hd5
      - echo "Testing parallel execution of SPHERE"
      - ../../src/scripts/model_maker.py ../../test_data/sphere/config_181_xi.yml
      - echo "Running parallel np_sphere"
      - OMP_NUM_THREADS=2 ./np_sphere DEDFB_181_xi DSPH_181_xi .
      - mv c_OSPH c_OSPH_181_xi
      - cd ../cluster
      - echo "Testing configurator for cluster"
      - echo "Testing configurator for CLUSTER"
      - ../../src/scripts/model_maker.py ../../test_data/cluster/config_dev.yml
      - echo "Running np_cluster"
      - chmod +x np_cluster
      - OMP_NUM_THREADS=1 ./np_cluster DEDFB DCLU .
      - cd ../inclusion
      - echo "Testing configurator for inclusion"
      - echo "Testing configurator for INCLUSION"
      - ../../src/scripts/model_maker.py ../../test_data/inclusion/config_dev.yml
      - echo "Running np_inclusion"
      - chmod +x np_inclusion
@@ -282,11 +308,14 @@ testing_stage:
      - cd build/libnptm
      - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH;$PWD"
      - cd ../sphere
      - export FFILE=../../test_data/sphere/OSPH
      - echo "Comparing output of SPHERE"
      - python3 ../../src/scripts/pycompare.py --no-progress --ffile $FFILE --cfile c_OSPH --html
      - export FFILE=../../test_data/sphere/OSPH
      - python3 ../../src/scripts/pycompare.py --no-progress --ffile $FFILE --cfile c_OSPH_dev --html
      - echo "Comparing output of parallel SPHERE"
      - export FFILE=../../test_data/sphere/OSPH_181_xi
      - python3 ../../src/scripts/pycompare.py --no-progress --ffile $FFILE --cfile c_OSPH_181_xi --html
      - echo "Checking consistency among legacy and HDF5 configuration files"
      - ../testing/test_TEDF ../../test_data/sphere/DEDFB c_TEDF c_TEDF.hd5
      - ../testing/test_TEDF ../../test_data/sphere/DEDFB c_TEDF_dev c_TEDF_dev.hd5
      - cd ../inclusion
      - echo "Comparing output of INCLUSION"
      - export FFILE=../../test_data/inclusion/OINCLU
@@ -316,7 +345,7 @@ testing_stage:
      - export FFILE=../../test_data/cluster/OCLU_24
      - python3 ../../src/scripts/pycompare.py --no-progress --ffile $FFILE --cfile c_OCLU_24
      - rm -rf c_OCLU_24
      - echo "Checking consistency of HDF5 incluson output"
      - echo "Checking consistency of HDF5 inclusion output"
      - chmod u+x test_inclusion_outputs
      - ./test_inclusion_outputs
      - export FFILE=../../test_data/inclusion/OINCLU
+70 −49
Original line number Diff line number Diff line
@@ -73,18 +73,25 @@ function print_help {
    echo "Use this script to detect the proper build configuration for your system.        "
    echo "Valid options are:                                                               "
    echo "                                                                                 "
    echo "--disble-fortran          Disable FORTRAN compilation.                    "
    echo "--disble-gdb              Disable GNU debugger.                           "
    echo "--disble-ilp64            Disable 64-bit integers.                        "
    echo "--disble-offload          Disable GPU offloading.                         "
    echo "--disble-openmp           Disable OpenMP multi-threading.                 "
    echo "--enable-debug=FEATURE    Enable debug output of specified feature.       "
    echo "--enable-fortran                  Enable FORTRAN compilation (DEFAULT).          "
    echo "--enable-nvtx             Enable NVTX profiling tools.                    "
    echo "--disable-fortran                 Disable FORTRAN compilation.                   "
    echo "--enable-gdb                      Enable GNU debugger (DEFAULT).                 "
    echo "--disable-gdb                     Disable GNU debugger.                          "
    echo "--enable-ilp64                    Enable 64-bit integers (DEFAULT).              "
    echo "--disable-ilp64                   Disable 64-bit integers.                       "
    echo "--enable-offload                  Enable GPU offloading (DEFAULT).               "
    echo "--disable-offload                 Disable GPU offloading.                        "
    echo "--enable-openmp                   Enable OpenMP multi-threading (DEFAULT).       "
    echo "--disable-openmp                  Disable OpenMP multi-threading.                "
    echo "--enable-debug=FEATURE            Enable debug output of specified feature.      "
    echo "--enable-nvtx                     Enable NVTX profiling tools.                   "
    echo "--disable-nvtx                    Disable NVTX profiling tools (DEFAULT).        "
    echo "--enable-optimize=OPT             Use OPT-level compiler optimization.           "
    echo "--enable-refinement               Use iterative refinement of matrix inversion.  "
    echo "--disable-refinement              Do not iterate refinement of matrix inversion  "
    echo "                                  (DEFAULT).                                     "
    echo "--enable-shared                   Use shared libraries (default is static).      "
    echo "--disable-shared                  Use static libraries (DEFAULT).                "
    echo "--help                            Print this help and exit.                      "
    echo "--with-cublas                     Use cuBLAS (DEFAULT).                          "
    echo "--without-cublas                  Disable cuBLAS.                                "
@@ -95,11 +102,12 @@ function print_help {
    echo "                                  than once).                                    "
    echo "--with-lapack                     Use LAPACK (DEFAULT).                          "
    echo "--without-lapack                  Disable LAPACK.                                "
    echo "--with-ldflags=[PATH]     Use additional linker LDFLAGS (can be given more"
    echo "                          than once).                                     "
    echo "--with-ldflags=[PATH]             Use additional linker LDFLAGS (can be given    "
    echo "                                  more than once).                               "
    echo "--with-magma=[MAGMA]              Use specified MAGMA distribution (DEFAULT).    "
    echo "--without-magma                   Disable MAGMA.                                 "
    echo "--enable-magma-invert=OPTION      Use specified MAGMA matrix inversion function (options = auto|getri|gesv|rbt, default getri).     "
    echo "--enable-magma-invert=OPTION      Use specified MAGMA matrix inversion function  "
    echo "                                  (options = auto|getri|gesv|rbt, default getri)."
    echo "                                                                                 "
    echo "Some influential environment variables are:                                      "
    echo "                                                                                 "
@@ -143,16 +151,27 @@ do
    if [ "x$cut_arg" = "x--help" ]; then
	print_help | less
	exit 0
    elif [ "x$cut_arg" = "x--enable-gdb" ]; then
	FC_DBG=" -ggdb"
	CXX_DBG=" -ggdb"
    elif [ "x$cut_arg" = "x--disable-gdb" ]; then
	FC_DBG=""
	CXX_DBG=""
    elif [ "x$cut_arg" = "x--enable-ilp64" ]; then
	ENABLE_ILP64="yes"
    elif [ "x$cut_arg" = "x--disable-ilp64" ]; then
	ENABLE_ILP64="no"
    elif [ "x$cut_arg" = "x--enable-fortran" ]; then
	BUILDFORTRAN="yes"
    elif [ "x$cut_arg" = "x--disable-fortran" ]; then
	FC="none"
	BUILDFORTRAN="no"
    elif [ "x$cut_arg" = "x--enable-offload" ]; then
	OFFLOAD="auto"
    elif [ "x$cut_arg" = "x--disable-offload" ]; then
	OFFLOAD="no"
    elif [ "x$cut_arg" = "x--enable-openmp" ]; then
	OMPMODE="yes"
    elif [ "x$cut_arg" = "x--disable-openmp" ]; then
	OMPMODE="no"
    elif [ "x$cut_arg" = "x--enable-debug" ]; then
@@ -167,12 +186,10 @@ do
		DEBUGFLAGS="${DEBUGFLAGS} -DDEBUG_${dbg_feature}"
	    fi
	fi
    elif [ "x$cut_arg" = "x--enable-fortran" ]; then
	BUILDFORTRAN="yes"
    elif [ "x$cut_arg" = "x--enable-nvtx" ]; then
	NVTXFLAGS=" -DUSE_NVTX"
    elif [ "x$cut_arg" = "x--enable-openmp" ]; then
	OMPMODE="yes"
    elif [ "x$cut_arg" = "x--disable-nvtx" ]; then
	NVTXFLAGS=""
    elif [ "x$cut_arg" = "x--enable-optimize" ]; then
	opt_level=$(echo $arg | cut -d '=' -f2)
	if [ $opt_level -lt 0 -o $opt_level -gt 3 ]; then
@@ -183,8 +200,12 @@ do
	CXX_OPT=$opt_level
    elif [ "x$cut_arg" = "x--enable-refinement" ]; then
	REFINEFLAGS=" -DUSE_REFINEMENT"
    elif [ "x$cut_arg" = "x--disable-refinement" ]; then
	REFINEFLAGS=""
    elif [ "x$cut_arg" = "x--enable-shared" ]; then
	LIBMODE="shared"
    elif [ "x$cut_arg" = "x--disable-shared" ]; then
	LIBMODE="static"
    elif [ "x$cut_arg" = "x--with-cublas" ]; then
	CUBLAS="yes"
    elif [ "x$cut_arg" = "x--without-cublas" ]; then
+11 −9
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ WORKDIR /root
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive apt -y upgrade
# install packages needed to build binaries
RUN DEBIAN_FRONTEND=noninteractive apt -y install g++ gfortran gcc-offload-nvptx g++-11 gfortran-11 gcc-11-offload-nvptx g++-12 gfortran-12 gcc-12-offload-nvptx g++-13 gfortran-13 gcc-13-offload-nvptx g++-14 gfortran-14 gcc-14-offload-nvptx clang libc++-dev libc++abi-dev clang-16 clang-17 flang-16 flang-17 libhdf5-dev make
RUN DEBIAN_FRONTEND=noninteractive apt -y install g++ gfortran gcc-offload-nvptx g++-12 gfortran-12 gcc-12-offload-nvptx g++-13 gfortran-13 gcc-13-offload-nvptx g++-14 gfortran-14 gcc-14-offload-nvptx clang libc++-dev libc++abi-dev clang-17 clang-18 clang-19 flang-17 flang-18 flang-19 libhdf5-dev make
# install packages needed to test with Intel OneAPI compilers
COPY --chown=root:root containers/docker/dockerstuff/intelcomps/oneapi-archive-keyring.gpg /usr/share/keyrings/
COPY --chown=root:root containers/docker/dockerstuff/intelcomps/oneAPI.list /etc/apt/sources.list.d/
@@ -33,7 +33,7 @@ COPY --chown=root:root containers/docker/dockerstuff/magma-compiled/usr/lib/lib*
COPY --chown=root:root containers/docker/dockerstuff/magma-compiled/usr/include/* /usr/include/
COPY --chown=root:root containers/docker/dockerstuff/magma-compiled/usr/lib/pkgconfig/* /usr/lib/x86_64-linux-gnu/pkgconfig/
# install packages needed to run python scripts for checks
RUN DEBIAN_FRONTEND=noninteractive apt -y install python3 python-is-python3 python3-regex
RUN DEBIAN_FRONTEND=noninteractive apt -y install python3 python-is-python3 python3-regex python3-yaml python3-matplotlib python3-numpy
# install packages needed to run doxygen to create html docs
RUN DEBIAN_FRONTEND=noninteractive apt -y install doxygen
# install packages needed to run pdflatex to create pdf docs
@@ -57,17 +57,19 @@ ADD doc /root/np-tmcode/doc
ADD build /root/np-tmcode/build
ADD test_data /root/np-tmcode/test_data
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_MAGMA=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_MAGMA=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_magma_mpi
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-static --enable-mpi --enable-ilp64 --enable-openmp --with-lapack --with-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_magma_mpi
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-openmp --with-lapack --with-magma --enable-refinement --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_magma_mpi && mv sphere/np_sphere sphere/np_sphere_magma_mpi && mv inclusion/np_inclusion inclusion/np_inclusion_magma_mpi && mv trapping/np_trapping trapping/np_trapping_magma_mpi
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_MAGMA=1 USE_OPENMP=1 CXX=g++ FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_MAGMA=1 USE_OPENMP=1 CXX=g++ FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_magma_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-static --disable-mpi --enable-ilp64 --enable-openmp --with-lapack --with-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_magma_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-openmp --with-lapack --with-magma --enable-refinement --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_magma_serial && mv sphere/np_sphere sphere/np_sphere_magma_serial && mv inclusion/np_inclusion inclusion/np_inclusion_magma_serial && mv trapping/np_trapping trapping/np_trapping_magma_serial
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-openmp --with-lapack --without-magma --enable-refinement --with-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_cublas_mpi && mv sphere/np_sphere sphere/np_sphere_cublas_mpi && mv inclusion/np_inclusion inclusion/np_inclusion_cublas_mpi && mv trapping/np_trapping trapping/np_trapping_cublas_mpi
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-openmp --with-lapack --without-magma --enable-refinement --with-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_cublas_serial && mv sphere/np_sphere sphere/np_sphere_cublas_serial && mv inclusion/np_inclusion inclusion/np_inclusion_cublas_serial && mv trapping/np_trapping trapping/np_trapping_cublas_serial
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_lapack_mpi && cd ../build/cluster && ln -s np_cluster_lapack_mpi np_cluster
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-static --enable-mpi --enable-ilp64 --enable-openmp --with-lapack --without-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_lapack_mpi && cd cluster && ln -s np_cluster_lapack_mpi np_cluster
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-openmp --with-lapack --without-magma --enable-refinement --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_lapack_mpi && mv sphere/np_sphere sphere/np_sphere_lapack_mpi && mv inclusion/np_inclusion inclusion/np_inclusion_lapack_mpi && mv trapping/np_trapping trapping/np_trapping_lapack_mpi && cd cluster && ln -s np_cluster_lapack_mpi np_cluster && cd ../sphere && ln -s np_sphere_lapack_mpi np_sphere && cd ../inclusion && ln -s np_inclusion_lapack_mpi np_inclusion && cd ../trapping && ln -s np_trapping_lapack_mpi np_trapping   
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_OPENMP=1 CXX=g++ FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_LAPACK=1 USE_OPENMP=1 CXX=g++ FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_lapack_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-static --disable-mpi --enable-ilp64 --enable-openmp --with-lapack --without-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_lapack_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-openmp --with-lapack --without-magma --enable-refinement --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_lapack_serial && mv sphere/np_sphere sphere/np_sphere_lapack_serial && mv inclusion/np_inclusion inclusion/np_inclusion_lapack_serial && mv trapping/np_trapping trapping/np_trapping_lapack_serial
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_OPENMP=1 USE_MPI=1 CXX=mpicxx FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_legacy_mpi
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-static --disable-mpi --enable-ilp64 --enable-openmp --without-lapack --without-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_legacy_mpi
RUN cd np-tmcode/build && CXX=mpicxx FC=gfortran ./configure --enable-openmp --without-lapack --without-magma --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_legacy_mpi && mv sphere/np_sphere sphere/np_sphere_legacy_mpi && mv inclusion/np_inclusion inclusion/np_inclusion_legacy_mpi && mv trapping/np_trapping trapping/np_trapping_legacy_mpi
#RUN cd np-tmcode/src && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_OPENMP=1 CXX=g++ FC=gfortran make wipe && BUILDDIR=../../build BUILDDIR_NPTM=../../build/libnptm LIBNPTM=../../build/libnptm/libnptm.a USE_ILP64=1 USE_OPENMP=1 CXX=g++ FC=gfortran make -j && mv ../build/cluster/np_cluster ../build/cluster/np_cluster_legacy_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --enable-static --disable-mpi --enable-ilp64 --disable-openmp --without-lapack --without-magma && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_legacy_serial
RUN cd np-tmcode/build && CXX=g++ FC=gfortran ./configure --disable-openmp --without-lapack --without-magma --without-cublas && make clean && make -j && mv cluster/np_cluster cluster/np_cluster_legacy_serial && mv sphere/np_sphere sphere/np_sphere_legacy_serial && mv inclusion/np_inclusion inclusion/np_inclusion_legacy_serial && mv trapping/np_trapping trapping/np_trapping_legacy_serial
RUN cd np-tmcode/doc/src && doxygen config.dox && cd ../build/latex && make -j


@@ -80,7 +82,7 @@ WORKDIR /root
COPY --chown=root:root containers/docker/dockerstuff/debian-nonfree/debian.sources /etc/apt/sources.list.d/
RUN DEBIAN_FRONTEND=noninteractive apt update
RUN DEBIAN_FRONTEND=noninteractive apt -y upgrade
RUN DEBIAN_FRONTEND=noninteractive apt -y install libgfortran5 libgcc-s1 libhdf5-103-1t64 libstdc++6 libssl3t64 libcurl4t64 libsz2 zlib1g libnghttp2-14 libidn2-0 librtmp1 libssh2-1t64 libpsl5t64 libgssapi-krb5-2 libldap-2.5-0 libzstd1 libbrotli1 libaec0 libunistring5 libgmp10 libkrb5-3 libk5crypto3 libcom-err2 libkrb5support0 libsasl2-2 libp11-kit0 libtasn1-6 libkeyutils1 libffi8 liblapacke64 libopenblas64-0-openmp python3 python-is-python3 python3-regex hdf5-tools libquadmath0 libgcc-s1 libgomp1 libnvjitlink12 libcublaslt12 libcudart12 libcusparse12 libcublas12 mpi-default-bin
RUN DEBIAN_FRONTEND=noninteractive apt -y install libgfortran5 libgcc-s1 libhdf5-310 libstdc++6 libssl3t64 libcurl4t64 libsz2 zlib1g libnghttp2-14 libidn2-0 librtmp1 libssh2-1t64 libpsl5t64 libgssapi-krb5-2 libldap2 libzstd1 libbrotli1 libaec0 libunistring5 libgmp10 libkrb5-3 libk5crypto3 libcom-err2 libkrb5support0 libsasl2-2 libp11-kit0 libtasn1-6 libkeyutils1 libffi8 liblapacke64 libopenblas64-0-openmp python3 python-is-python3 python3-regex python3-yaml python3-matplotlib python3-numpy hdf5-tools libquadmath0 libgcc-s1 libgomp1 libnvjitlink12 libcublaslt12 libcudart12 libcusparse12 libcublas12 mpi-default-bin
RUN rm -rf /var/lib/apt/lists/*
COPY --from=np-tmcode-run-dev /root /root
COPY --from=np-tmcode-run-dev /usr/lib/x86_64-linux-gnu/libmagma.so /usr/lib/x86_64-linux-gnu/libmagma.so
+65 −24

File changed.

Preview size limit exceeded, changes collapsed.

+19 −7

File changed.

Preview size limit exceeded, changes collapsed.

Loading