diff --git a/cmake/ExternalGitTags.cmake b/cmake/ExternalGitTags.cmake index d37e45e4d..e6dfd04e5 100644 --- a/cmake/ExternalGitTags.cmake +++ b/cmake/ExternalGitTags.cmake @@ -20,7 +20,7 @@ set(EXTERN_ARPACK_GIT_BRANCH "Git branch for external ARPACK-NG build" ) set(EXTERN_ARPACK_GIT_TAG - "217e25ac7c48b5d05d31120475c8e1eeaf543bbd" CACHE STRING + "0b3038d139f874a423ba6a1cdf5098fc15336848" CACHE STRING "Git tag for external ARPACK-NG build" ) @@ -34,7 +34,7 @@ set(EXTERN_BUTTERFLYPACK_GIT_BRANCH "Git branch for external ButterflyPACK build" ) set(EXTERN_BUTTERFLYPACK_GIT_TAG - "7410fca61c188daab40f55c235ab7fad16ee5856" CACHE STRING + "28e9380ef938a46a6ac49427146fc0ea0cc9b0eb" CACHE STRING "Git tag for external ButterflyPACK build" ) @@ -62,7 +62,7 @@ set(EXTERN_HYPRE_GIT_BRANCH "Git branch for external HYPRE build" ) set(EXTERN_HYPRE_GIT_TAG - "0dcae3ec7c069785ea25d25aa0bc0c7aa8b0be8d" CACHE STRING + "9ce3349795641d183374d038d63a450d054bce43" CACHE STRING "Git tag for external HYPRE build" ) @@ -76,7 +76,7 @@ set(EXTERN_LIBCEED_GIT_BRANCH "Git branch for external libCEED build" ) set(EXTERN_LIBCEED_GIT_TAG - "ef9a992f4cf09f2be4ec72f649495c67ec03f813" CACHE STRING + "371292c6899b4ba6dfcdd133b072ac320618458b" CACHE STRING "Git tag for external libCEED build" ) @@ -90,7 +90,7 @@ set(EXTERN_LIBXSMM_GIT_BRANCH "Git branch for external LIBXSMM build" ) set(EXTERN_LIBXSMM_GIT_TAG - "953405207f32369cd74d757681ce476fe89768b6" CACHE STRING + "f5cb6f5d32a9527351dfce1b367e32055a1e759b" CACHE STRING "Git tag for external LIBXSMM build" ) @@ -104,7 +104,7 @@ set(EXTERN_MAGMA_GIT_BRANCH "Git branch for external MAGMA build" ) set(EXTERN_MAGMA_GIT_TAG - "e20a6748d9e7067c0946036b9c6d5caa022051db" CACHE STRING + "3bec2af7a08f32d78e413bf4203a64532764460e" CACHE STRING "Git tag for external MAGMA build" ) @@ -132,7 +132,7 @@ set(EXTERN_MFEM_GIT_BRANCH "Git branch for external MFEM build" ) set(EXTERN_MFEM_GIT_TAG - "9a327eeca6472254e8bdefc1527aa130250e528e" CACHE STRING # master @ 05/18/2024 + "988439f60a9902e29572b83dcb2a142eb8da3dbd" CACHE STRING "Git tag for external MFEM build" ) @@ -146,7 +146,7 @@ set(EXTERN_MUMPS_GIT_BRANCH "Git branch for external MUMPS build" ) set(EXTERN_MUMPS_GIT_TAG - "b00cc7c9fc6127e07d6583a8c50c727508ea1c6e" CACHE STRING + "33db6a7c04094ea2393522873148628cd8d13ea7" CACHE STRING "Git tag for external MUMPS build" ) @@ -174,7 +174,7 @@ set(EXTERN_PETSC_GIT_BRANCH "Git branch for external PETSc build" ) set(EXTERN_PETSC_GIT_TAG - "e6938432041f05a2617386d95f6ba21e1677d3e7" CACHE STRING + "286aa49c2a5e5b47208eefb5ad1ff389e936110b" CACHE STRING "Git tag for external PETSc build" ) @@ -202,7 +202,7 @@ set(EXTERN_SLEPC_GIT_BRANCH "Git branch for external SLEPc build" ) set(EXTERN_SLEPC_GIT_TAG - "2c2766ada27519a79c9f9d9634b730afb4010d95" CACHE STRING + "ffa1d78448240d13360ff0555c46d4e767792d2c" CACHE STRING "Git tag for external SLEPc build" ) @@ -216,7 +216,7 @@ set(EXTERN_STRUMPACK_GIT_BRANCH "Git branch for external STRUMPACK build" ) set(EXTERN_STRUMPACK_GIT_TAG - "c318456692bf25ff2781c48fc89297a7c7ff6c3d" CACHE STRING + "cf768ce0977904f2991ea9844e5164dd39a15102" CACHE STRING "Git tag for external STRUMPACK build" ) @@ -230,7 +230,7 @@ set(EXTERN_SUPERLU_GIT_BRANCH "Git branch for external SuperLU_DIST build" ) set(EXTERN_SUPERLU_GIT_TAG - "2e39ceca001f594dc63426f2b500c82f5ce312a3" CACHE STRING + "ea4d47b206387a1592eea46493519d57cf3984d6" CACHE STRING "Git tag for external SuperLU_DIST build" ) @@ -244,7 +244,7 @@ set(EXTERN_ZFP_GIT_BRANCH "Git branch for external ZFP build" ) set(EXTERN_ZFP_GIT_TAG - "6aa2dae1c1bf700f062f386e81cc71796929c30e" CACHE STRING + "5c976d8da013988174f931845862b6f94119cade" CACHE STRING "Git tag for external ZFP build" ) diff --git a/cmake/ExternalMFEM.cmake b/cmake/ExternalMFEM.cmake index 0f3896ef2..296d8770f 100644 --- a/cmake/ExternalMFEM.cmake +++ b/cmake/ExternalMFEM.cmake @@ -357,7 +357,6 @@ set(MFEM_PATCH_FILES "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_mfem_device_fixes.diff" "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_mesh_vis_dev.diff" "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_mesh_prism_vtu_fix.diff" - "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_mesh_part_const.diff" "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_par_tet_mesh_fix_dev.diff" "${CMAKE_SOURCE_DIR}/extern/patch/mfem/patch_gmsh_parser_performance.diff" ) diff --git a/cmake/ExternalMUMPS.cmake b/cmake/ExternalMUMPS.cmake index aeefcce26..477ff1778 100644 --- a/cmake/ExternalMUMPS.cmake +++ b/cmake/ExternalMUMPS.cmake @@ -14,7 +14,7 @@ list(APPEND MUMPS_OPTIONS "-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}" "-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}" "-DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}" - "-Dparallel=ON" + "-DMUMPS_parallel=ON" "-Dopenmp=${PALACE_WITH_OPENMP}" "-Dintsize64=OFF" "-DBUILD_SINGLE=OFF" diff --git a/extern/patch/mumps/patch_build.diff b/extern/patch/mumps/patch_build.diff index 018e73fee..db6145998 100644 --- a/extern/patch/mumps/patch_build.diff +++ b/extern/patch/mumps/patch_build.diff @@ -1,12 +1,12 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 88bcfb0..7d87397 100644 +index 637122a..9306afa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -43,10 +43,7 @@ find_package(Threads) - if(parallel) + if(MUMPS_parallel) find_package(MPI COMPONENTS C Fortran REQUIRED) -- if(NOT DEFINED ENV{MKLROOT} OR NOT scalapack) +- if(NOT DEFINED ENV{MKLROOT} AND NOT LAPACK_VENDOR MATCHES "^MKL" OR NOT scalapack) - # oneMKL MKLConfig.cmake must be invoked only once - include(cmake/lapack.cmake) - endif() @@ -29,13 +29,13 @@ index 88bcfb0..7d87397 100644 - message(STATUS "MUMPS ORDERING_DEFS: ${ORDERING_DEFS}") message(STATUS "MUMPS ORDERING_LIBS: ${ORDERING_LIBS}") - + message(STATUS "MUMPS LAPACK_VENDOR: ${LAPACK_VENDOR}") diff --git a/cmake/FindLAPACK.cmake b/cmake/FindLAPACK.cmake deleted file mode 100644 -index 136c16d..0000000 +index 8647696..0000000 --- a/cmake/FindLAPACK.cmake +++ /dev/null -@@ -1,501 +0,0 @@ +@@ -1,502 +0,0 @@ -# Distributed under the OSI-approved BSD 3-Clause License. See accompanying -# file Copyright.txt or https://cmake.org/licensing for details. - @@ -402,8 +402,9 @@ index 136c16d..0000000 - OR Netlib IN_LIST LAPACK_FIND_COMPONENTS - OR Atlas IN_LIST LAPACK_FIND_COMPONENTS - OR MKL IN_LIST LAPACK_FIND_COMPONENTS +- OR MKL64 IN_LIST LAPACK_FIND_COMPONENTS - OR AOCL IN_LIST LAPACK_FIND_COMPONENTS)) -- if(DEFINED ENV{MKLROOT}) +- if(DEFINED ENV{MKLROOT} AND IS_DIRECTORY "$ENV{MKLROOT}") - list(APPEND LAPACK_FIND_COMPONENTS MKL) - else() - list(APPEND LAPACK_FIND_COMPONENTS Netlib) @@ -538,7 +539,7 @@ index 136c16d..0000000 - -mark_as_advanced(LAPACK_LIBRARY LAPACK_INCLUDE_DIR) diff --git a/cmake/FindSCALAPACK.cmake b/cmake/FindSCALAPACK.cmake -index 56d7d9c..7a68153 100644 +index f8c4cdc..718a510 100644 --- a/cmake/FindSCALAPACK.cmake +++ b/cmake/FindSCALAPACK.cmake @@ -52,8 +52,6 @@ References @@ -564,7 +565,7 @@ index 56d7d9c..7a68153 100644 list(APPEND CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES} ${MPI_Fortran_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) if(STATIC IN_LIST SCALAPACK_FIND_COMPONENTS AND -@@ -188,40 +183,13 @@ endfunction(scalapack_lib) +@@ -188,40 +183,9 @@ endfunction(scalapack_lib) # === main @@ -572,18 +573,18 @@ index 56d7d9c..7a68153 100644 -if(DEFINED ENV{CRAYPE_VERSION}) - set(scalapack_cray true) -endif() - +- -if(NOT scalapack_cray) -- if(NOT MKL IN_LIST SCALAPACK_FIND_COMPONENTS AND DEFINED ENV{MKLROOT}) +- if(NOT MKL IN_LIST SCALAPACK_FIND_COMPONENTS AND DEFINED ENV{MKLROOT} AND IS_DIRECTORY "$ENV{MKLROOT}") - list(APPEND SCALAPACK_FIND_COMPONENTS MKL) - endif() -endif() - +- -if(STATIC IN_LIST SCALAPACK_FIND_COMPONENTS) - set(_orig_suff ${CMAKE_FIND_LIBRARY_SUFFIXES}) - set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_STATIC_LIBRARY_SUFFIX}) -endif() - +- -if(MKL IN_LIST SCALAPACK_FIND_COMPONENTS OR MKL64 IN_LIST SCALAPACK_FIND_COMPONENTS) - scalapack_mkl() -elseif(scalapack_cray) @@ -598,7 +599,7 @@ index 56d7d9c..7a68153 100644 - endif() - set(CMAKE_FIND_LIBRARY_SUFFIXES ${_orig_suff}) -endif() - +- # --- Check that Scalapack links -if(scalapack_cray OR SCALAPACK_LIBRARY) @@ -606,7 +607,7 @@ index 56d7d9c..7a68153 100644 scalapack_check() endif() -@@ -229,32 +197,19 @@ endif() +@@ -229,32 +193,19 @@ endif() include(FindPackageHandleStandardArgs) @@ -643,20 +644,20 @@ index 56d7d9c..7a68153 100644 # For MKL, we don't use FindLapack, so define LAPACK::LAPACK as alias if(MKL_FOUND AND NOT TARGET LAPACK::LAPACK) -@@ -262,5 +217,3 @@ Scalapack include directories: ${SCALAPACK_INCLUDE_DIRS}") +@@ -262,5 +213,3 @@ Scalapack include directories: ${SCALAPACK_INCLUDE_DIRS}") endif() endif() endif() - -mark_as_advanced(SCALAPACK_LIBRARY SCALAPACK_INCLUDE_DIR) diff --git a/cmake/lapack.cmake b/cmake/lapack.cmake -index 374e8ed..14ebbe6 100644 +index 3f0997e..14ebbe6 100644 --- a/cmake/lapack.cmake +++ b/cmake/lapack.cmake @@ -1,11 +1,3 @@ # Handle options for finding LAPACK --if(NOT DEFINED LAPACK_VENDOR AND DEFINED ENV{MKLROOT}) +-if(NOT DEFINED LAPACK_VENDOR AND DEFINED ENV{MKLROOT} AND IS_DIRECTORY "$ENV{MKLROOT}") - set(LAPACK_VENDOR MKL) -endif() - @@ -667,18 +668,24 @@ index 374e8ed..14ebbe6 100644 -find_package(LAPACK REQUIRED COMPONENTS ${LAPACK_VENDOR}) +find_package(LAPACK REQUIRED) diff --git a/cmake/scalapack.cmake b/cmake/scalapack.cmake -index 6bdfd05..7238c21 100644 +index f4d1a70..7238c21 100644 --- a/cmake/scalapack.cmake +++ b/cmake/scalapack.cmake -@@ -3,21 +3,7 @@ include(GNUInstallDirs) +@@ -3,27 +3,7 @@ include(GNUInstallDirs) if(find) --if(NOT DEFINED SCALAPACK_VENDOR AND DEFINED ENV{MKLROOT}) -- set(SCALAPACK_VENDOR MKL) +-if(NOT DEFINED SCALAPACK_VENDOR) +- if(LAPACK_VENDOR MATCHES "^MKL") +- set(SCALAPACK_VENDOR MKL) +- elseif(NOT DEFINED LAPACK_VENDOR AND +- (DEFINED ENV{MKLROOT} AND IS_DIRECTORY "$ENV{MKLROOT}")) +- set(SCALAPACK_VENDOR MKL) +- set(LAPACK_VENDOR MKL) +- endif() -endif() - --if(MKL IN_LIST SCALAPACK_VENDOR) +-if(MKL IN_LIST SCALAPACK_VENDOR AND NOT MKL64 IN_LIST SCALAPACK_VENDOR) - if(intsize64) - list(APPEND SCALAPACK_VENDOR MKL64) - endif() diff --git a/extern/patch/superlu_dist/patch_parmetis.diff b/extern/patch/superlu_dist/patch_parmetis.diff index 5b6216263..2ecb1c735 100644 --- a/extern/patch/superlu_dist/patch_parmetis.diff +++ b/extern/patch/superlu_dist/patch_parmetis.diff @@ -26,47 +26,6 @@ index d06f6078..7b505340 100755 /* CASE OF SERIAL SYMBOLIC */ /* Apply column permutation to the original distributed A */ for (j = 0; j < nnz_loc; ++j) colind[j] = perm_c[colind[j]]; -diff --git a/SRC/include/superlu_dist_config.h b/SRC/include/superlu_dist_config.h -index e4b31ab6..ed45f683 100644 ---- a/SRC/include/superlu_dist_config.h -+++ b/SRC/include/superlu_dist_config.h -@@ -1,10 +1,10 @@ - /* superlu_dist_config.h.in */ - - /* Enable CUDA */ --#define HAVE_CUDA TRUE -+/* #undef HAVE_CUDA */ - - /* Enable NVSHMEM */ --#define HAVE_NVSHMEM TRUE -+/* #undef HAVE_NVSHMEM */ - - /* Enable HIP */ - /* #undef HAVE_HIP */ -@@ -25,7 +25,7 @@ - /* #undef HAVE_MAGMA */ - - /* enable 64bit index mode */ --#define XSDK_INDEX_SIZE 64 -+/* #undef XSDK_INDEX_SIZE */ - - #if defined(XSDK_INDEX_SIZE) && (XSDK_INDEX_SIZE == 64) - #define _LONGINT 1 -diff --git a/SRC/include/superlu_enum_consts.h b/SRC/include/superlu_enum_consts.h -index 311e068e..824c93ad 100755 ---- a/SRC/include/superlu_enum_consts.h -+++ b/SRC/include/superlu_enum_consts.h -@@ -34,8 +34,8 @@ typedef enum {NATURAL, MMD_ATA, MMD_AT_PLUS_A, COLAMD, - typedef enum {NOTRANS, TRANS, CONJ} trans_t; - typedef enum {NOEQUIL, ROW, COL, BOTH} DiagScale_t; - typedef enum {NOREFINE, SLU_SINGLE=1, SLU_DOUBLE, SLU_EXTRA} IterRefine_t; --typedef enum {LUSUP, UCOL, LSUB, USUB, LLVL, ULVL, NO_MEMTYPE} MemType; --//typedef enum {USUB, LSUB, UCOL, LUSUP, LLVL, ULVL, NO_MEMTYPE} MemType; -+// typedef enum {LUSUP, UCOL, LSUB, USUB, LLVL, ULVL, NO_MEMTYPE} MemType; -+typedef enum {USUB, LSUB, UCOL, LUSUP, LLVL, ULVL, NO_MEMTYPE} MemType; - typedef enum {HEAD, TAIL} stack_end_t; - typedef enum {SYSTEM, USER} LU_space_t; - typedef enum {ONE_NORM, TWO_NORM, INF_NORM} norm_t; diff --git a/SRC/single/psgssvx.c b/SRC/single/psgssvx.c index aa2b5025..79d48927 100755 --- a/SRC/single/psgssvx.c diff --git a/scripts/update-submodules b/scripts/update-submodules index 35c711526..48ae291da 100755 --- a/scripts/update-submodules +++ b/scripts/update-submodules @@ -12,7 +12,7 @@ Fetch most recent commit from dependency repositories Options: -h, --help Show this help message and exit -v, --verbose Verbose log output - -update, --update-tags Update tags in ExternalGitTags.cmake after checking for updates + -u, --update Update tags in ExternalGitTags.cmake after checking for updates -p, --package Check for updates for a specified package (may be repeated) " } @@ -33,7 +33,7 @@ while [[ $# -gt 0 ]]; do VERBOSE="true" shift ;; - -update|--update-tags) + -u|--update|--update-tags) UPDATE_TAGS="true" shift ;;