Skip to content

Fix segmentation fault in IncNavierStokesSolver performance test

Issue/feature addressed

The IncNavierStokesSolver performance test segfaults when iolevel is not specified. The reason for this segfault is that the performance test file IncNavierStokesSolver/Tests/Perf_ChanStability.tst is looking for a regular expression:

        <metric type="ExecutionTime" id="1">
            <regex>^.*Execute\s*(\d+\.?\d*).*</regex>
            <value tolerance="5e-1" hostname="42.debian-bullseye-performance-build-and-test">8.96658</value>
        </metric>

The execution is not outputted when the iolevel is set to the current default value of -1:

Proposed solution

Set the default iolevel to zero. This will produce the flollowing output

Region                       Elapsed time Avg (s)  Min (s)       Max (s)       Count         IO Level
Execute                      7.12419               7.12419       7.12419       1             0

Advection Terms              0.455392              0.455392      0.455392      2484          0
Pressure BCs                 0.357049              0.357049      0.357049      2484          0
Pressure Forcing             0.350425              0.350425      0.350425      2304          0
Pressure Solve               1.71348               1.71348       1.71348       2304          0
Viscous Forcing              0.324433              0.324433      0.324433      2304          0
Viscous Solve                3.15369               3.15369       3.15369       2304          0

Tests

There is already a test which tests for this regression.

Checklist

  • Functions and classes, or changes to them, are documented.
  • [ ] User guide/documentation is updated.
  • [ ] Changelog is updated.
  • [ ] Suitable tests added for new functionality.
  • Contributed code is correctly formatted. (See the contributing guidelines).
  • [ ] License added to any new files.
  • No extraneous files have been added (e.g. compiler output or test data files).
Edited by Jacques Xing

Merge request reports