Skip to content

Commit 2e31722

Browse files
committed
Update scotch to 7.0.8 and add/fix determinism flags
1 parent bd7c2bc commit 2e31722

5 files changed

Lines changed: 17 additions & 8 deletions

File tree

CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -980,7 +980,7 @@ endif(ENABLE_SUITESPARSE)
980980

981981
if( ENABLE_SCOTCH )
982982
set( SCOTCH_DIR "${CMAKE_INSTALL_PREFIX}/scotch" )
983-
set( SCOTCH_URL "${TPL_MIRROR_DIR}/scotch-v7.0.7.tar.gz" )
983+
set( SCOTCH_URL "${TPL_MIRROR_DIR}/scotch-v7.0.8.tar.gz" )
984984

985985
message( STATUS "Building SCOTCH found at ${SCOTCH_URL}" )
986986

@@ -1006,7 +1006,7 @@ if( ENABLE_SCOTCH )
10061006
-D BUILD_LIBSCOTCHMETIS:BOOL=OFF
10071007
-D THREADS:BOOL=${SCOTCH_THREADS}
10081008
-D INTSIZE:STRING=64
1009-
-D SCOTCH_RANDOM:STRING=FIXED_SEED
1009+
-D SCOTCH_DETERMINISTIC:STRING=FULL
10101010
-D CMAKE_C_COMPILER=${MPI_C_COMPILER}
10111011
-D CMAKE_CXX_COMPILER=${MPI_CXX_COMPILER}
10121012
-D CMAKE_C_FLAGS=${C_FLAGS_NO_WARNINGS}

scripts/spack_packages/packages/geosx/package.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ class Geosx(CMakePackage, CudaPackage):
148148
depends_on("superlu-dist+openmp", when="+openmp")
149149

150150
# -Wno-error=implicit-function-declaration needed for 'METIS_PartMeshDual' error
151-
depends_on("scotch@7.0.7 ~compression +mpi +esmumps +int64 ~shared ~metis build_system=cmake cflags='-fPIC' cxxflags='-fPIC'", when='+scotch')
151+
depends_on("scotch@7.0.8 ~compression +mpi +esmumps +int64 determinism=FULL ~shared ~metis build_system=cmake cflags='-fPIC' cxxflags='-fPIC'", when='+scotch')
152152

153153
depends_on('suite-sparse@5.10.1')
154154
depends_on("suite-sparse~openmp", when="~openmp")

scripts/spack_packages/packages/scotch/package.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ class Scotch(CMakePackage, MakefilePackage):
2121

2222
maintainers("pghysels")
2323

24+
version("7.0.8", sha256="21f48ac85c7991a5eb5fae9232dd68584556ccc500f85e2ebd6b5b275617e11a")
2425
version("7.0.7", sha256="02084471d2ca525f8a59b4bb8c607eb5cca452d6a38cf5c89f5f92f7edc1a5b5")
2526
version("7.0.6", sha256="b44acd0d2f53de4b578fa3a88944cccc45c4d2961cd8cefa9b9a1d5431de8e2b")
2627
version("7.0.4", sha256="8ef4719d6a3356e9c4ca7fefd7e2ac40deb69779a5c116f44da75d13b3d2c2c3")
@@ -62,6 +63,7 @@ class Scotch(CMakePackage, MakefilePackage):
6263
when="@7.0.1",
6364
description="Link error handling library to libscotch/libptscotch",
6465
)
66+
variant("determinism", default="FULL", values=("NONE", "FIXED_SEED", "FULL"), multi=False, description="Determinism configuration")
6567

6668
depends_on("c", type="build")
6769
depends_on("cxx", type="build")
@@ -135,7 +137,7 @@ def cmake_args(self):
135137
self.define_from_variant("BUILD_PTSCOTCH", "mpi"),
136138
self.define_from_variant("THREADS", "threads"),
137139
self.define_from_variant("MPI_THREAD_MULTIPLE", "mpi_thread"),
138-
self.define("SCOTCH_RANDOM", "FIXED_SEED"),
140+
self.define_from_variant("SCOTCH_DETERMINISTIC", "determinism"),
139141
]
140142

141143
if self.pkg.version > Version("7.0.4"):
@@ -164,7 +166,14 @@ class MakefileBuilder(makefile.MakefileBuilder):
164166

165167
def edit(self, pkg, spec, prefix):
166168
makefile_inc = []
167-
cflags = ["-O3", "-DCOMMON_RANDOM_FIXED_SEED", "-DSCOTCH_DETERMINISTIC", "-DSCOTCH_RENAME"]
169+
cflags = ["-O3", "-DSCOTCH_RENAME"]
170+
171+
if "determinism=FIXED_SEED" in self.spec:
172+
cflags.append("-DCOMMON_RANDOM_FIXED_SEED")
173+
174+
if "determinism=FULL" in self.spec:
175+
cflags.append("-DCOMMON_RANDOM_FIXED_SEED")
176+
cflags.append("-DSCOTCH_DETERMINISTIC")
168177

169178
# SCOTCH_Num typedef: size of integers in arguments
170179
# SCOTCH_Idx typedef: indices for addressing

tplMirror/scotch-v7.0.7.tar.gz

Lines changed: 0 additions & 3 deletions
This file was deleted.

tplMirror/scotch-v7.0.8.tar.gz

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:21f48ac85c7991a5eb5fae9232dd68584556ccc500f85e2ebd6b5b275617e11a
3+
size 7788948

0 commit comments

Comments
 (0)