Fix usage of option --cfg=path in tesh files. Most of them reference a non-existent directory: examples/smpi/msg/. Remove them. Use the option in tests from basic-parsing-test.
Adjust timing of SMPI tests For sure SMPI is the most impacted by the bandwidth factors changes. It seems especially impacted when collective comms are involved. The old version used 2 factors for SMPI comms: 1) network/bandwidth-factor was used to reduce the link capacity (e.g. 0.97*C for LV08) 2) smpi/bw-factor was used for each communication, limitating the flow capacity. Now, the code is simplified, each communication has only 1 bw-factor that is applied after it's done, at the update remaining phase. In most cases, only the bw-factor are applied now but after the comm is done, not before
Accept units for 'smpi/host-speed' config element
requalify all SMPI tesh files with timing information due to previous change
requalify tesh as one message changed category
Kill TRACE_smpi_finalize() and have the container unregistered as soon as the actor leaves Of course this requires to revalidate some tesh files, as the ending date is impacted by this change.
New signal: Actor::on_termination (when its code terminates)
SMPI: redesign the end of actors/ranks' lifetime The problem is that we don't use enough of refcounting in SMPI, so we should not let any rank finish before the others, because it may be involved in a communication or something. Previously, there were a barrier at the end of the user code, so that every ranks finishes exactly at the same time. Now, the MPI instance keeps a reference on every actor it contains, and the actor terminates with no delay after its code. The terminating actors unregister from their MPI instance, but they are still referenced until the last actor unregisters from the MPI instance. Once the MPI instance is empty, it unregisters all the actors, allowing their collection by the refcounting. This commit changes the ending time of many ranks in many examples, as expected. The ranks now terminate as soon as they are done, they are not waiting the others anymore. It introduces a segfault in ampi that I fail to understand. It seems that a container is used after being collected in this example, but I fail to see the reason so far.
Change color of "barrier" in trace. It was too close to "computing"
revalidate tesh files with correct ranks (starting at 0)
test some tracing options
simplify tracing of MPI_Test. Add tracing for Testall and friends.
[SMPI/TESH] Breaks tests: Fix colors for functions The map with the colors used in instr_smpi.cpp was not correctly checked because substrings were allowed too: If irecv was passed, the map found recv first, checked whether recv is a substring of irecv (= yes) and returned the color associated with recv even though irecv was in the map as well. The bugfix will be in the next commit.
yes another attempt
remove trace-resource from trace comparison, as results are unreliable and too large. Need to test it elsewhere.
Actually test SMPI tracing - high probability of failure
[TESH] Fix smpi-trace tesh file This just fixes the ./smpi_trace path: It should be using the variable as well.
[TESTS] Use platfdir, srcdir and bindir for more smpi tests
Run smpi tracing tests in their own directories. Avoids failures when tests are run in parallel.
Hide xbt_cfg cruft from smpi tesh files. We need this as privatization may not be activated on some systems, thus outputting a different thing.