summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-11-20 00:51:01 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-11-20 00:51:01 -0500
commit3d7917f04229fe533ee7dadfd64257b474dead86 (patch)
treefd0881b62e81ecda4e28a29e4d30d39b0ad91ac7
parent8d7dfa1914275e65a00c7fbf23c681d7458ed5e2 (diff)
gnu: fenics: Reduce build time.
* gnu/packages/simulation.scm (fenics)[phases]{check}: Don't run the test suite twice; run it once in parallel mode. Honor the number of jobs specified via --cores, capped to 3 for memory reasons. Do not check the demos.
-rw-r--r--gnu/packages/simulation.scm18
1 files changed, 7 insertions, 11 deletions
diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm
index a95160c1c1..45efd5c472 100644
--- a/gnu/packages/simulation.scm
+++ b/gnu/packages/simulation.scm
@@ -684,17 +684,13 @@ user interface to the FEniCS core components and external libraries.")
(with-directory-excursion "test"
;; Note: The test test_snes_set_from_options() in the file
;; unit/nls/test_PETScSNES_solver.py fails and is ignored.
- (and (invoke "py.test" "unit" "--ignore"
- "unit/nls/test_PETScSNES_solver.py")
- (invoke "mpirun" "-np" "3" "python" "-B" "-m"
- "pytest" "unit" "--ignore"
- "unit/nls/test_PETScSNES_solver.py")))
- (with-directory-excursion "demo"
- ;; Check demos.
- (invoke "python" "generate-demo-files.py")
- (and (invoke "python" "-m" "pytest" "-v" "test.py")
- (invoke "python" "-m" "pytest" "-v" "test.py"
- "--mpiexec=mpiexec" "--num-proc=3")))
+ ;; Limit the number of jobs to 3 as 500 MiB of memory is used
+ ;; per process.
+ (invoke "mpirun" "-np" (number->string
+ (min 3 (parallel-job-count)))
+ "python" "-B" "-m"
+ "pytest" "unit" "--ignore"
+ "unit/nls/test_PETScSNES_solver.py"))
#t))
(add-after 'install 'install-demo-files
(lambda* (#:key outputs #:allow-other-keys)