Mesh Assignment is Overhauled in PyroSim 2022.1
PyroSim 2022.1 is now available with several new features. One that we'll highlight today is the new mesh assignment optimization algorithm. When a model is designed with multiple meshes, they are assigned to separate cores for simulation. This parallel process helps reduce the total time needed. When there are more meshes than processors, an algorithm is used to determine an efficient pairing.
Why is this optimization method needed?
FDS models can take tens of hours to run and every optimization helps. When there are more meshes than processors, a decision must be made to determine how they will be allocated to the limited resources. A single core can only run one process at a time (aside from multithreading technology such as Intel's Hyperthreading, which we've found to have no noticeable benefit). FDS does not allow mesh assignment dynamically as the simulation is in progress, so the processors must be prescribed ahead of time with the most intelligent prediction possible.
What has changed?
Previously, PyroSim performed a round-robin style of assignment to ensure an even distribution of meshes to the cores. This method would avoid FDS from assigning a highly uneven number of meshes among the available processors. The order in which the round-robin algorithm sorted meshes was mostly dependent upon the order in which the meshes were defined in the FDS input file. In this new release, a longest-processing-time-first scheduling algorithm assigns meshes to processors based on cell count, such that the variance between number of cells among the processors is minimized.
What affects simulation time of cells or meshes?
As mentioned above, the new algorithm prioritizes cell count. Our analyses have found this to be most significant and quite reliable at comparing simulation time. If there are tracer particles present, they will significantly slow down the mesh in which they are present. The new algorithm currently does not consider which meshes have an active reaction or whether mesh boundary adjacency. Our analyses have shown that both of these considerations are negligible relative to the importance of cell count.
How can I learn more?
To understand some background information, we've previously written about what we learned in using MPI to speed solutions, which was critical information for this development. There is more information about the various FDS Preferences in the PyroSim User Manual. No action is required to take advantage of this enhancement once PyroSim 2022.1 has been installed.
Subscribe through the button in the footer of this page if you would like to stay updated.