Changeset 26039
- Timestamp:
- 03/04/21 15:39:08 (4 years ago)
- Location:
- issm/trunk-jpl
- Files:
-
- 5 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/etc/environment.sh
r26034 r26039 168 168 } #}}} 169 169 170 #######################171 # OS-specific handling172 #######################173 174 OS=$(uname -s)175 176 if [[ "${OS}" == MINGW* || "${OS}" == MSYS* ]]; then177 # If this is a Windows build, we need to copy MSMPI to working $ISSM_DIR178 MSMPI_ROOT="${ISSM_DIR}/MSMPI"179 if [ ! -d "${MSMPI_ROOT}" ]; then180 ${ISSM_DIR}/scripts/win-msys2-create_local_msmpi_dir.sh181 fi182 export MSMPI_ROOT # Used in installation of ParMETIS, ScaLAPACK183 path_prepend "${ISSM_DIR}/bin" # Lets dynamic linker find DLLs184 cpath_prepend "${MSMPI_ROOT}/include"185 library_path_prepend "${MSMPI_ROOT}/lib"186 fi187 188 # Windows compilers189 if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then190 source ${ISSM_DIR}/externalpackages/windows/windows_environment.sh191 fi192 193 170 path_append "${ISSM_DIR}/aux-config" 194 171 path_append "${ISSM_DIR}/scripts" … … 201 178 if [ -z "${ISSM_EXT_DIR+x}" ]; then 202 179 export ISSM_EXT_DIR="${ISSM_DIR}/externalpackages" 180 fi 181 182 ####################### 183 # OS-specific handling 184 ####################### 185 186 OS=$(uname -s) 187 188 if [[ "${OS}" == MINGW* ]]; then 189 MSMPI_ROOT="${ISSM_EXT_DIR}/msmpi/install" 190 if [ -d "${MSMPI_ROOT}" ]; then 191 export MSMPI_ROOT # Used in installation of ParMETIS, ScaLAPACK 192 path_prepend "${ISSM_DIR}/bin" # Allows dynamic loaded to find DLLs 193 cpath_prepend "${MSMPI_ROOT}/include" 194 library_path_prepend "${MSMPI_ROOT}/lib" 195 fi 196 197 MPIEXEC_DIR=$(cygpath -u $(cygpath -ms "/c/Program Files/Microsoft MPI/Bin")) 198 if [ -d "${MPIEXEC_DIR}" ]; then 199 export MPIEXEC_DIR 200 path_append "${MPIEXEC_DIR}" 201 fi 202 203 path_prepend "${ISSM_DIR}/bin" # Allows dynamic loader to find DLLs 204 fi 205 206 # Windows compilers 207 if [[ "${ISSM_ARCH}" == "cygwin-intel" ]]; then 208 source ${ISSM_DIR}/externalpackages/windows/windows_environment.sh 203 209 fi 204 210 … … 284 290 if [ -d "${BLAS_ROOT}" ]; then 285 291 export BLAS_ROOT # Used in installation of LAPACK, ScaLAPACK, PETSc 286 path_append "${BLAS_ROOT}/lib" # Lets dynamic linker find DLLs287 292 library_path_append "${BLAS_ROOT}/lib" 288 293 ld_library_path_append "${BLAS_ROOT}/lib" 294 295 if [[ "${OS}" == MINGW* ]]; then 296 path_append "${BLAS_ROOT}/lib" # Allows dynamic loaded to find DLLs 297 fi 289 298 fi 290 299 … … 292 301 if [ -d "${LAPACK_ROOT}" ]; then 293 302 export LAPACK_ROOT # Used in installation of ScaLAPACK, MUMPS, PETSc 294 path_append "${LAPACK_ROOT}/lib" # Lets dynamic linker find DLLs295 303 library_path_append "${LAPACK_ROOT}/lib" 296 304 ld_library_path_append "${LAPACK_ROOT}/lib" 305 306 if [[ "${OS}" == MINGW* ]]; then 307 path_append "${LAPACK_ROOT}/lib" # Allows dynamic loaded to find DLLs 308 fi 297 309 fi 298 310 … … 300 312 if [ -d "${METIS_ROOT}" ]; then 301 313 export METIS_ROOT # Used in installation of ParMETIS, Gmsh, PETSc 302 path_append "${METIS_ROOT}/lib" # Lets dynamic linker find DLLs303 314 library_path_prepend "${METIS_ROOT}/lib" 304 315 ld_library_path_prepend "${METIS_ROOT}/lib" 316 317 if [[ "${OS}" == MINGW* ]]; then 318 path_append "${METIS_ROOT}/lib" # Allows dynamic loaded to find DLLs 319 fi 305 320 fi 306 321 … … 308 323 if [ -d "${MUMPS_ROOT}" ]; then 309 324 export MUMPS_ROOT # Used in installation of PETSc 310 path_append "${MUMPS_ROOT}/lib" # Lets dynamic linker find DLLs311 325 library_path_append "${MUMPS_ROOT}/lib" 326 327 if [[ "${OS}" == MINGW* ]]; then 328 path_append "${MUMPS_ROOT}/lib" # Allows dynamic loaded to find DLLs 329 fi 312 330 fi 313 331 … … 315 333 if [ -d "${PARMETIS_ROOT}" ]; then 316 334 export PARMETIS_ROOT # Used in installation of MUMPS, PETSc 317 path_append "${PARMETIS_ROOT}/lib" # Lets dynamic linker find DLLs318 335 library_path_prepend "${PARMETIS_ROOT}/lib" 319 336 ld_library_path_prepend "${PARMETIS_ROOT}/lib" 337 338 if [[ "${OS}" == MINGW* ]]; then 339 path_append "${PARMETIS_ROOT}/lib" # Allows dynamic loaded to find DLLs 340 fi 320 341 fi 321 342 … … 323 344 if [ -d "${SCALAPACK_ROOT}" ]; then 324 345 export SCALAPACK_ROOT # Used in installation of MUMPS, PETSc 325 path_append "${SCALAPACK_ROOT}/lib" # Lets dynamic linker find DLLs326 346 library_path_append "${SCALAPACK_ROOT}/lib" 347 348 if [[ "${OS}" == MINGW* ]]; then 349 path_append "${SCALAPACK_ROOT}/lib" # Allows dynamic loaded to find DLLs 350 fi 327 351 fi 328 352 … … 336 360 if [ -d "${PETSC_ROOT}" ]; then 337 361 export PETSC_ROOT # Used in installation of Gmsh 338 path_append "${PETSC_ROOT}/lib" # Lets dynamic linker find DLLs339 362 library_path_prepend "${PETSC_ROOT}/lib" 340 363 ld_library_path_prepend "${PETSC_ROOT}/lib" 364 365 if [[ "${OS}" == MINGW* ]]; then 366 path_append "${PETSC_ROOT}/lib" # Allows dynamic loaded to find DLLs 367 fi 341 368 342 369 # In case we have installed certain external packages via PETSc … … 511 538 TRIANGLE_ROOT="${ISSM_EXT_DIR}/triangle/install" 512 539 if [ -d "${TRIANGLE_ROOT}" ]; then 513 path_append "${TRIANGLE_ROOT}/lib" # Lets dynamic linker find DLLs514 540 ld_library_path_append "${TRIANGLE_ROOT}/lib" 515 541 dyld_library_path_append "${TRIANGLE_ROOT}/lib" 542 543 if [[ "${OS}" == MINGW* ]]; then 544 path_append "${TRIANGLE_ROOT}/lib" # Allows dynamic loaded to find DLLs 545 fi 516 546 fi 517 547 -
issm/trunk-jpl/externalpackages/petsc/install-3.14-win-msys2-mingw-msmpi.sh
r26034 r26039 5 5 # - You must install various needed packages with, 6 6 # 7 # pacman -S autoconf make automake-wrapper bison git mingw-w64-x86_64-freeglut mingw-w64-x86_64-toolchain patch python perl pkg-config pkgfile rebase tar time tzcode unzip whichmingw-w64-x86_64-libmicroutils7 # pacman -S git mingw-w64-x86_64-freeglut mingw-w64-x86_64-toolchain python pkg-config mingw-w64-x86_64-libmicroutils 8 8 # 9 # then remove the MinGW 64-bit version of Python (and dep dendent packages) with,9 # then remove the MinGW 64-bit version of Python (and dependent packages) with, 10 10 # 11 11 # pacman -R mingw-w64-x86_64-gdb-multiarch mingw-w64-x86_64-gdb mingw-w64-x86_64-python … … 69 69 --with-ssl=0 \ 70 70 --with-proc-filesystem=0 \ 71 --with-mpiexec=" /c/PROGRA~1/MICROS~1/Bin/mpiexec.exe" \71 --with-mpiexec="${MPIEXEC_DIR}/mpiexec.exe" \ 72 72 --with-mpi-lib="-L${MSMPI_ROOT}/lib -lmsmpi" \ 73 73 --with-mpi-include="${MSMPI_ROOT}/include" \ -
issm/trunk-jpl/jenkins/ross-win-msys2-mingw-msmpi-basic
r26034 r26039 1 MATLAB_PATH=$(cygpath -u $(cygpath -ms "/c/Program Files/MATLAB/R2019b")) 2 1 3 ISSM_CONFIG='\ 2 4 --prefix=${ISSM_DIR} \ … … 25 27 #List of external pakages to be installed and their installation scripts 26 28 EXTERNALPACKAGES=" 29 msmpi install.sh 27 30 petsc install-3.14-win-msys2-mingw-msmpi.sh 28 31 triangle install-win-msys2-mingw.sh … … 48 51 49 52 # Number of CPUs used in the nightly runs 50 NUMCPUS_RUN= 153 NUMCPUS_RUN=2 51 54 52 55 # Nightly run options -
issm/trunk-jpl/src/m/classes/clusters/generic.m
r26034 r26039 139 139 fprintf(fid,'@echo off\n'); 140 140 141 if IssmConfig('_HAVE_PETSC_MPI_'),142 warning('parallel runs not allowed yet in Windows. Defaulting to 1 cpus');143 cluster.np=1;144 end141 % if IssmConfig('_HAVE_PETSC_MPI_'), 142 % warning('parallel runs not allowed yet in Windows. Defaulting to 1 cpus'); 143 % cluster.np=1; 144 % end 145 145 146 146 if cluster.np>1, 147 % fprintf(fid,'"C:\\Program Files\\MPICH2\\bin\\mpiexec.exe" -n %i "%s/%s" %s ./ %s 148 fprintf(fid,'"C:\\P ROGRA~1\\MICROS~1\\Bin\\mpiexec.exe" -n %i "%s/%s" %s ./ %s',cluster.np,cluster.codepath,executable,solution,modelname);149 else 150 fprintf(fid,'"%s/%s" %s ./ %s 147 % fprintf(fid,'"C:\\Program Files\\MPICH2\\bin\\mpiexec.exe" -n %i "%s/%s" %s ./ %s',cluster.np,cluster.codepath,executable,solution,modelname); 148 fprintf(fid,'"C:\\Program Files\\Microsoft MPI\\Bin\\mpiexec.exe" -n %i "%s/%s" %s ./ %s',cluster.np,cluster.codepath,executable,solution,modelname); 149 else 150 fprintf(fid,'"%s/%s" %s ./ %s',cluster.codepath,executable,solution,modelname); 151 151 end 152 152 fclose(fid); … … 305 305 306 306 if ~ispc, 307 308 307 %figure out what shell extension we will use: 309 308 if isempty(strfind(cluster.shell,'csh')), … … 319 318 else 320 319 if ~batch, 321 launchcommand=['source ' cluster.etcpath '/environment.' shellext ' && cd ' cluster.executionpath ' && rm -rf ./' dirname ' && mkdir ' dirname ...320 launchcommand=['source ' cluster.etcpath '/environment.' shellext ' && cd ' cluster.executionpath ' && rm -rf ./' dirname ' && mkdir ' dirname ... 322 321 ' && cd ' dirname ' && mv ../' dirname '.tar.gz ./ && tar -zxf ' dirname '.tar.gz && source ' modelname '.queue ']; 323 322 else 324 launchcommand=['source ' cluster.etcpath '/environment.' shellext ' && cd ' cluster.executionpath ' && rm -rf ./' dirname ' && mkdir ' dirname ...323 launchcommand=['source ' cluster.etcpath '/environment.' shellext ' && cd ' cluster.executionpath ' && rm -rf ./' dirname ' && mkdir ' dirname ... 325 324 ' && cd ' dirname ' && mv ../' dirname '.tar.gz ./ && tar -zxf ' dirname '.tar.gz ']; 326 325 end -
issm/trunk-jpl/src/m/solve/waitonlock.m
r21766 r26039 2 2 %WAITONLOCK - wait for a file 3 3 % 4 % This routine will return when a file named 'lockfilename' is written to disk.5 % Also check for outlog file be cause it might bewritten several seconds6 % after the lock file.4 % This routine will return when a file named 'lockfilename' is written to 5 % disk. Also check for outlog file be cause it might be written several 6 % seconds after the lock file. 7 7 % If the time limit given in input is exceeded, return 0 8 8 %
Note:
See TracChangeset
for help on using the changeset viewer.