New Generation of SMODERP2D Soil Erosion Model Landa, Jeřábek, Kavka, Pešek HyGIS a ŽP 2019 1
Introduction ● Runoff-soil erosion physically-based distributed episodic model ● Calculation and prediction processes at agricultural areas and small watersheds ● History overview ○ Long-term running project driven by the Department of Landscape Water Conservation at the Czech Technical University in Prague ○ At the beginning developed as a surface runoff simulated by profile model (1D) ○ Later redesigned using spatially distributed method → SMODERP2D ● Ongoing development on GitHub https://github.com/storm-fsv-cvut/smoderp2d ○ Open source, GNU GPL licence 2
SMODERP2D Model ● GIS based model ● Cell by cell mass balance information ● Kinematic wave approach for sheet flow ● Explicit solution of time discretization ● Rill development implemented in the model Model structure: CPU parallelization strategy (planned) 3
SMODERP2D Model ● Rill development implemented in the model ● Rills approximated with rectangular cross section 4
Ongoing development ● Clear separation of Data Preparation and Model Computation packages ● Complete refactoring, esp. Data Preparation package ● Data preparation (GIS-related part) can be provided by various software packages (ArcGIS 10.x/Pro, GRASS GIS, QGIS) ● Python 3 support introduced ● Model computation parallelization experiments (ongoing, experimental) 5
Ongoing development | GIS providers Toolbox for ArcGIS 10.x / Pro 6
Ongoing development | GIS providers Addons for GRASS GIS 7.7+ 7
Ongoing development | GIS providers Plugin for QGIS 3.4+ 8
Ongoing development - parallelization experiments ● To reduce the computation time ● For both CPU and GPU ● Mathematical operations rewritten to TensorFlow (2.0) or NumPy ○ Graph-based computations (independent math operations run in parallel) ● Loop-based computations rewritten to matrix-based ones ● Still under development (!) 9
Results of experimental parallelized branch ● Test data: 197 MB ○ Test with RAM 15 GB ■ Single CPU (AMD Ryzen 7 1700 Eight Core Processor, 1373 MHz, cache size 512 KB): 12 809 s ■ GPU (GeForce GTX 1060 3GB, clock 33 MHz, virtual memory 3016 MiB): 7 560 s Tests with RAM 251 GB (JRC) ○ ■ Single CPU (Intel Xeon CPU E5-2630 v4 @ 2.20 GHz, 2423 MHz, cache size 25600 KB): 10 637 s ■ GPUs (4x GeForce GTX 1080 Ti, clock 33 MHz, virtual memory 11178 MiB): 10 583 s ● Test data: 62 KB ○ Test with RAM 15 GB ■ Single CPU (AMD Ryzen 7 1700 Eight Core Processor, 1373 MHz, cache size 512 KB): 0.2 s ■ GPU (GeForce GTX 1060 3GB, clock 33 MHz, virtual memory 3016 MiB): 4.0 s Tests with RAM 251 GB (JRC) ○ ■ Single CPU (Intel Xeon CPU E5-2630 v4 @ 2.20 GHz, 2423 MHz, cache size 25600 KB): 2.8 s ■ GPUs (4x GeForce GTX 1080 Ti, clock 33 MHz, virtual memory 11178 MiB): 0.2 s 10
Conclusion ● Ongoing development ○ Release planned for Q1/2020 ● Join us on GitHub ○ Report issues Thanks for attention! The research has been supported by the research grants TJ01000270, QK1910029, and internal CTU grant SGS17/173/OHK1/T3/11. 11
Recommend
More recommend