基于GPU- CA 模型的洪水淹没过程模拟
2021-12-29林广发陈齐超
黄 潇 林广发,2,3* 陈齐超
(1、福建师范大学地理科学学院, 福建 福州350007 2、福建省陆地灾害监测评估工程技术研究中心,福建 福州350007)3、海西地理国情动态监测与应急保障研究中心,福建 福州350007)
1 概述
基于具有一定物理意义的分布式水文模型模拟流域洪涝淹没过程,可以获得随时间空间变化而变化的不同情景下的洪水风险量化评估结果,特别是不同降雨情景下实时输出的全流域淹没水深、流速、流向及其分布范围,可以为防灾决策提供最直接的科学依据[1]。但是要获得这些直观性、准确性、动态性的模拟结果,也意味着更大的计算量和时间消耗。在模型的实际应用过程中,使用传统的CPU 串行模式开发的模拟软件往往计算效率偏低[2]。
随着并行技术的发展以及CPU 并行框架的提出,很多大数据量和计算密集型的模型都开始使用并行计算来提高模型的计算性能。例如分布式水文模型可以与OpenMP 库相结合,使用多核CPU 分别计算不同的子流域,从而达到较好的加速效果。[3-4]但是CPU 本身的架构问题局限其并行计算能力,于是出现了可以将GPU 作为数据并行计算设备的通用并行计算架构。
本文针对元胞自动机(Cellular Automata,CA)能够进行并行计算的特点,将CUDA(ComputeUnifiedDeviceArchitecture)高性能计算架构与元胞自动机相结合,实现了基于GPU-CA 模型的洪水淹没模拟,大幅提高了淹没模拟的计算效率。
2 洪水淹没过程模拟方法
完整的洪水模拟包括产流过程和汇流过程模拟,现实中的产流过程和汇流过程应该是统一进行的,但考虑到模拟的复杂度和计算压力,本研究将产流过程独立于CA 模型外,利用美国水土保持局SCS-CN 水文模型,逐小时的计算净雨强度,并将净雨强度作为CA 模型的参数输入。……
