A common observation made when computing chemically reacting flows is how central processing unit (CPU)-intensive these are in comparison to cold flow cases. The update of tens or hundreds of species with hundreds or thousands of reactions can easily consume more than 95% of the total CPU time. In many cases, the region where reactions (combustion) are actually taking place comprises only a very small percentage of the volume. Typical examples are flame fronts propagating through a domain. In such cases, only a small fraction of points/cells needs a full chemistry update. This leads to extreme load imbalances on parallel machines. The purpose of the present work is to develop a methodology to balance the work in an optimal way.


Points that require a full chemistry update are identified, gathered and distributed across the network, so that work is evenly distributed. Once the chemistry has been updated, the unknowns are gathered back.


The procedure has been found to work extremely well, leading to optimal load balance with insignificant communication overheads.

Research limitations/implications

In many production runs, the procedure leads to a reduction in CPU requirements of more than an order of magnitude. This allows much larger and longer runs, improving accuracy and statistics.

Practical implications

The procedure has allowed the calculation of chemically reacting flow cases that were hitherto not possible.


To the authors’ knowledge, this type of load balancing has not been published before.

Back to Top

Document information

Published on 01/01/2017

DOI: 10.1108/HFF-03-2017-0119
Licence: CC BY-NC-SA license

Document Score


Views 0
Recommendations 0

Share this document

claim authorship

Are you one of the authors of this document?