Skip to content

Use ParallelTestRunner for the test suite - #178

Merged
maleadt merged 2 commits into
masterfrom
vc/parallel-test-runner
Oct 26, 2026
Merged

maleadt merged 2 commits into
masterfrom
vc/parallel-test-runner

Conversation

@vchuravy

Copy link
Copy Markdown
Member

Splits test/runtests.jl into one file per top-level testset and runs them in parallel worker processes with ParallelTestRunner.jl.

  • test/runtests.jl now calls runtests(OhMyThreads, ARGS; init_code, exeflags).
    • init_code holds the shared imports and the ChunkedGreedy helper.
    • exeflags passes --threads=<default>,<interactive> to the workers, since they don't inherit the parent's thread configuration (otherwise the multithreaded-only boxing tests would silently skip).
  • New files: basics, chunksplitters, macro_api, task_index, task_locals, scheduler_options, greedy, specialization, regions, barrier, show, boxing. Aqua.jl and ProgressMeterExt.jl are auto-discovered.
  • Adds ParallelTestRunner (compat "2", supports Julia 1.10) to the test target.

Locally with JULIA_NUM_THREADS=4,2: 4430/4430 tests pass, the same count as before the split; wall time ~47s, dominated by basics.jl.

Subsets can be run with e.g. Pkg.test(test_args=["greedy"]), or listed with --list.

🤖 Generated with Claude Code

vchuravy and others added 2 commits October 22, 2026 21:35
Split test/runtests.jl into one file per top-level testset and run them
in parallel worker processes with ParallelTestRunner. The shared imports
and the `ChunkedGreedy` helper go into `init_code`, and the workers get
the thread configuration of the parent process via `exeflags`.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@maleadt
maleadt merged commit 96ea676 into master Oct 26, 2026
14 of 16 checks passed
@maleadt
maleadt deleted the vc/parallel-test-runner branch October 26, 2026 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants