3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

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.
This commit is contained in:
Maxim Cournoyer 2020-11-20 00:51:01 -05:00
parent 8d7dfa1914
commit 3d7917f042
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -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)