load balancing in variable-order expansion
In variable-order expansion, the weight of element in mesh partition is the element DOFs or boundary DOFs. But as Chris @ccantwel mentioned, the complexity of matrix operation is square DOFs.
I did a small test case (65 low order elements + 1 high order elements) wing_15.xml. Results are as follows:
Serial running,
Time-integration : 84.3741s; Total Computation Time = 86s
Two cores parallel, WEIGHTPARTITIONS=DOF,
Time-integration : 37.5043s; Total Computation Time = 80s
Two cores paralled, WEIGHTPARTITIONS=BOUNDARY,
Time-integration : 37.9102s; Total Computation Time = 80s
Two cores parallel, WEIGHTPARTITIONS=DOF^2,
Time-integration : 32.6387s; Total Computation Time = 35s
Two cores parallel, WEIGHTPARTITIONS=BOUNDARY^2,
Time-integration : 32.7864s; Total Computation Time = 35s
If the DOFs is not squared, time-integration is halved, but total computation time changes little. After using DOFs^2, both time-integration and total computation time are halved.
The difference between WEIGHTPARTITIONS=DOF and WEIGHTPARTITIONS=BOUNDARY is little.