Performance improvements to modern hydrological models via lookup table optimizations
Christopher
B
Marsh
author
Kevin
R
Green
author
B
Wang
author
Raymond
J
Spiteri
author
2021
text
journal article
Environmental Modelling & Software, Volume 139
continuing
Elsevier BV
periodical
academic journal
Distributed hydrological models predict the spatial variability in processes that govern observed mass and energy fluxes. A challenge associated with the use of these models is the computational burden associated with representing the Earth’s (sub)surface via millions of computational elements. This burden is exacerbated as more complex process representations are included because their parameterizations involve computationally intensive mathematical functions. Lookup tables (LUTs) approximate a mathematical function by interpolating precomputed values of the function. Highly accurate approximations are possible for substantially reduced computational costs. In this work, a general methodology using the C++ LUT library FunC is applied to identify and replace computationally intensive mathematical function evaluations in the Canadian Hydrological Model (CHM). The use of LUTs introduces a pointwise relative error below 10 − 8 and provides a reduction in run time of almost 20%. This work shows how LUTs can be implemented with relatively little pain and yield significant computational savings for distributed hydrological models. \bullet The Canadian Hydrological Model (CHM) is profiled and expensive mathematical functions identified. \bullet FunC was used to replace the expensive mathematical functions in CHM with lookup tables. \bullet The run-time performance of CHM was improved by approximately 20% on two realistic simulations. \bullet A general methodology for using FunC to replace expensive mathematical functions with lookup tables is given.
Marsh-2021-Performance
10.1016/j.envsoft.2021.105018
https://gwf-uwaterloo.github.io/gwf-publications/G21-19001
2021
139
105018