idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.77k stars 1.05k forks source link

Geochemistry: spatial_4_threads_mpi test (with MPI and threads) fails on minimum clang #16100

Closed WilkAndy closed 3 years ago

WilkAndy commented 4 years ago

Bug Description

I have added a "skip" to the test. I really want #15698 to be merged soon, even though it does not pass the Minimum Clang CIVET recipe due to spatial_4_threads_mpi failing. The reason i want the merge is that i just spent the whole day getting the geochemistry unit tests to pass with the new version of MOOSE (due to json changes). If #15698 had been merged then i wouldn't have wasted the whole day.

Sooooo, i'm opening this issue to look at this problem at a later time.

Steps to Reproduce

Just remove the skip line in the following:

 [./spatial_4_threads_mpi]
    type = CSVDiff
    input = spatial_4.i
    csvdiff = 'spatial_4_out_bulk_Cl_0001.csv spatial_4_out_bulk_Cl_0002.csv'
    min_threads = 2
    min_parallel = 2
    prereq = spatial_4_mpi
    skip = 'This fails on minimum clang so it is skipped for now.  This bug must be fixed.  Refs #'
    requirement = 'Spatially-dependent reaction systems may use MPI and threads'
    issues = '#15693'
    design = 'GeochemistrySpatialReactor.md'
  [../]

Impact

I'm worried that this failure means geochemistry is somehow not working properly with MPI and threads. But i can't reproduce the problem on any of my systems, so i'm a bit stuck.

WilkAndy commented 4 years ago

16128 demonstrates that the threadJoin isn't working, or the execute isn't properly executing for one of the threads:

geochemistry/test:spatial_reactor.explore_threading_problem_threads: +----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+
geochemistry/test:spatial_reactor.explore_threading_problem_threads: | time           | cl0            | cl1            | cl10           | cl2            | cl3            | cl4            | cl5            | cl6            | cl7            | cl8            | cl9            |
geochemistry/test:spatial_reactor.explore_threading_problem_threads: +----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+
geochemistry/test:spatial_reactor.explore_threading_problem_threads: |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |   0.000000e+00 |
geochemistry/test:spatial_reactor.explore_threading_problem_threads: |   1.000000e+00 |   1.000000e-05 |   1.100000e-05 |   2.000000e-05 |   1.200000e-05 |   1.300000e-05 |   1.400000e-05 |   1.500000e-05 |   1.600000e-05 |   1.700000e-05 |   1.800000e-05 |   1.900000e-05 |
geochemistry/test:spatial_reactor.explore_threading_problem_threads: |   2.000000e+00 |   1.000000e-05 |   1.100000e-05 |   3.000000e-05 |   1.200000e-05 |   1.300000e-05 |   1.400000e-05 |   2.000000e-05 |   2.200000e-05 |   2.400000e-05 |   2.600000e-05 |   2.800000e-05 |
geochemistry/test:spatial_reactor.explore_threading_problem_threads: +----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+----------------+