Parallel Load Balancing Strategies for Mesh-Independent Spray Vaporization and Collision Models 2021-01-0412
Appropriate spray modeling in multidimensional simulations of diesel engines is well known to affect the overall accuracy of the results. More and more accurate models are being developed to deal with drop dynamics, breakup, collisions, and vaporization/multiphase processes; the latter ones being the most computationally demanding. In fact, in parallel calculations, the droplets occupy a physical region of the in-cylinder domain, which is generally very different than the topology-driven finite-volume mesh decomposition. This makes the CPU decomposition of the spray cloud severely uneven when many CPUs are employed, yielding poor parallel performance of the spray computation. Furthermore, mesh-independent models such as collision calculations require checking of each possible droplet pair, which leads to a practically intractable O(np2/2) computational cost, np being the total number of droplets in the spray cloud, and additional overhead for parallel communications. This problem is usually overcome by employing O�Rourke�s same-cell collision condition, which, however, introduces severe mesh dependency. In this work, we introduced two strategies to achieve optimal load balancing for fast spray calculations with mesh-independent models. Both methods were implemented in the FRESCO CFD code. For drop collisions, a mesh-independent collision detection algorithm with high parallel efficiency was developed. This method pre-sorts eligible collision pairs using a high-performance three-dimensional clustering algorithm similar to what is used for on-the-fly chemistry model reduction; these are then filtered again based on deterministic impact parameters and assembled in parallel into a global sparse adjacency structure. For the particle-in-cell vaporization/multiphase solver, we developed a solution-preserving load balancing algorithm. At each timestep, the parallel cell-ownership-based spray cloud structure is re-sorted into cell-owner bins, which are used to distribute the spray parcels across all CPUs along with their cell thermodynamic states; the distributed solution results are then sent back to the cell owners. The combination of both methods achieved more than one order of magnitude speed-up in spray solution for diesel engine simulations with a full and sector cylinder geometry.