Misc list of feature requests/improvements for paratest (our parallel testing script)
CHPL_RT_CALL_STACK_SIZE, GASNET_ROUTE_OUTPUT, QT_AFFINITY, etc)fail-after argument that tells paratest to stop after seeing N failures-futuresonly, instead of running everything and futures (which is the same thing as the -futures flag)I added a couple of items involving termination of a paratest run.
Added item for not running on the login node
I added an item relating to generating the 'Error: log directory Logs does not exist' early and not after a bunch of other high latency things. Currently, a bunch of slurm negotation and generation of spec tests happens first which gives the impression things are plugging along fine. You stand up, go to your meeting, come back to leaf through the results and find... it didn't do anything because you were in $CHPL_HOME not $CHPL_HOME/test. :'(
And I think generally we want paratest to be able to work from non test/ dirs anyways
That'd be OK too, though I don't mind needing to run it from test/ If it could be run from arbitrary directories, it gets into questions of "Does it switch to $CHPL_HOME/test and run itself from there?" vs. "Does it run itself from wherever it is?" (i.e., could I be set up to use one Chapel installation but run it on a second clone's test hierarchy?).
(I didn't want those philosophical questions to bog down what seemed like a simpler fix that would've saved me 20 minutes).
Agreed, we can/should implement the simpler fix first
Note that I don't think there's a big philosophical question. IMO paratest should behave exactly like start_test WRT to what's tested.
I added the bit about paratest under salloc on avalon, and making paratest work on a module.
Never mind. The salloc problem isn't paratest-specific. It happens with start_test too. I'm removing it from this list.
@dmk42 had a thought on the way home -- paratest actually uses the compiler relative to paratest.client not the test dir. You might be able to use the paratest that's in the module.
e.g.
module load chapel
cd <my lustre or css test dir>
$CHPL_HOME/util/test/partest.client
Adding an item to test futures that have a .skipif by default to avoid noise in nightly configurations
(Or even all futures by default? The amount of time seems increasingly negligible...)
I could be talked into it, but all futures by default seems unnecessary to me. It'll add a non-trivial amount of time for gasnet/numa/no-local configurations (and probably at least 3-5 minutes for the standard run), without adding value for 99% (complete guess/fabrication) of paratest runs
I added a couple of items related to paratest and futures