MueLu: Missing timers
Created by: cgcgcg
@trilinos/muelu
Current behavior
The MueLu level timers seem to be dropped after several rebalancing calls. Using the following input xml:
<ParameterList name="MueLu">
<!--
For a generic symmetric scalar problem, these are the recommended settings for MueLu.
-->
<!-- =========== GENERAL ================ -->
<Parameter name="verbosity" type="string" value="extreme"/>
<Parameter name="coarse: max size" type="int" value="1000"/>
<Parameter name="multigrid algorithm" type="string" value="sa"/>
<!-- reduces setup cost for symmetric problems -->
<Parameter name="transpose: use implicit" type="bool" value="true"/>
<!-- start of default values for general options (can be omitted) -->
<Parameter name="max levels" type="int" value="10"/>
<Parameter name="number of equations" type="int" value="1"/>
<Parameter name="sa: use filtered matrix" type="bool" value="true"/>
<!-- end of default values -->
<!-- =========== AGGREGATION =========== -->
<Parameter name="aggregation: type" type="string" value="uncoupled"/>
<Parameter name="aggregation: drop scheme" type="string" value="classical"/>
<!-- Uncomment the next line to enable dropping of weak connections, which can help AMG convergence
for anisotropic problems. The exact value is problem dependent. -->
<!-- <Parameter name="aggregation: drop tol" type="double" value="0.02"/> -->
<!-- =========== SMOOTHING =========== -->
<Parameter name="smoother: type" type="string" value="CHEBYSHEV"/>
<ParameterList name="smoother: params">
<Parameter name="chebyshev: degree" type="int" value="2"/>>
<Parameter name="chebyshev: ratio eigenvalue" type="double" value="7"/>
<Parameter name="chebyshev: min eigenvalue" type="double" value="1.0"/>
<Parameter name="chebyshev: zero starting solution" type="bool" value="true"/>
</ParameterList>
<!-- =========== REPARTITIONING =========== -->
<Parameter name="repartition: enable" type="bool" value="true"/>
<Parameter name="repartition: partitioner" type="string" value="zoltan2"/>
<Parameter name="repartition: start level" type="int" value="1"/>
<Parameter name="repartition: min rows per proc" type="int" value="800"/>
<Parameter name="repartition: max imbalance" type="double" value="1.1"/>
<Parameter name="repartition: remap parts" type="bool" value="false"/>
<!-- start of default values for repartitioning (can be omitted) -->
<Parameter name="repartition: remap parts" type="bool" value="true"/>
<Parameter name="repartition: rebalance P and R" type="bool" value="false"/>
<Parameter name="repartition: print partition distribution" type="bool" value="true"/>
<ParameterList name="repartition: params">
<Parameter name="algorithm" type="string" value="multijagged"/>
</ParameterList>
<!-- end of default values -->
</ParameterList>
and running
mpiexec -n 32 ./MueLu_Driver.exe --matrixType=Laplace1D --nx=100000
the timer MueLu: Laplace1D: Hierarchy: Solve : smoothing (level=4)
is not present. (It's there with rebalancing switched off.) The global MPI rank 0 is already dropped on level 2. I checked that all timers do get created with a print statement in MueLu::TimeMonitor
.