General

General

Why do my MPP LS-DYNA results change when I rerun using a different number of cores/processors or with a different MPI?

    • FAQFAQ
      Participant

      The number of cores affects the decomposition of the model, which in turn will almost always have some effect on the solution. The effect is generally very small and inconsequential, but for some models unfortunately, the effect may not be small. Such may be the case when the solution takes a significantly different path subsequent to some small difference in the early part of the solution. One way to visualize how the model is decomposed is to insert *CONTROL_MPP_DECOMPOSITION_SHOW in the input and the run will stop after decomposition is done. Postprocess the d3plot database. Each part then represents the portion of a particular element type (shells, solids, etc) assigned to a particular processor. You can make this preliminary run also including the *CONTROL_MPP_DECOMPOSITION_NUMPROC command to specify the number of processors for model decomposition. (The default is the number of processors assigned on the execution line.) Another way to view the decomposition is to add these two lines to the input file … *CONTROL_MPP_DECOMPOSITION_OUTDECOMP 1 Using this method, you’ll be able to view the portion of the model assigned to each processor as you postprocess the results. Open d3plot in LS-PrePost as usual and click Model -> Views -> MPP -> load -> decomp_parts.lsprepost In the small window that appears, you will see the partitioning [with number of elements per partition given in parentheses]. You can select any processor from that window to display the portion of that model assigned to that processor. To keep the decomposition unchanged while increasing the number of cores, a “hybrid” version of LS-DYNA can be used. There, you specify “-np x ncpu=-y” where x is the number of MPP threads (which affects the decomposition) and and the total number of cores used is x times y. To change the number of cores without affecting the decomposition, you’d keep x constant while changing y. Decomposition can be customized to some extent by using directives in a pfile as described in Appendix O of the User’s Manual, “LS-DYNA MPP User Guide”. Changing to a different MPI can also cause the solution to change. To minimize or eliminate the effect of changing the MPI, use *CONTROL_MPP_IO_LSTC_REDUCE. See also: http://ftp.lstc.com/anonymous/outgoing/support/PRESENTATIONS/mpp_201305.pdf