River routing is an important component of hydrological models, and is a time-consuming task since it is usually based on finer-scale river channel networks and runs with shorter time steps. In order to utilize the parallel computing capabilities of today’s computers, it is necessary to decompose river networks into multiple domains and allocate them to multiple parallel processor cores to process. In this study, a straight-forward domain decomposition method is proposed for an efficient Muskingum routing algorithm on an arbitrary river network of tree-like hierarchical structure: evenly split the upstream-to-downstream sorted river segments into multiple blocks (domains). Within each domain, the cross-domain segments (CDSs), which are defined as those segments receiving inflows from other domains, need to be identified. For such domain decomposition, three parallelization schemes (the standard scheme, the full-parallelization scheme and the simplified scheme) of the Muskingum river routing are proposed. The total number of CDSs increases with the increasing number of domains. For the standard scheme, when too many CDSs are produced, the computation time that saved by the parallelization in its first step should be canceled out by the serial processing in its second step. The sorting order of river segments also affects execution speed and output errors: a depth-first traverse generates much fewer CDSs than a width-first traverse. The number of CDSs were analyzed on decomposing the networks of the Yellow River and the Mississippi, and the optimal number of domains is close to 16 (Yellow River, 22′750 river segments) and 32(Mississippi, 64′579 river segments), respectively. The computing time over different numbers of domains was also tested, based on the parallel execution by both multicore CPU and GPU. The errors produced by the full-parallelization scheme and the simplied scheme are relatively small, especially for the output at the mainstem segments. The parallel river routing can correctly produce the result as expected, and the application to actual river flow modeling produces reasonable outputs.
Read full abstract