Ticket #2099 (closed enhancement: fixed)
[with patch, positive review] Make sage-test execute multiple doctests in parallel
| Reported by: | ncalexan | Owned by: | gfurnish |
|---|---|---|---|
| Priority: | major | Milestone: | sage-2.10.3 |
| Component: | doctest coverage | Keywords: | sage test doctest multiple parallel |
| Cc: | ncalexander@… | Work issues: | |
| Report Upstream: | Reviewers: | ||
| Authors: | Merged in: | ||
| Dependencies: | Stopgaps: |
Description
It would greatly speed testing if sage-test doctested multiple files in parallel.
Attachments
Change History
comment:2 Changed 5 years ago by ncalexan
The patch ncalexan-parallel-testing-1.hg applies to hg_scripts in local/bin.
comment:3 Changed 5 years ago by ncalexan
2099-ncalexan-parallel-testing-2.hg should not depend on the earlier bundle.
This is a work in progress bundle that improves option parsing and makes 'test via make' the only option. It improves sage-doctest slightly and tries to write a Makefile.doctest that can be run via command-line make.
Use two dashes (--) for options.
Output is not yet collated. Timeouts are not yet implemented.
comment:4 Changed 5 years ago by ncalexan
2099-ncalexan-parallel-testing-3.hg should not depend on earlier bundles.
This is a work in progress bundle that adds
- working per-test timeouts
- parsing SAGE_DOCTEST_OPTIONAL, _LONG, _TIMEOUT from the environment
- output via -o OUTFILE
- improves handling of sage-doctest crashing
[5:25pm] ncalexan: mabshoff: I have parallel testing with output and timeout working, or mostly working. [5:25pm] mabshoff: ncalexan: cool [5:26pm] ncalexan: mabshoff: I can't think of a way to get partial output correct. You can display it while it comes, but if you don't wait until the entire test is done, you won't get the sorted output. [5:26pm] ncalexan: I'll post another bundle. [5:26pm] ncalexan: Use -v for verbose, -q for quiet, -o OUTFILE. [5:26pm] ncalexan: (All to sage-test or sage -t)
comment:6 Changed 5 years ago by gfurnish
- Owner changed from ncalexan to gfurnish
- Status changed from new to assigned
comment:7 Changed 5 years ago by gfurnish
This creates sage-ptest for parallel test. The first argument is equivalent to -j (the number of parallel tests to run). The rest of the arguments are as normal.
comment:8 Changed 5 years ago by mabshoff
- Summary changed from Make sage-test execute multiple doctests in parallel to [with patch, positive review] Make sage-test execute multiple doctests in parallel
trac_2999.patch replaces all the other patches (with the exception of a minimal fix to sage -test. I give it a positive review.
Cheers,
Michael


Mike Abshoff suggested a short document explaining how the current doctesting system is organized. I have attached a preliminary version of this document.