-
Notifications
You must be signed in to change notification settings - Fork 20
parsec_ce initialization: bug in PTG with dynamic termination detection #444
Copy link
Copy link
Open
Description
Describe the bug
parsec_ce is not initialized by default when we create the taskpool. It is only initialized lazily after the context is started.
When enabling dynamic termination detection in PTG (either via the %option dynamic option in the JDF, or via the --dynamic-termdet flag to parsec_ptgpp), the generated code in taskpool_new() installs a dynamic termination detector (fourcounter today).
This calls mca_component_query() on the fourcounter termination detector module, which calls parsec_ce.tag_register() and segfaults.
To Reproduce
- Checkout dplasma master with parsec master
- Enable dynamic termination detection with the PTGs of DPLASMA by passing
-DPARSEC_PTGPP_FLAGS=--dynamic-termdetat configure time - Run any (single process or multiprocess) dplasma test.
./tests/testing_dgemm -N 1000for example.
Expected behavior
Should run to completion. Doesn't.
Environment (please complete the following information):
- PaRSEC master & DPLASMA master
Additional context
Adding remote_dep_mpi_on(ctx); at the end of parsec_context_t* setup_parsec(int argc, char **argv, int *iparam) in DPLASMA solves the problem, but I assume this is not what we want to do.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working