summary refs log tree commit diff
path: root/gnu/packages/simulation.scm
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 /gnu/packages/simulation.scm
parent8d7dfa1914275e65a00c7fbf23c681d7458ed5e2 (diff)
downloadguix-3d7917f04229fe533ee7dadfd64257b474dead86.tar.gz
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.
Diffstat (limited to 'gnu/packages/simulation.scm')
-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)