gnu: julia: Correctly test using '#:parallel-tests?'.

* gnu/packages/julia.scm (julia)[phases]{enable-parallel-tests}: Use
PARALLEL-TESTS?, not PARALLEL-BUILD?.  Remove comment.
* gnu/packages/patches/julia-allow-parallel-build.patch: Move explanatory
comment to the top of the patch.

Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
This commit is contained in:
zimoun 2021-11-26 00:35:54 +01:00 committed by Maxim Cournoyer
parent d508c5baab
commit 941f776fce
No known key found for this signature in database
GPG key ID: 1260E46482E63562
2 changed files with 8 additions and 9 deletions

View file

@ -315,11 +315,8 @@ (define-public julia
(substitute* (jlpath "Zlib")
(((from "libz")) (to "zlib" "libz"))))))
(add-after 'unpack 'enable-parallel-tests
;; FIXME: julia fails at networking in the container and falls back
;; to a single worker, which causes the tests to not run in
;; parallel (see: https://github.com/JuliaLang/julia/issues/43205).
(lambda* (#:key parallel-build? #:allow-other-keys)
(setenv "JULIA_CPU_THREADS" (if parallel-build?
(lambda* (#:key parallel-tests? #:allow-other-keys)
(setenv "JULIA_CPU_THREADS" (if parallel-tests?
(number->string (parallel-job-count))
"1"))
(format #t "JULIA_CPU_THREADS environment variable set to ~a~%"

View file

@ -1,3 +1,8 @@
Allow parallel tests with isolated environment.
See https://github.com/JuliaLang/julia/issues/43205 and
https://github.com/JuliaLang/julia/pull/43211.
diff --git a/test/runtests.jl b/test/runtests.jl
index 2f9cd058bb..150395e78c 100644
--- a/test/runtests.jl
@ -11,14 +16,11 @@ index 2f9cd058bb..150395e78c 100644
using Base: Experimental
include("choosetests.jl")
@@ -83,11 +83,15 @@ prepend!(tests, linalg_tests)
@@ -83,11 +83,12 @@ prepend!(tests, linalg_tests)
import LinearAlgebra
cd(@__DIR__) do
n = 1
- if net_on
+ # Allow parallel tests with isolated environment
+ # https://github.com/JuliaLang/julia/issues/43205
+ # https://github.com/JuliaLang/julia/pull/43211
+ if net_on || haskey(ENV, "JULIA_CPU_THREADS")
n = min(Sys.CPU_THREADS, length(tests))
n > 1 && addprocs_with_testenv(n)